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
21c28379
Commit
21c28379
authored
Apr 27, 2026
by
zhangxingmin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
push
parent
135326c2
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
103 additions
and
19 deletions
+103
-19
yd-csf-service/src/main/java/com/yd/csf/service/dto/PolicyFollowDto.java
+2
-2
yd-csf-service/src/main/java/com/yd/csf/service/service/PolicyInsurantService.java
+3
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/PolicyPolicyholderService.java
+2
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyFollowServiceImpl.java
+74
-17
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyInsurantServiceImpl.java
+10
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyPolicyholderServiceImpl.java
+12
-0
No files found.
yd-csf-service/src/main/java/com/yd/csf/service/dto/PolicyFollowDto.java
View file @
21c28379
...
...
@@ -164,10 +164,10 @@ public class PolicyFollowDto implements Serializable {
@Schema
(
description
=
"下一步跟进状态列表"
)
private
String
nextStatusList
;
@Schema
(
description
=
"保單持有人"
)
@Schema
(
description
=
"保單持有人
(中文)
"
)
private
String
policyHolder
;
@Schema
(
description
=
"受保人"
)
@Schema
(
description
=
"受保人
(中文)
"
)
private
String
insured
;
@Schema
(
description
=
"受保人业务id"
)
...
...
yd-csf-service/src/main/java/com/yd/csf/service/service/PolicyInsurantService.java
View file @
21c28379
...
...
@@ -22,4 +22,7 @@ public interface PolicyInsurantService extends IService<PolicyInsurant> {
boolean
update
(
PolicyInsurantUpdateRequest
policyInsurantUpdateRequest
);
List
<
PolicyInsurant
>
queryList
(
String
policyHolder
);
boolean
updateName
(
String
policyBizId
,
String
name
);
}
yd-csf-service/src/main/java/com/yd/csf/service/service/PolicyPolicyholderService.java
View file @
21c28379
...
...
@@ -23,4 +23,6 @@ public interface PolicyPolicyholderService extends IService<PolicyPolicyholder>
PolicyPolicyholder
queryOne
(
String
policyBizId
);
List
<
PolicyPolicyholder
>
queryList
(
String
policyHolder
);
boolean
updateName
(
String
policyBizId
,
String
name
);
}
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyFollowServiceImpl.java
View file @
21c28379
...
...
@@ -175,9 +175,10 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
if
(!
CollectionUtils
.
isEmpty
(
policyBrokerList
))
{
//新单跟进唯一业务ID
List
<
String
>
policyBizIdList
=
policyBrokerList
.
stream
().
map
(
PolicyBroker:
:
getPolicyBizId
).
collect
(
Collectors
.
toList
());
if
(!
CollectionUtils
.
isEmpty
(
policyBizIdList
))
{
queryWrapper
.
in
(
"policy_biz_id"
,
policyBizIdList
);
}
queryWrapper
.
in
(
"policy_biz_id"
,
policyBizIdList
);
}
else
{
// 没有匹配的转介人,直接让查询结果为空
queryWrapper
.
apply
(
"1=0"
);
}
}
...
...
@@ -208,18 +209,18 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
.
map
(
PolicyFollowVO:
:
objToVo
)
.
collect
(
Collectors
.
toList
());
// 批量填充
brokerName
fill
Broker
Names
(
voList
);
// 批量填充
所需字段
fill
Filed
Names
(
voList
);
policyFollowVOPage
.
setRecords
(
voList
);
return
policyFollowVOPage
;
}
/**
* 批量
设置每个保单的第一个转介人名称
* 批量
填充所需字段
*/
private
void
fill
Broker
Names
(
List
<
PolicyFollowVO
>
voList
)
{
//
1.
提取所有 policyBizId
private
void
fill
Filed
Names
(
List
<
PolicyFollowVO
>
voList
)
{
// 提取所有 policyBizId
List
<
String
>
bizIds
=
voList
.
stream
()
.
map
(
PolicyFollowVO:
:
getPolicyBizId
)
.
filter
(
StringUtils:
:
isNotBlank
)
...
...
@@ -229,28 +230,79 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
return
;
}
//
2. 批量查询转介人(每个 policyBizId 对应的所有记录,按 id 排序
)
//
批量查询转介人(取第一个 brokerName
)
List
<
PolicyBroker
>
allBrokers
=
policyBrokerService
.
lambdaQuery
()
.
in
(
PolicyBroker:
:
getPolicyBizId
,
bizIds
)
.
eq
(
PolicyBroker:
:
getIsDeleted
,
0
)
.
orderByAsc
(
PolicyBroker:
:
getId
)
// 保证“第一个”的确定性
.
orderByAsc
(
PolicyBroker:
:
getId
)
.
list
();
// 3. 按 policyBizId 分组,并取每组第一条
Map
<
String
,
String
>
brokerNameMap
=
allBrokers
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
PolicyBroker:
:
getPolicyBizId
,
LinkedHashMap:
:
new
,
// 保持插入顺序
LinkedHashMap:
:
new
,
Collectors
.
collectingAndThen
(
Collectors
.
toList
(),
list
->
list
.
get
(
0
).
getBrokerName
()
)
));
// 批量查询投保人(取第一条的中文名、英文名)
List
<
PolicyPolicyholder
>
allPolicyholders
=
policyPolicyholderService
.
lambdaQuery
()
.
in
(
PolicyPolicyholder:
:
getPolicyBizId
,
bizIds
)
.
eq
(
PolicyPolicyholder:
:
getIsDeleted
,
0
)
.
orderByAsc
(
PolicyPolicyholder:
:
getId
)
.
list
();
Map
<
String
,
String
>
holderNameMap
=
allPolicyholders
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
PolicyPolicyholder:
:
getPolicyBizId
,
LinkedHashMap:
:
new
,
Collectors
.
collectingAndThen
(
Collectors
.
toList
(),
list
->
list
.
get
(
0
).
getName
()
// 中文名
)
));
Map
<
String
,
String
>
holderNameEnMap
=
allPolicyholders
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
PolicyPolicyholder:
:
getPolicyBizId
,
LinkedHashMap:
:
new
,
Collectors
.
collectingAndThen
(
Collectors
.
toList
(),
list
->
list
.
get
(
0
).
getNameEn
()
// 英文名
)
));
// 批量查询受保人(取第一条的中文名、英文名)
List
<
PolicyInsurant
>
allInsurants
=
policyInsurantService
.
lambdaQuery
()
.
in
(
PolicyInsurant:
:
getPolicyBizId
,
bizIds
)
.
eq
(
PolicyInsurant:
:
getIsDeleted
,
0
)
.
orderByAsc
(
PolicyInsurant:
:
getId
)
.
list
();
Map
<
String
,
String
>
insurantNameMap
=
allInsurants
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
PolicyInsurant:
:
getPolicyBizId
,
LinkedHashMap:
:
new
,
Collectors
.
collectingAndThen
(
Collectors
.
toList
(),
list
->
list
.
get
(
0
).
getName
()
// 中文名
)
));
Map
<
String
,
String
>
insurantNameEnMap
=
allInsurants
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
PolicyInsurant:
:
getPolicyBizId
,
LinkedHashMap:
:
new
,
Collectors
.
collectingAndThen
(
Collectors
.
toList
(),
list
->
list
.
get
(
0
).
get
BrokerName
()
// 取第一条的 brokerName
list
->
list
.
get
(
0
).
get
NameEn
()
// 英文名
)
));
//
4. 设置 brokerName
//
统一填充 VO
voList
.
forEach
(
vo
->
{
String
name
=
brokerNameMap
.
get
(
vo
.
getPolicyBizId
());
vo
.
setBrokerName
(
name
);
vo
.
setBrokerName
(
brokerNameMap
.
get
(
vo
.
getPolicyBizId
()));
vo
.
setPolicyHolder
(
holderNameMap
.
get
(
vo
.
getPolicyBizId
()));
vo
.
setPolicyHolderEn
(
holderNameEnMap
.
get
(
vo
.
getPolicyBizId
()));
vo
.
setInsured
(
insurantNameMap
.
get
(
vo
.
getPolicyBizId
()));
vo
.
setInsuredEn
(
insurantNameEnMap
.
get
(
vo
.
getPolicyBizId
()));
});
}
...
...
@@ -351,6 +403,11 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
.
update
();
}
//更新新单投保人表和新单受保人表的中文名和简体中文名
//更新新单投保人表信息
policyPolicyholderService
.
updateName
(
policyBizId
,
policyFollowDto
.
getPolicyHolder
());
//更新新单受保人表信息
policyInsurantService
.
updateName
(
policyBizId
,
policyFollowDto
.
getPolicyHolder
());
return
true
;
}
...
...
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyInsurantServiceImpl.java
View file @
21c28379
...
...
@@ -2,6 +2,7 @@ package com.yd.csf.service.service.impl;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yd.common.enums.ResultCode
;
import
com.yd.common.exception.BusinessException
;
...
...
@@ -69,6 +70,15 @@ public class PolicyInsurantServiceImpl extends ServiceImpl<PolicyInsurantMapper,
)
);
}
@Override
public
boolean
updateName
(
String
policyBizId
,
String
name
)
{
String
nameSc
=
ChineseTextConverter
.
traditionalToSimplified
(
name
);
return
this
.
update
(
new
UpdateWrapper
<
PolicyInsurant
>()
.
set
(
"name"
,
name
)
.
set
(
"name_sc"
,
nameSc
)
.
eq
(
"policy_biz_id"
,
policyBizId
));
}
}
...
...
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyPolicyholderServiceImpl.java
View file @
21c28379
...
...
@@ -2,12 +2,15 @@ package com.yd.csf.service.service.impl;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yd.common.enums.ResultCode
;
import
com.yd.common.exception.BusinessException
;
import
com.yd.common.utils.ChineseTextConverter
;
import
com.yd.common.utils.EnglishTextUtil
;
import
com.yd.csf.service.dto.PolicyPolicyholderUpdateRequest
;
import
com.yd.csf.service.enums.FnaStatusEnum
;
import
com.yd.csf.service.model.Fna
;
import
com.yd.csf.service.model.PolicyPolicyholder
;
import
com.yd.csf.service.service.PolicyPolicyholderService
;
import
com.yd.csf.service.dao.PolicyPolicyholderMapper
;
...
...
@@ -74,6 +77,15 @@ public class PolicyPolicyholderServiceImpl extends ServiceImpl<PolicyPolicyholde
)
);
}
@Override
public
boolean
updateName
(
String
policyBizId
,
String
name
)
{
String
nameSc
=
ChineseTextConverter
.
traditionalToSimplified
(
name
);
return
this
.
update
(
new
UpdateWrapper
<
PolicyPolicyholder
>()
.
set
(
"name"
,
name
)
.
set
(
"name_sc"
,
nameSc
)
.
eq
(
"policy_biz_id"
,
policyBizId
));
}
}
...
...
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