Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yd-backend
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
AutogeneralShanghai
yd-backend
Commits
37538903
Commit
37538903
authored
Mar 18, 2021
by
jianan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
N22薪资单接口新
parent
a01774ca
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
119 additions
and
39 deletions
+119
-39
yd-api/src/main/java/com/yd/api/practitioner/service/impl/PractitionerBasicInfoServiceImpl.java
+117
-37
yd-api/src/main/java/com/yd/rmi/n22/policy/service/impl/N22PolicyServiceImpl.java
+0
-1
yd-api/src/main/java/com/yd/rmi/n22/salary/service/impl/N22SalaryServiceImpl.java
+2
-1
No files found.
yd-api/src/main/java/com/yd/api/practitioner/service/impl/PractitionerBasicInfoServiceImpl.java
View file @
37538903
...
...
@@ -316,51 +316,131 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe
Long
practitionerId
=
requestVO
.
getPractitionerId
();
Map
<
Long
,
PayScaleInfo
>
payScaleInfoMap
=
new
HashMap
<>();
if
(!
Strings
.
isNullOrEmpty
(
practitionerIdEG
)){
List
<
PayScaleInfo
>
payScaleInfoListAll
=
aclPractitionerDALService
.
findPayScaleByPractitionerEG
(
practitionerIdEG
);
if
(!
payScaleInfoListAll
.
isEmpty
()){
Map
<
String
,
String
>
dtlTypeMap
=
new
HashMap
<>();
Map
<
String
,
String
>
titleMap
=
new
HashMap
<>();
List
<
OptionsEGolden
>
optionsEGoldenList
=
mdDropOptionsDALService
.
findByMasterIdsE
(
Collections
.
singletonList
(
101
));
optionsEGoldenList
.
forEach
(
i
->
dtlTypeMap
.
put
(
i
.
getOptAttr
(),
i
.
getOptName
()));
List
<
OptionsEGolden
>
titleList
=
mdDropOptionsDALService
.
findAllTitleEG
();
titleList
.
forEach
(
i
->
titleMap
.
put
(
i
.
getTitleCode
(),
i
.
getTitleName
()));
PayScaleInfo
payScaleInfo
;
Long
time
;
for
(
PayScaleInfo
item
:
payScaleInfoListAll
){
time
=
item
.
getMonDtlPeriod
();
if
(
payScaleInfoMap
.
containsKey
(
time
)){
payScaleInfo
=
payScaleInfoMap
.
get
(
time
);
calculateRAmount
(
payScaleInfo
,
item
);
}
else
{
calculateRAmount
(
item
,
item
);
item
.
setMonDtlItem
(
"实发薪水"
);
payScaleInfoMap
.
put
(
time
,
item
);
item
.
setDrpTitleCode
(
titleMap
.
get
(
item
.
getDrpTitleCode
()));
item
.
setMonDtlType
(
dtlTypeMap
.
get
(
item
.
getMonDtlType
()));
// 1.根据Agent_id当前经纪人的佣金明细
SalaryDetailsSearchRequestBody
salaryDetailsSearchRequestBody
=
new
SalaryDetailsSearchRequestBody
();
salaryDetailsSearchRequestBody
.
setLoginName
(
practitionerIdEG
);
salaryDetailsSearchRequestBody
.
setSearchType
(
"1"
);
SalaryDetailsSearchResponseVO
salaryDetailsSearchResponseVO
=
n22SalaryService
.
salaryDetailsSearch
(
salaryDetailsSearchRequestBody
);
if
(!
"查询成功"
.
equals
(
salaryDetailsSearchResponseVO
.
getResponseHead
().
getMessage
())){
responseVO
.
setCommonResult
(
new
CommonResult
(
false
,
"查询N22佣金明细列表错误"
));
return
responseVO
;
}
List
<
SalaryDetails
>
salaryDetailsList
=
salaryDetailsSearchResponseVO
.
getResponseBody
().
getSalaryDetailsLIST
();
}
}
//修改金钱格式
for
(
PayScaleInfo
item
:
payScaleInfoListAll
){
item
.
setMonDtlRAmount
(
CommonUtil
.
doubleFormat
(
item
.
getMonDtlRAmount
(),
2
));
}
// list分组
Map
<
String
,
List
<
SalaryDetails
>>
group
=
this
.
groupByCheckDate
(
salaryDetailsList
);
}
}
List
<
PayScaleInfo
>
resultList
=
new
ArrayList
<>(
payScaleInfoMap
.
values
());
// 组装返回参数
List
<
PayScaleInfo
>
resultList
=
new
ArrayList
<>();
for
(
String
key
:
group
.
keySet
())
{
System
.
out
.
println
(
"Key = "
+
key
);
// 加入临时薪资表的数据
List
<
AgAclLifePractitionerSalary
>
list
=
practitionerSalaryMapper
.
queryListByPractitionerId
(
practitionerId
);
translateObj
(
list
,
resultList
);
List
<
SalaryDetails
>
list
=
group
.
get
(
key
);
// 计算每组应发佣金总和
Double
monDtlAmount
=
this
.
getSummary
(
list
);
PayScaleInfo
payScaleInfo
=
new
PayScaleInfo
();
payScaleInfo
.
setMonDtlAmount
(
monDtlAmount
);
payScaleInfo
.
setMonDtlItem
(
"实发薪水"
);
payScaleInfo
.
setDrpTitleCode
(
list
.
get
(
0
).
getGrade
());
payScaleInfo
.
setMonDtlPeriod
(
Long
.
valueOf
(
key
));
resultList
.
add
(
payScaleInfo
);
}
// 排序
resultList
.
sort
(
Comparator
.
comparingLong
(
PayScaleInfo
::
getMonDtlPeriod
).
reversed
());
responseVO
.
setPayScaleInfos
(
resultList
);
responseVO
.
setCommonResult
(
new
CommonResult
(
true
,
ZHBErrorConfig
.
getErrorInfo
(
"800000"
)));
return
responseVO
;
// if(!Strings.isNullOrEmpty(practitionerIdEG)){
// List<PayScaleInfo> payScaleInfoListAll = aclPractitionerDALService.findPayScaleByPractitionerEG(practitionerIdEG);
// if(!payScaleInfoListAll.isEmpty()){
// Map<String,String> dtlTypeMap = new HashMap<>();
// Map<String,String> titleMap = new HashMap<>();
// List<OptionsEGolden> optionsEGoldenList = mdDropOptionsDALService.findByMasterIdsE(Collections.singletonList(101));
// optionsEGoldenList.forEach(i->dtlTypeMap.put(i.getOptAttr(),i.getOptName()));
// List<OptionsEGolden> titleList = mdDropOptionsDALService.findAllTitleEG();
// titleList.forEach(i->titleMap.put(i.getTitleCode(),i.getTitleName()));
//
// PayScaleInfo payScaleInfo;
// Long time;
// for(PayScaleInfo item : payScaleInfoListAll){
// time = item.getMonDtlPeriod();
// if(payScaleInfoMap.containsKey(time)){
// payScaleInfo = payScaleInfoMap.get(time);
// calculateRAmount(payScaleInfo,item);
// }else{
// calculateRAmount(item,item);
// item.setMonDtlItem("实发薪水");
// payScaleInfoMap.put(time,item);
// item.setDrpTitleCode(titleMap.get(item.getDrpTitleCode()));
// item.setMonDtlType(dtlTypeMap.get(item.getMonDtlType()));
//
// }
// }
// //修改金钱格式
// for(PayScaleInfo item : payScaleInfoListAll){
// item.setMonDtlRAmount(CommonUtil.doubleFormat(item.getMonDtlRAmount(),2));
// }
//
// }
// }
// List<PayScaleInfo> resultList = new ArrayList<>(payScaleInfoMap.values());
//
// // 加入临时薪资表的数据
// List<AgAclLifePractitionerSalary> list = practitionerSalaryMapper.queryListByPractitionerId(practitionerId);
// translateObj(list, resultList);
//
// // 排序
// resultList.sort(Comparator.comparingLong(PayScaleInfo :: getMonDtlPeriod).reversed());
// responseVO.setPayScaleInfos(resultList);
//
// responseVO.setCommonResult(new CommonResult(true,ZHBErrorConfig.getErrorInfo("800000")));
// return responseVO;
}
private
Double
getSummary
(
List
<
SalaryDetails
>
list
)
{
Double
sum
=
0
D
;
for
(
SalaryDetails
item
:
list
)
{
sum
=
BigDecimal
.
valueOf
(
item
.
getCommission
())
.
add
(
BigDecimal
.
valueOf
(
sum
))
.
doubleValue
();
}
return
sum
;
}
/**
* 通过for循环逻辑,编程上会麻烦点,但是效率上高很多
*/
private
Map
<
String
,
List
<
SalaryDetails
>>
groupByCheckDate
(
List
<
SalaryDetails
>
salaryDetailsList
)
{
Map
<
String
,
List
<
SalaryDetails
>>
result
=
new
HashMap
<
String
,
List
<
SalaryDetails
>>();
int
year
=
0
;
String
month
=
""
;
String
key
=
""
;
for
(
SalaryDetails
SalaryDetails
:
salaryDetailsList
)
{
year
=
SalaryDetails
.
getYear
();
month
=
SalaryDetails
.
getMonth
();
key
=
year
+
month
;
List
<
SalaryDetails
>
childList
=
result
.
get
(
key
);
if
(
childList
==
null
)
{
childList
=
new
ArrayList
<
SalaryDetails
>();
result
.
put
(
key
,
childList
);
}
childList
.
add
(
SalaryDetails
);
}
result
.
forEach
((
cc
,
list
)
->
{
System
.
out
.
println
(
"CheckDate is:"
+
cc
);
list
.
forEach
((
SalaryDetails
)
->
{
System
.
out
.
println
(
"SalaryDetails is:"
+
SalaryDetails
);
});
});
return
result
;
}
private
void
translateObj
(
List
<
AgAclLifePractitionerSalary
>
list
,
List
<
PayScaleInfo
>
resultList
)
{
...
...
yd-api/src/main/java/com/yd/rmi/n22/policy/service/impl/N22PolicyServiceImpl.java
View file @
37538903
...
...
@@ -47,7 +47,6 @@ public class N22PolicyServiceImpl implements N22PolicyService {
JSONObject
requestHead
=
new
JSONObject
();
requestHead
.
put
(
"seqNo"
,
UUID
.
randomUUID
().
toString
());
requestHead
.
put
(
"appId"
,
"eliteNgpcrtaVU9NAz"
);
obj
.
put
(
"requestHead"
,
requestHead
);
obj
.
put
(
"requestBody"
,
requestBody
);
...
...
yd-api/src/main/java/com/yd/rmi/n22/salary/service/impl/N22SalaryServiceImpl.java
View file @
37538903
...
...
@@ -29,7 +29,8 @@ public class N22SalaryServiceImpl implements N22SalaryService {
obj
.
put
(
"requestBody"
,
salaryDetailsSearchRequestBody
);
logger
.
info
(
"N22佣金明细查询请求报文:"
+
obj
.
toString
());
String
url
=
"https://life.ydinsurance.cn/EliteGeneralHttpTask/GeneralService/SalaryDetailsSearch"
;
// String url = "https://life.ydinsurance.cn/EliteGeneralHttpTask/GeneralService/SalaryDetailsSearch";
String
url
=
"http://101.132.32.185:8082/EliteGeneralHttpTask/GeneralService/SalaryDetailsSearch"
;
String
result
=
N22Utils
.
postTransaction
(
url
,
obj
.
toString
());
logger
.
info
(
"N22佣金明细查询响应报文:"
+
result
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment