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
1d594825
Commit
1d594825
authored
Mar 09, 2026
by
zhangxingmin
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/test_zxm_bug' into test
parents
c8d34103
51b2113e
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
124 additions
and
36 deletions
+124
-36
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiPremiumReconciliationServiceImpl.java
+4
-0
yd-csf-feign/src/main/java/com/yd/csf/feign/dto/appointment/ApiProductPlanMainInfoDto.java
+12
-6
yd-csf-feign/src/main/java/com/yd/csf/feign/request/premiumreconciliation/ApiPremiumReconciliationResultEditRequest.java
+12
-0
yd-csf-service/src/main/java/com/yd/csf/service/dto/ChangePolicyFollowStatusRequest.java
+12
-0
yd-csf-service/src/main/java/com/yd/csf/service/model/Policy.java
+3
-0
yd-csf-service/src/main/java/com/yd/csf/service/model/PolicyFollow.java
+6
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/PolicyFollowService.java
+2
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyFollowServiceImpl.java
+14
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyServiceImpl.java
+59
-30
No files found.
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiPremiumReconciliationServiceImpl.java
View file @
1d594825
...
...
@@ -1205,6 +1205,10 @@ public class ApiPremiumReconciliationServiceImpl implements ApiPremiumReconcilia
statusRequest
.
setUnderwritingDate
(
request
.
getUnderwritingDate
());
statusRequest
.
setPolicyBizId
(
policyFollow
.
getPolicyBizId
());
statusRequest
.
setStatus
(
"TAKE_EFFECT"
);
//保单截止日期
statusRequest
.
setPolicyExpirationDate
(
request
.
getPolicyExpirationDate
());
//冷静期结束日期
statusRequest
.
setCoolingOffEndDate
(
request
.
getCoolingOffEndDate
());
//遍历保单转介人列表信息 -> 调用基本法算出预计发佣列表
// 通过代理对象调用
// getSelf().execute(statusRequest,token);
...
...
yd-csf-feign/src/main/java/com/yd/csf/feign/dto/appointment/ApiProductPlanMainInfoDto.java
View file @
1d594825
...
...
@@ -5,6 +5,7 @@ import lombok.Data;
import
javax.validation.constraints.NotBlank
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.util.Date
;
/**
* 产品计划主信息
...
...
@@ -18,14 +19,19 @@ public class ApiProductPlanMainInfoDto {
private
String
planBizId
;
/**
*
保险公司ID(产品上架信息绑定的保险公司参数)
*
新单跟进信息表唯一业务ID
*/
private
String
company
Id
;
private
String
policyBiz
Id
;
/**
* 保险公司
名称
* 保险公司
*/
private
String
companyName
;
private
String
insuranceCompany
;
/**
* 保险公司业务id
*/
private
String
insuranceCompanyBizId
;
/**
* 出单经纪公司(对账公司)ID
...
...
@@ -122,8 +128,8 @@ public class ApiProductPlanMainInfoDto {
/**
* 回溯日期
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd
HH:mm:ss
"
)
private
LocalDateTime
backtrack
Date
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
private
Date
retroactive
Date
;
/**
* 是否参加递增保障权益: 0-否, 1-是(字典)
...
...
yd-csf-feign/src/main/java/com/yd/csf/feign/request/premiumreconciliation/ApiPremiumReconciliationResultEditRequest.java
View file @
1d594825
...
...
@@ -60,4 +60,16 @@ public class ApiPremiumReconciliationResultEditRequest {
*/
private
String
status
;
/**
* 冷静期结束日期
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
coolingOffEndDate
;
/**
* 保单截止日期
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
policyExpirationDate
;
}
yd-csf-service/src/main/java/com/yd/csf/service/dto/ChangePolicyFollowStatusRequest.java
View file @
1d594825
package
com
.
yd
.
csf
.
service
.
dto
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
javax.validation.constraints.NotNull
;
import
java.util.Date
;
import
java.util.List
;
...
...
@@ -38,4 +40,14 @@ public class ChangePolicyFollowStatusRequest {
*/
@Schema
(
description
=
"跟进信息"
)
private
String
message
;
/**
* 冷静期结束日期
*/
private
Date
coolingOffEndDate
;
/**
* 保单截止日期
*/
private
Date
policyExpirationDate
;
}
yd-csf-service/src/main/java/com/yd/csf/service/model/Policy.java
View file @
1d594825
...
...
@@ -10,9 +10,12 @@ import java.math.BigDecimal;
import
java.time.LocalDateTime
;
import
java.util.Date
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
/**
* 保单表
*
...
...
yd-csf-service/src/main/java/com/yd/csf/service/model/PolicyFollow.java
View file @
1d594825
...
...
@@ -7,10 +7,14 @@ import com.baomidou.mybatisplus.annotation.TableName;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.util.Date
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
/**
* 新单跟进表
*
...
...
@@ -422,4 +426,5 @@ public class PolicyFollow implements Serializable {
@TableField
(
exist
=
false
)
private
static
final
long
serialVersionUID
=
1L
;
}
\ No newline at end of file
yd-csf-service/src/main/java/com/yd/csf/service/service/PolicyFollowService.java
View file @
1d594825
...
...
@@ -63,6 +63,8 @@ public interface PolicyFollowService extends IService<PolicyFollow> {
PolicyFollow
queryOneByPolicyNo
(
String
policyNo
);
PolicyFollow
queryOneByPolicyBizId
(
String
policyBizId
);
/**
* 保存首期缴费信息
*/
...
...
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyFollowServiceImpl.java
View file @
1d594825
...
...
@@ -490,6 +490,10 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
.
set
(
PolicyFollow:
:
getStatus
,
changePolicyFollowStatusRequest
.
getStatus
())
.
set
(
PolicyFollow:
:
getNextStatusList
,
getNextStatus
(
policyFollowStatusEnum
))
.
set
(
PolicyFollow:
:
getUpdaterId
,
loginUserId
)
//冷静期结束日期
.
set
(
PolicyFollow:
:
getCoolingOffEndDate
,
changePolicyFollowStatusRequest
.
getCoolingOffEndDate
())
//保单截止日期
.
set
(
PolicyFollow:
:
getPolicyExpirationDate
,
changePolicyFollowStatusRequest
.
getPolicyExpirationDate
())
.
eq
(
PolicyFollow:
:
getId
,
policyFollow
.
getId
())
.
update
();
...
...
@@ -522,6 +526,8 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
policy
.
setTotalPaymentPremium
(
calculateTotalPaymentPremium
(
policy
));
policy
.
setUnderwritingDate
(
changePolicyFollowStatusRequest
.
getUnderwritingDate
());
policy
.
setEffectiveDate
(
changePolicyFollowStatusRequest
.
getEffectiveDate
());
//冷静期结束日期
policy
.
setCoolingOffEndDate
(
changePolicyFollowStatusRequest
.
getCoolingOffEndDate
());
if
(
ObjectUtils
.
isEmpty
(
policy
.
getInsuranceCompany
())
||
ObjectUtils
.
isEmpty
(
policy
.
getInsuranceCompany
()))
{
// 获取保单产品信息,填充对账公司相关字段
...
...
@@ -724,6 +730,14 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
}
@Override
public
PolicyFollow
queryOneByPolicyBizId
(
String
policyBizId
)
{
return
this
.
getOne
(
new
LambdaQueryWrapper
<
PolicyFollow
>()
.
eq
(
PolicyFollow:
:
getPolicyBizId
,
policyBizId
)
.
last
(
" limit 1 "
)
);
}
@Override
public
Boolean
uploadAttachment
(
AttachmentUploadRequest
attachmentUploadRequest
)
{
String
policyBizId
=
attachmentUploadRequest
.
getPolicyBizId
();
if
(
policyBizId
==
null
)
{
...
...
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyServiceImpl.java
View file @
1d594825
...
...
@@ -16,7 +16,9 @@ import com.yd.csf.feign.dto.appointment.ApiProductPlanMainInfoDto;
import
com.yd.csf.service.dto.*
;
import
com.yd.csf.service.model.Policy
;
import
com.yd.csf.service.model.PolicyAdditional
;
import
com.yd.csf.service.model.PolicyFollow
;
import
com.yd.csf.service.service.PolicyAdditionalService
;
import
com.yd.csf.service.service.PolicyFollowService
;
import
com.yd.csf.service.service.PolicyService
;
import
com.yd.csf.service.dao.PolicyMapper
;
import
com.yd.csf.service.vo.PolicyVO
;
...
...
@@ -50,6 +52,8 @@ public class PolicyServiceImpl extends ServiceImpl<PolicyMapper, Policy>
@Resource
private
PolicyAdditionalService
policyAdditionalService
;
@Resource
private
PolicyFollowService
policyFollowService
;
@Resource
private
ApiRelProjectProductLaunchFeignClient
apiRelProjectProductLaunchFeignClient
;
@Override
...
...
@@ -102,6 +106,10 @@ public class PolicyServiceImpl extends ServiceImpl<PolicyMapper, Policy>
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Boolean
updatePolicy
(
PolicyUpdateRequest
policyUpdateRequest
)
{
ApiProductPlanMainInfoDto
apiProductPlanMainInfoDto
=
policyUpdateRequest
.
getApiProductPlanMainInfoDto
();
if
(
apiProductPlanMainInfoDto
==
null
)
{
throw
new
BusinessException
(
"产品计划对象不能为空"
);
}
String
policyBizId
=
policyUpdateRequest
.
getPolicyBizId
();
if
(
StringUtils
.
isBlank
(
policyBizId
))
{
throw
new
BusinessException
(
ResultCode
.
PARAMS_ERROR
.
getCode
(),
"policyBizId不能为空"
);
...
...
@@ -121,37 +129,58 @@ public class PolicyServiceImpl extends ServiceImpl<PolicyMapper, Policy>
Date
now
=
new
Date
();
// 保单信息
ApiProductPlanMainInfoDto
apiProductPlanMainInfoDto
=
policyUpdateRequest
.
getApiProductPlanMainInfoDto
();
if
(
apiProductPlanMainInfoDto
!=
null
)
{
BeanUtils
.
copyProperties
(
apiProductPlanMainInfoDto
,
policy
,
"policyBizId"
,
"id"
);
policy
.
setPaymentPremium
(
apiProductPlanMainInfoDto
.
getEachIssuePremium
());
policy
.
setTotalPaymentPremium
(
calculateTotalPaymentPremium
(
apiProductPlanMainInfoDto
));
policy
.
setIsPrepaid
(
apiProductPlanMainInfoDto
.
getIsPrepay
());
policy
.
setUpdateTime
(
now
);
// 更新保单
this
.
updateById
(
policy
);
}
String
policyNo
=
policy
.
getPolicyNo
();
// 先删除旧的附加险
policyAdditionalService
.
remove
(
new
QueryWrapper
<
PolicyAdditional
>().
eq
(
"policy_biz_id"
,
policyBizId
));
// 保单附加险列表
List
<
ApiProductPlanAdditionalInfoDto
>
apiProductPlanAdditionalInfoDtoList
=
policyUpdateRequest
.
getApiProductPlanAdditionalInfoDtoList
();
if
(
CollUtil
.
isNotEmpty
(
apiProductPlanAdditionalInfoDtoList
))
{
// 转换为实体类
List
<
PolicyAdditional
>
policyAdditionalList
=
apiProductPlanAdditionalInfoDtoList
.
stream
().
map
(
additionalDto
->
{
PolicyAdditional
policyAdditional
=
new
PolicyAdditional
();
BeanUtils
.
copyProperties
(
additionalDto
,
policyAdditional
);
policyAdditional
.
setPolicyBizId
(
policyBizId
);
policyAdditional
.
setPolicyNo
(
policyNo
);
policyAdditional
.
setUpdateTime
(
now
);
policyAdditional
.
setCreateTime
(
now
);
return
policyAdditional
;
}).
collect
(
Collectors
.
toList
());
// 批量插入
policyAdditionalService
.
saveBatch
(
policyAdditionalList
);
BeanUtils
.
copyProperties
(
apiProductPlanMainInfoDto
,
policy
,
"policyBizId"
,
"id"
);
policy
.
setPaymentPremium
(
apiProductPlanMainInfoDto
.
getEachIssuePremium
());
policy
.
setTotalPaymentPremium
(
calculateTotalPaymentPremium
(
apiProductPlanMainInfoDto
));
policy
.
setIsPrepaid
(
apiProductPlanMainInfoDto
.
getIsPrepay
());
policy
.
setUpdateTime
(
now
);
//对账公司名称
policy
.
setReconciliationCompany
(
apiProductPlanMainInfoDto
.
getReconciliationCompanyName
());
//对账公司业务id
policy
.
setReconciliationCompanyBizId
(
apiProductPlanMainInfoDto
.
getReconciliationCompanyId
());
policy
.
setProductCate
(
apiProductPlanMainInfoDto
.
getInsuranceTypeId
());
policy
.
setPaymentTerm
(
apiProductPlanMainInfoDto
.
getIssueNumber
());
policy
.
setCurrency
(
apiProductPlanMainInfoDto
.
getPolicyCurrency
());
policy
.
setPaymentPremium
(
apiProductPlanMainInfoDto
.
getEachIssuePremium
());
policy
.
setIsPrepaid
(
apiProductPlanMainInfoDto
.
getIsPrepay
());
policy
.
setPrepaidTerm
(
apiProductPlanMainInfoDto
.
getPrepaymentPeriod
());
policy
.
setIsBacktrack
(
apiProductPlanMainInfoDto
.
getIsTraceable
());
// 更新保单
this
.
updateById
(
policy
);
//更新新单跟进数据
PolicyFollow
policyFollow
=
policyFollowService
.
queryOneByPolicyBizId
(
policyBizId
);
if
(
policyFollow
==
null
)
{
throw
new
BusinessException
(
"新单跟进信息不存在"
);
}
BeanUtils
.
copyProperties
(
apiProductPlanMainInfoDto
,
policyFollow
);
policyFollow
.
setReconciliationCompanyBizId
(
apiProductPlanMainInfoDto
.
getReconciliationCompanyId
());
policyFollow
.
setReconciliationCompany
(
apiProductPlanMainInfoDto
.
getReconciliationCompanyName
());
policyFollow
.
setProductCate
(
apiProductPlanMainInfoDto
.
getInsuranceTypeName
());
policyFollow
.
setCategoryCode
(
apiProductPlanMainInfoDto
.
getInsuranceTypeCode
());
policyFollow
.
setInsuranceCategoryBizId
(
apiProductPlanMainInfoDto
.
getInsuranceTypeId
());
policyFollow
.
setProductName
(
apiProductPlanMainInfoDto
.
getProductLaunchMainName
());
policyFollow
.
setPrepaidTerm
(
apiProductPlanMainInfoDto
.
getIsPrepay
());
policyFollow
.
setRetroactiveDate
(
apiProductPlanMainInfoDto
.
getRetroactiveDate
());
// // 先删除旧的附加险
// policyAdditionalService.remove(new QueryWrapper<PolicyAdditional>().eq("policy_biz_id", policyBizId));
// // 保单附加险列表
// List<ApiProductPlanAdditionalInfoDto> apiProductPlanAdditionalInfoDtoList = policyUpdateRequest.getApiProductPlanAdditionalInfoDtoList();
// if (CollUtil.isNotEmpty(apiProductPlanAdditionalInfoDtoList)) {
// // 转换为实体类
// List<PolicyAdditional> policyAdditionalList = apiProductPlanAdditionalInfoDtoList.stream().map(additionalDto -> {
// PolicyAdditional policyAdditional = new PolicyAdditional();
// BeanUtils.copyProperties(additionalDto, policyAdditional);
//
// policyAdditional.setPolicyBizId(policyBizId);
// policyAdditional.setPolicyNo(policyNo);
// policyAdditional.setUpdateTime(now);
// policyAdditional.setCreateTime(now);
// return policyAdditional;
// }).collect(Collectors.toList());
// // 批量插入
// policyAdditionalService.saveBatch(policyAdditionalList);
// }
return
true
;
}
...
...
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