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
f7e48e44
Commit
f7e48e44
authored
Oct 11, 2025
by
jianan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
来佣接口21
parent
3f9f30fa
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
190 additions
and
18 deletions
+190
-18
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiPolicyFollowController.java
+26
-12
yd-csf-api/src/main/java/com/yd/csf/api/dto/PolicyExcelDTO.java
+15
-0
yd-csf-service/src/main/java/com/yd/csf/service/dto/AddToPolicyRequest.java
+17
-0
yd-csf-service/src/main/java/com/yd/csf/service/dto/PolicyBrokerDto.java
+47
-0
yd-csf-service/src/main/java/com/yd/csf/service/dto/PolicyFollowUpdateRequest.java
+8
-0
yd-csf-service/src/main/java/com/yd/csf/service/model/PolicyBroker.java
+5
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/PolicyFollowService.java
+3
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyFollowServiceImpl.java
+67
-5
yd-csf-service/src/main/resources/mappers/PolicyBrokerMapper.xml
+2
-1
No files found.
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiPolicyFollowController.java
View file @
f7e48e44
...
...
@@ -16,10 +16,7 @@ import com.yd.csf.api.dto.PolicyExcelDTO;
import
com.yd.csf.api.dto.PolicyFollowDTO
;
import
com.yd.csf.api.listener.PolicyDataListener
;
import
com.yd.csf.service.common.ErrorCode
;
import
com.yd.csf.service.dto.PolicyFollowAddRequest
;
import
com.yd.csf.service.dto.PolicyFollowDeleteRequest
;
import
com.yd.csf.service.dto.PolicyFollowQueryRequest
;
import
com.yd.csf.service.dto.PolicyFollowUpdateRequest
;
import
com.yd.csf.service.dto.*
;
import
com.yd.csf.service.model.*
;
import
com.yd.csf.service.service.*
;
import
com.yd.csf.service.vo.PolicyFollowVO
;
...
...
@@ -126,11 +123,11 @@ public class ApiPolicyFollowController {
for
(
PolicyFollowDTO
policyFollow
:
list
)
{
policyFollowList
.
add
(
policyFollow
.
getPolicyFollow
());
policyBrokerList
.
addAll
(
policyFollow
.
getBrokerList
());
policyList
.
add
(
policyFollow
.
getPolicy
());
//
policyList.add(policyFollow.getPolicy());
}
policyFollowService
.
saveBatch
(
policyFollowList
);
policyService
.
saveBatch
(
policyList
);
//
policyService.saveBatch(policyList);
policyBrokerService
.
saveBatch
(
policyBrokerList
);
// 获取当前登录用户的ID
...
...
@@ -204,19 +201,19 @@ public class ApiPolicyFollowController {
// 转换为PolicyBroker对象
List
<
PolicyBroker
>
policyBrokerList
=
new
ArrayList
<>();
if
(
StringUtils
.
isNotBlank
(
policyExcelDTO
.
getBrokerName1
()))
{
policyBrokerList
.
add
(
getPolicyBroker
(
policyExcelDTO
.
getBrokerName1
(),
policyExcelDTO
.
getTeam1
(),
policyBizId
,
policyNo
));
policyBrokerList
.
add
(
getPolicyBroker
(
policyExcelDTO
.
getBrokerName1
(),
policyExcelDTO
.
getTeam1
(),
policy
ExcelDTO
.
getBrokerRatio1
(),
policy
BizId
,
policyNo
));
}
if
(
StringUtils
.
isNotBlank
(
policyExcelDTO
.
getBrokerName2
()))
{
policyBrokerList
.
add
(
getPolicyBroker
(
policyExcelDTO
.
getBrokerName2
(),
policyExcelDTO
.
getTeam2
(),
policyBizId
,
policyNo
));
policyBrokerList
.
add
(
getPolicyBroker
(
policyExcelDTO
.
getBrokerName2
(),
policyExcelDTO
.
getTeam2
(),
policy
ExcelDTO
.
getBrokerRatio2
(),
policy
BizId
,
policyNo
));
}
if
(
StringUtils
.
isNotBlank
(
policyExcelDTO
.
getBrokerName3
()))
{
policyBrokerList
.
add
(
getPolicyBroker
(
policyExcelDTO
.
getBrokerName3
(),
policyExcelDTO
.
getTeam3
(),
policyBizId
,
policyNo
));
policyBrokerList
.
add
(
getPolicyBroker
(
policyExcelDTO
.
getBrokerName3
(),
policyExcelDTO
.
getTeam3
(),
policy
ExcelDTO
.
getBrokerRatio3
(),
policy
BizId
,
policyNo
));
}
if
(
StringUtils
.
isNotBlank
(
policyExcelDTO
.
getBrokerName4
()))
{
policyBrokerList
.
add
(
getPolicyBroker
(
policyExcelDTO
.
getBrokerName4
(),
policyExcelDTO
.
getTeam4
(),
policyBizId
,
policyNo
));
policyBrokerList
.
add
(
getPolicyBroker
(
policyExcelDTO
.
getBrokerName4
(),
policyExcelDTO
.
getTeam4
(),
policy
ExcelDTO
.
getBrokerRatio4
(),
policy
BizId
,
policyNo
));
}
if
(
StringUtils
.
isNotBlank
(
policyExcelDTO
.
getBrokerName5
()))
{
policyBrokerList
.
add
(
getPolicyBroker
(
policyExcelDTO
.
getBrokerName5
(),
policyExcelDTO
.
getTeam5
(),
policyBizId
,
policyNo
));
policyBrokerList
.
add
(
getPolicyBroker
(
policyExcelDTO
.
getBrokerName5
(),
policyExcelDTO
.
getTeam5
(),
policy
ExcelDTO
.
getBrokerRatio5
(),
policy
BizId
,
policyNo
));
}
// 转换为PolicyFollowDTO对象
...
...
@@ -229,12 +226,13 @@ public class ApiPolicyFollowController {
return
policyFollowDTOList
;
}
private
PolicyBroker
getPolicyBroker
(
String
brokerName
,
String
team
,
String
policyBizId
,
String
policyNo
)
{
private
PolicyBroker
getPolicyBroker
(
String
brokerName
,
String
team
,
String
brokerRatio
,
String
policyBizId
,
String
policyNo
)
{
PolicyBroker
policyBroker
=
new
PolicyBroker
();
policyBroker
.
setPolicyBizId
(
policyBizId
);
policyBroker
.
setPolicyNo
(
policyNo
);
policyBroker
.
setBrokerName
(
brokerName
);
policyBroker
.
setTeam
(
team
);
policyBroker
.
setBrokerRatio
(
brokerRatio
);
return
policyBroker
;
}
...
...
@@ -255,6 +253,22 @@ public class ApiPolicyFollowController {
}
/**
* 保存到保单库
*
* @param addToPolicyRequest
* @param request
* @return
*/
@Operation
(
summary
=
"保存到保单库"
)
@PostMapping
(
"/addToPolicy"
)
public
Result
<
Boolean
>
addToPolicy
(
@RequestBody
AddToPolicyRequest
addToPolicyRequest
,
HttpServletRequest
request
)
{
if
(
StringUtils
.
isBlank
(
addToPolicyRequest
.
getPolicyBizId
()))
{
return
Result
.
fail
(
ErrorCode
.
PARAMS_ERROR
.
getCode
(),
ErrorCode
.
PARAMS_ERROR
.
getMessage
());
}
return
Result
.
success
(
policyFollowService
.
addToPolicy
(
addToPolicyRequest
));
}
/**
* 删除新单跟进
*
* @param deleteRequest
...
...
yd-csf-api/src/main/java/com/yd/csf/api/dto/PolicyExcelDTO.java
View file @
f7e48e44
...
...
@@ -67,27 +67,42 @@ public class PolicyExcelDTO {
@ExcelProperty
(
"所属团队1"
)
private
String
team1
;
@ExcelProperty
(
"介绍费占比1"
)
private
String
brokerRatio1
;
@ExcelProperty
(
"转介人2"
)
private
String
brokerName2
;
@ExcelProperty
(
"所属团队2"
)
private
String
team2
;
@ExcelProperty
(
"介绍费占比2"
)
private
String
brokerRatio2
;
@ExcelProperty
(
"转介人3"
)
private
String
brokerName3
;
@ExcelProperty
(
"所属团队3"
)
private
String
team3
;
@ExcelProperty
(
"介绍费占比3"
)
private
String
brokerRatio3
;
@ExcelProperty
(
"转介人4"
)
private
String
brokerName4
;
@ExcelProperty
(
"所属团队4"
)
private
String
team4
;
@ExcelProperty
(
"介绍费占比4"
)
private
String
brokerRatio4
;
@ExcelProperty
(
"转介人5"
)
private
String
brokerName5
;
@ExcelProperty
(
"所属团队5"
)
private
String
team5
;
@ExcelProperty
(
"介绍费占比5"
)
private
String
brokerRatio5
;
}
yd-csf-service/src/main/java/com/yd/csf/service/dto/AddToPolicyRequest.java
0 → 100644
View file @
f7e48e44
package
com
.
yd
.
csf
.
service
.
dto
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
AddToPolicyRequest
implements
Serializable
{
/**
* 新单编号
*/
@Schema
(
description
=
"新单编号"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
private
String
policyBizId
;
private
static
final
long
serialVersionUID
=
1L
;
}
yd-csf-service/src/main/java/com/yd/csf/service/dto/PolicyBrokerDto.java
0 → 100644
View file @
f7e48e44
package
com
.
yd
.
csf
.
service
.
dto
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
PolicyBrokerDto
implements
Serializable
{
/**
* 转介人名称
*/
@Schema
(
description
=
"转介人名称"
)
private
String
brokerName
;
/**
* 转介人业务ID
*/
@Schema
(
description
=
"转介人业务ID"
)
private
String
brokerBizId
;
/**
* 所属团队
*/
@Schema
(
description
=
"所属团队"
)
private
String
team
;
/**
* 所属团队业务id
*/
@Schema
(
description
=
"所属团队业务id"
)
private
String
teamBizId
;
/**
* 转介人比例
*/
@Schema
(
description
=
"转介人比例"
)
private
String
brokerRatio
;
/**
* 备注
*/
@Schema
(
description
=
"备注"
)
private
String
remark
;
private
static
final
long
serialVersionUID
=
1L
;
}
yd-csf-service/src/main/java/com/yd/csf/service/dto/PolicyFollowUpdateRequest.java
View file @
f7e48e44
package
com
.
yd
.
csf
.
service
.
dto
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.yd.csf.service.dto.PolicyBrokerDto
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
@Data
public
class
PolicyFollowUpdateRequest
{
...
...
@@ -152,6 +154,12 @@ public class PolicyFollowUpdateRequest {
private
Object
initialPremium
;
/**
* 转介人列表
*/
@Schema
(
description
=
"转介人列表"
)
private
List
<
PolicyBrokerDto
>
brokerList
;
/**
* 备注
*/
@Schema
(
description
=
"备注"
)
...
...
yd-csf-service/src/main/java/com/yd/csf/service/model/PolicyBroker.java
View file @
f7e48e44
...
...
@@ -52,6 +52,11 @@ public class PolicyBroker implements Serializable {
private
String
teamBizId
;
/**
* 介绍费占比
*/
private
String
brokerRatio
;
/**
* 通用备注
*/
private
String
remark
;
...
...
yd-csf-service/src/main/java/com/yd/csf/service/service/PolicyFollowService.java
View file @
f7e48e44
...
...
@@ -3,6 +3,7 @@ package com.yd.csf.service.service;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yd.csf.service.dto.AddToPolicyRequest
;
import
com.yd.csf.service.dto.PolicyFollowAddRequest
;
import
com.yd.csf.service.dto.PolicyFollowQueryRequest
;
import
com.yd.csf.service.dto.PolicyFollowUpdateRequest
;
...
...
@@ -29,4 +30,6 @@ public interface PolicyFollowService extends IService<PolicyFollow> {
PolicyFollowVO
getPolicyFollowVO
(
PolicyFollow
policyFollow
);
Map
<
String
,
Object
>
addPolicyFollow
(
PolicyFollowAddRequest
policyFollowAddRequest
);
Boolean
addToPolicy
(
AddToPolicyRequest
addToPolicyRequest
);
}
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyFollowServiceImpl.java
View file @
f7e48e44
...
...
@@ -5,13 +5,13 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yd.auth.core.dto.AuthUserDto
;
import
com.yd.auth.core.utils.SecurityUtil
;
import
com.yd.common.enums.CommonEnum
;
import
com.yd.common.exception.BusinessException
;
import
com.yd.common.utils.RandomStringGenerator
;
import
com.yd.csf.service.common.ErrorCode
;
import
com.yd.csf.service.dto.PolicyFollowAddRequest
;
import
com.yd.csf.service.dto.PolicyFollowQueryRequest
;
import
com.yd.csf.service.dto.PolicyFollowUpdateRequest
;
import
com.yd.csf.service.dto.*
;
import
com.yd.csf.service.model.Policy
;
import
com.yd.csf.service.model.PolicyBroker
;
import
com.yd.csf.service.model.PolicyFollow
;
...
...
@@ -95,7 +95,7 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
List
<
String
>
policyBizIdList
=
policyFollowVOList
.
stream
().
map
(
PolicyFollowVO:
:
getPolicyBizId
).
collect
(
Collectors
.
toList
());
if
(
CollUtil
.
isNotEmpty
(
policyBizIdList
))
{
// 转介人业务id列表 => 转介人列表
List
<
PolicyBroker
>
policyBrokerList
=
policyBrokerService
.
list
(
new
LambdaQueryWrapper
<
PolicyBroker
>().
in
(
PolicyBroker:
:
getPolicyBizId
,
policyBizIdList
));
List
<
PolicyBroker
>
policyBrokerList
=
policyBrokerService
.
list
(
new
QueryWrapper
<
PolicyBroker
>().
in
(
"policy_biz_id"
,
policyBizIdList
));
// 转介人列表 => 转介人业务id列表
Map
<
String
,
List
<
PolicyBroker
>>
brokerMap
=
policyBrokerList
.
stream
().
collect
(
Collectors
.
groupingBy
(
PolicyBroker:
:
getPolicyBizId
));
// 转介人列表 => 封装转介人列表
...
...
@@ -109,6 +109,7 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Boolean
updatePolicyFollow
(
PolicyFollowUpdateRequest
policyFollowUpdateRequest
)
{
if
(
policyFollowUpdateRequest
==
null
||
ObjectUtils
.
isEmpty
(
policyFollowUpdateRequest
.
getPolicyBizId
()))
{
throw
new
BusinessException
(
ErrorCode
.
PARAMS_ERROR
.
getCode
(),
ErrorCode
.
PARAMS_ERROR
.
getMessage
());
...
...
@@ -118,7 +119,32 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
if
(
policyFollow
==
null
)
{
throw
new
BusinessException
(
ErrorCode
.
NOT_FOUND_ERROR
.
getCode
(),
ErrorCode
.
NOT_FOUND_ERROR
.
getMessage
());
}
BeanUtils
.
copyProperties
(
policyFollowUpdateRequest
,
policyFollow
,
"policyBizId"
);
BeanUtils
.
copyProperties
(
policyFollowUpdateRequest
,
policyFollow
,
"id"
,
"policyBizId"
);
// 获取当前登录用户
AuthUserDto
currentLoginUser
=
SecurityUtil
.
getCurrentLoginUser
();
String
loginUserId
=
currentLoginUser
.
getId
().
toString
();
policyFollow
.
setUpdaterId
(
loginUserId
);
policyFollow
.
setUpdateTime
(
new
Date
());
// 先删除原有的转介人
policyBrokerService
.
remove
(
new
QueryWrapper
<
PolicyBroker
>().
eq
(
"policy_biz_id"
,
policyBizId
));
// 保存转介人
List
<
PolicyBrokerDto
>
brokerList
=
policyFollowUpdateRequest
.
getBrokerList
();
List
<
PolicyBroker
>
policyBrokerList
=
brokerList
.
stream
().
map
(
policyBrokerDto
->
{
PolicyBroker
policyBroker
=
new
PolicyBroker
();
BeanUtils
.
copyProperties
(
policyBrokerDto
,
policyBroker
);
policyBroker
.
setPolicyBizId
(
policyBizId
);
policyBroker
.
setCreatorId
(
loginUserId
);
policyBroker
.
setCreateTime
(
new
Date
());
policyBroker
.
setUpdaterId
(
loginUserId
);
policyBroker
.
setUpdateTime
(
new
Date
());
return
policyBroker
;
}).
collect
(
Collectors
.
toList
());
if
(
CollUtil
.
isNotEmpty
(
policyBrokerList
))
{
policyBrokerService
.
saveBatch
(
policyBrokerList
);
}
return
updateById
(
policyFollow
);
}
...
...
@@ -165,6 +191,42 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
return
Collections
.
singletonMap
(
"policyBizId"
,
policyBizId
);
}
@Override
public
Boolean
addToPolicy
(
AddToPolicyRequest
addToPolicyRequest
)
{
String
policyBizId
=
addToPolicyRequest
.
getPolicyBizId
();
PolicyFollow
policyFollow
=
getByPolicyBizId
(
policyBizId
);
if
(
policyFollow
==
null
)
{
throw
new
BusinessException
(
ErrorCode
.
NOT_FOUND_ERROR
.
getCode
(),
"Policy biz id not found"
);
}
// 获取当前登录用户
AuthUserDto
currentLoginUser
=
SecurityUtil
.
getCurrentLoginUser
();
String
loginUserId
=
currentLoginUser
.
getId
().
toString
();
// 保存到保单库
Policy
policy
=
policyService
.
getOne
(
new
QueryWrapper
<
Policy
>().
eq
(
"policy_biz_id"
,
policyBizId
));
if
(
policy
!=
null
)
{
// 更新
BeanUtils
.
copyProperties
(
policyFollow
,
policy
,
"id"
);
policy
.
setUpdaterId
(
loginUserId
);
policy
.
setUpdateTime
(
new
Date
());
return
policyService
.
updateById
(
policy
);
}
else
{
// 不存在则创建
policy
=
new
Policy
();
BeanUtils
.
copyProperties
(
policyFollow
,
policy
,
"id"
);
policy
.
setId
(
null
);
policy
.
setPolicyBizId
(
policyBizId
);
policy
.
setCreatorId
(
loginUserId
);
policy
.
setCreateTime
(
new
Date
());
policy
.
setUpdaterId
(
loginUserId
);
policy
.
setUpdateTime
(
new
Date
());
return
policyService
.
save
(
policy
);
}
}
}
...
...
yd-csf-service/src/main/resources/mappers/PolicyBrokerMapper.xml
View file @
f7e48e44
...
...
@@ -12,6 +12,7 @@
<result
property=
"brokerBizId"
column=
"broker_biz_id"
/>
<result
property=
"team"
column=
"team"
/>
<result
property=
"teamBizId"
column=
"team_biz_id"
/>
<result
property=
"brokerRatio"
column=
"broker_ratio"
/>
<result
property=
"remark"
column=
"remark"
/>
<result
property=
"isDeleted"
column=
"is_deleted"
/>
<result
property=
"creatorId"
column=
"creator_id"
/>
...
...
@@ -21,7 +22,7 @@
</resultMap>
<sql
id=
"Base_Column_List"
>
id,policy_biz_id,policy_no,broker_name,broker_biz_id,team,
id,policy_biz_id,policy_no,broker_name,broker_biz_id,team,
broker_ratio,
team_biz_id,remark,is_deleted,creator_id,updater_id,
create_time,update_time
</sql>
...
...
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