Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yd-csf
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
xingmin
yd-csf
Commits
62ab623c
Commit
62ab623c
authored
Jan 14, 2026
by
zhangxingmin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
push
parent
cf4041bd
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
79 additions
and
2 deletions
+79
-2
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiPremiumReconciliationServiceImpl.java
+79
-2
No files found.
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiPremiumReconciliationServiceImpl.java
View file @
62ab623c
...
...
@@ -29,6 +29,10 @@ import com.yd.csf.service.model.PremiumReconciliation;
import
com.yd.csf.service.service.IPremiumReconciliationService
;
import
com.yd.csf.service.service.PolicyFollowService
;
import
com.yd.csf.service.service.PolicyService
;
import
com.yd.user.feign.client.sysdict.ApiSysDictFeignClient
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.BeanUtils
;
...
...
@@ -37,8 +41,7 @@ import org.springframework.stereotype.Service;
import
org.springframework.util.CollectionUtils
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.*
;
@Slf4j
@Service
...
...
@@ -59,6 +62,9 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
@Autowired
private
PolicyFollowService
policyFollowService
;
@Autowired
private
ApiSysDictFeignClient
apiSysDictFeignClient
;
/**
* 分页列表查询-保费对账记录信息
* @param request
...
...
@@ -68,10 +74,81 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
public
Result
<
IPage
<
ApiPremiumReconciliationPageResponse
>>
page
(
ApiPremiumReconciliationPageRequest
request
)
{
Page
<
ApiPremiumReconciliationPageResponse
>
page
=
new
Page
<>(
request
.
getPageNo
(),
request
.
getPageSize
());
IPage
<
ApiPremiumReconciliationPageResponse
>
iPage
=
iPremiumReconciliationService
.
page
(
page
,
request
);
// 获取缴费方式字典数据
Map
<
String
,
String
>
paymentMethodDictMap
=
getPaymentMethodDict
();
// 翻译paymentMethod字段
if
(
iPage
!=
null
&&
!
CollectionUtils
.
isEmpty
(
iPage
.
getRecords
()))
{
for
(
ApiPremiumReconciliationPageResponse
item
:
iPage
.
getRecords
())
{
if
(
StringUtils
.
isNotBlank
(
item
.
getPaymentMethod
()))
{
String
translated
=
translatePaymentMethod
(
item
.
getPaymentMethod
(),
paymentMethodDictMap
);
item
.
setPaymentMethod
(
translated
);
}
}
}
return
Result
.
success
(
iPage
);
}
/**
* 获取缴费方式字典数据
*/
private
Map
<
String
,
String
>
getPaymentMethodDict
()
{
Map
<
String
,
String
>
dictMap
=
new
HashMap
<>();
try
{
GetDictTypeListRequest
dictRequest
=
new
GetDictTypeListRequest
();
dictRequest
.
setTypeList
(
Collections
.
singletonList
(
"csf_ap_first_issue"
));
List
<
GetDictTypeListResponse
>
dictTypeResponses
=
apiSysDictFeignClient
.
getByDictTypeList
(
dictRequest
).
getData
();
if
(
dictTypeResponses
!=
null
&&
!
dictTypeResponses
.
isEmpty
())
{
for
(
GetDictTypeListResponse
dictTypeResponse
:
dictTypeResponses
)
{
if
(
"csf_ap_first_issue"
.
equals
(
dictTypeResponse
.
getDictType
())
&&
dictTypeResponse
.
getDictItemList
()
!=
null
)
{
for
(
GetDictItemListByDictTypeResponse
dictItem
:
dictTypeResponse
.
getDictItemList
())
{
dictMap
.
put
(
dictItem
.
getItemValue
(),
dictItem
.
getItemLabel
());
}
break
;
}
}
}
}
catch
(
Exception
e
)
{
log
.
error
(
"获取缴费方式字典数据失败"
,
e
);
}
return
dictMap
;
}
/**
* 翻译缴费方式
* 处理多个缴费方式(用分号分隔)的情况
*/
private
String
translatePaymentMethod
(
String
paymentMethod
,
Map
<
String
,
String
>
dictMap
)
{
if
(
StringUtils
.
isBlank
(
paymentMethod
))
{
return
paymentMethod
;
}
String
[]
methods
=
paymentMethod
.
split
(
";"
);
StringBuilder
translated
=
new
StringBuilder
();
for
(
int
i
=
0
;
i
<
methods
.
length
;
i
++)
{
String
method
=
methods
[
i
].
trim
();
String
label
=
dictMap
.
get
(
method
);
if
(
label
!=
null
)
{
translated
.
append
(
label
);
}
else
{
translated
.
append
(
method
);
// 如果找不到对应的字典项,保留原值
}
if
(
i
<
methods
.
length
-
1
)
{
translated
.
append
(
";"
);
}
}
return
translated
.
toString
();
}
/**
* 添加-保费对账记录信息
* @param request
* @return
...
...
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