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
ea3a0adc
Commit
ea3a0adc
authored
Jan 14, 2026
by
zhangxingmin
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/test' into test
parents
e7f5d876
d6bd43b9
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
112 additions
and
75 deletions
+112
-75
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiPolicyFollowController.java
+2
-2
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiAppointmentServiceImpl.java
+3
-3
yd-csf-service/src/main/java/com/yd/csf/service/dto/PolicyFollowQueryRequest.java
+12
-11
yd-csf-service/src/main/java/com/yd/csf/service/enums/PolicyFollowStatusEnum.java
+27
-7
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyFollowServiceImpl.java
+0
-0
yd-csf-service/src/main/java/com/yd/csf/service/vo/PolicyFollowVO.java
+68
-52
No files found.
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiPolicyFollowController.java
View file @
ea3a0adc
...
@@ -561,7 +561,7 @@ public class ApiPolicyFollowController {
...
@@ -561,7 +561,7 @@ public class ApiPolicyFollowController {
*/
*/
@PostMapping
(
"/list/page/vo"
)
@PostMapping
(
"/list/page/vo"
)
@Operation
(
summary
=
"分页获取新单跟进列表"
)
@Operation
(
summary
=
"分页获取新单跟进列表"
)
public
Result
<
Page
<
PolicyFollow
Detail
VO
>>
listPolicyFollowByPage
(
@RequestBody
PolicyFollowQueryRequest
policyFollowQueryRequest
,
public
Result
<
Page
<
PolicyFollowVO
>>
listPolicyFollowByPage
(
@RequestBody
PolicyFollowQueryRequest
policyFollowQueryRequest
,
HttpServletRequest
request
)
{
HttpServletRequest
request
)
{
long
current
=
policyFollowQueryRequest
.
getPageNo
();
long
current
=
policyFollowQueryRequest
.
getPageNo
();
long
size
=
policyFollowQueryRequest
.
getPageSize
();
long
size
=
policyFollowQueryRequest
.
getPageSize
();
...
@@ -569,7 +569,7 @@ public class ApiPolicyFollowController {
...
@@ -569,7 +569,7 @@ public class ApiPolicyFollowController {
// 查询数据库
// 查询数据库
Page
<
PolicyFollow
>
policyFollowPage
=
policyFollowService
.
page
(
new
Page
<>(
current
,
size
),
Page
<
PolicyFollow
>
policyFollowPage
=
policyFollowService
.
page
(
new
Page
<>(
current
,
size
),
policyFollowService
.
getQueryWrapper
(
policyFollowQueryRequest
));
policyFollowService
.
getQueryWrapper
(
policyFollowQueryRequest
));
return
Result
.
success
(
policyFollowService
.
getPolicyFollow
DetailVOList
(
policyFollowPage
));
return
Result
.
success
(
policyFollowService
.
getPolicyFollow
VOPage
(
policyFollowPage
));
}
}
/**
/**
...
...
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiAppointmentServiceImpl.java
View file @
ea3a0adc
...
@@ -622,9 +622,9 @@ public class ApiAppointmentServiceImpl implements ApiAppointmentService {
...
@@ -622,9 +622,9 @@ public class ApiAppointmentServiceImpl implements ApiAppointmentService {
//客户名称
//客户名称
follow
.
setCustomerName
(
customer
.
getNamePyEn
());
follow
.
setCustomerName
(
customer
.
getNamePyEn
());
}
}
//待
跟进
//待
签单
follow
.
setStatus
(
PolicyFollowStatusEnum
.
FOLLOW_UP
.
getItemValue
());
follow
.
setStatus
(
PolicyFollowStatusEnum
.
PENDING_SIGN
.
getItemValue
());
follow
.
setNextStatusList
(
policyFollowService
.
getNextStatus
(
PolicyFollowStatusEnum
.
FOLLOW_UP
));
follow
.
setNextStatusList
(
policyFollowService
.
getNextStatus
(
PolicyFollowStatusEnum
.
PENDING_SIGN
));
//TODO 保险公司业务id
//TODO 保险公司业务id
// follow.setInsurerBizId();
// follow.setInsurerBizId();
//TODO 期交保费
//TODO 期交保费
...
...
yd-csf-service/src/main/java/com/yd/csf/service/dto/PolicyFollowQueryRequest.java
View file @
ea3a0adc
...
@@ -7,7 +7,7 @@ import lombok.Data;
...
@@ -7,7 +7,7 @@ import lombok.Data;
import
lombok.EqualsAndHashCode
;
import
lombok.EqualsAndHashCode
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.
time.Local
Date
;
import
java.
util.
Date
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -24,9 +24,9 @@ public class PolicyFollowQueryRequest extends PageDto implements Serializable {
...
@@ -24,9 +24,9 @@ public class PolicyFollowQueryRequest extends PageDto implements Serializable {
private
String
policyNo
;
private
String
policyNo
;
/**
/**
* 新单状态
* 新单
跟进
状态
*/
*/
@Schema
(
description
=
"新单状态
'CHECKING'-'审核中','UNDERWRITING'-'承保中','FINISHED'-'已完成','DECLINED'-'已拒绝','CANCELLED'-'已取消'
, 字典值: csf_policy_follow_status"
)
@Schema
(
description
=
"新单状态, 字典值: csf_policy_follow_status"
)
private
String
status
;
private
String
status
;
/**
/**
...
@@ -40,33 +40,33 @@ public class PolicyFollowQueryRequest extends PageDto implements Serializable {
...
@@ -40,33 +40,33 @@ public class PolicyFollowQueryRequest extends PageDto implements Serializable {
*/
*/
@Schema
(
description
=
"签单日期开始 格式: yyyy-MM-dd"
,
example
=
"2023-01-01"
,
format
=
"yyyy-MM-dd"
)
@Schema
(
description
=
"签单日期开始 格式: yyyy-MM-dd"
,
example
=
"2023-01-01"
,
format
=
"yyyy-MM-dd"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Local
Date
signDateStart
;
private
Date
signDateStart
;
/**
/**
* 签单日结束
* 签单日结束
*/
*/
@Schema
(
description
=
"签单日期结束 格式: yyyy-MM-dd"
,
example
=
"2023-01-01"
,
format
=
"yyyy-MM-dd"
)
@Schema
(
description
=
"签单日期结束 格式: yyyy-MM-dd"
,
example
=
"2023-01-01"
,
format
=
"yyyy-MM-dd"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Local
Date
signDateEnd
;
private
Date
signDateEnd
;
/**
/**
* 最晚缴费日期
* 最晚缴费日期
*/
*/
@Schema
(
description
=
"最晚缴费日期 格式: yyyy-MM-dd"
,
example
=
"2023-01-01"
,
format
=
"yyyy-MM-dd"
)
@Schema
(
description
=
"最晚缴费日期 格式: yyyy-MM-dd"
,
example
=
"2023-01-01"
,
format
=
"yyyy-MM-dd"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Local
Date
latestPaymentDate
;
private
Date
latestPaymentDate
;
/**
/**
* 投保人业务id列表
* 投保人业务id列表
*/
*/
@Schema
(
description
=
"投保人业务id列表"
)
//
@Schema(description = "投保人业务id列表")
private
List
<
String
>
policyholderBizIdList
;
//
private List<String> policyholderBizIdList;
/**
/**
* 受保人业务id列表
* 受保人业务id列表
*/
*/
@Schema
(
description
=
"受保人业务id列表"
)
//
@Schema(description = "受保人业务id列表")
private
List
<
String
>
policyInsurantBizIdList
;
//
private List<String> policyInsurantBizIdList;
/**
/**
* 保险公司业务id列表
* 保险公司业务id列表
...
@@ -84,7 +84,7 @@ public class PolicyFollowQueryRequest extends PageDto implements Serializable {
...
@@ -84,7 +84,7 @@ public class PolicyFollowQueryRequest extends PageDto implements Serializable {
* 缴费年期
* 缴费年期
*/
*/
@Schema
(
description
=
"缴费年期"
)
@Schema
(
description
=
"缴费年期"
)
private
String
paymentTerm
;
private
String
issueNumber
;
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
}
}
\ No newline at end of file
yd-csf-service/src/main/java/com/yd/csf/service/enums/PolicyFollowStatusEnum.java
View file @
ea3a0adc
...
@@ -3,16 +3,22 @@ package com.yd.csf.service.enums;
...
@@ -3,16 +3,22 @@ package com.yd.csf.service.enums;
import
org.apache.commons.lang3.ObjectUtils
;
import
org.apache.commons.lang3.ObjectUtils
;
/**
/**
* 新单跟进状态枚举
'CHECKING'-'审核中','UNDERWRITING'-'承保中','FINISHED'-'已完成','DECLINED'-'已拒绝','CANCELLED'-'已取消'
* 新单跟进状态枚举
*/
*/
public
enum
PolicyFollowStatusEnum
{
public
enum
PolicyFollowStatusEnum
{
FOLLOW_UP
(
"待跟进"
,
"FOLLOW_UP"
),
PENDING_SIGN
(
"待签单"
,
"PENDING_SIGN"
),
CHECKING
(
"文件检查中"
,
"CHECKING"
),
SIGNED
(
"已签单"
,
"SIGNED"
),
UNDERWRITING
(
"承保中"
,
"UNDERWRITING"
),
WAITING_PAYMENT
(
"等待汇款"
,
"WAITING_PAYMENT"
),
FINISHED
(
"已完成"
,
"FINISHED"
),
PREMIUM_RECONCILING
(
"首期保费对账中"
,
"PREMIUM_RECONCILING"
),
DECLINED
(
"已拒绝"
,
"DECLINED"
),
PREMIUM_RECONCILED_UNDERWRITING
(
"保费对账成功,核保中"
,
"PREMIUM_RECONCILED_UNDERWRITING"
),
CANCELLED
(
"已取消"
,
"CANCELLED"
),
EFFECTIVE
(
"生效"
,
"EFFECTIVE"
),
CANCELLED
(
"取消投保"
,
"CANCELLED"
),
DECLINED
(
"拒保"
,
"DECLINED"
),
DELAYED_UNDERWRITING
(
"延缓承保"
,
"DELAYED_UNDERWRITING"
),
LAPSED
(
"失效"
,
"LAPSED"
),
CLOSED
(
"关闭"
,
"CLOSED"
),
;
;
//字典项标签(名称)
//字典项标签(名称)
private
String
itemLabel
;
private
String
itemLabel
;
//字典项值
//字典项值
...
@@ -68,4 +74,18 @@ public enum PolicyFollowStatusEnum {
...
@@ -68,4 +74,18 @@ public enum PolicyFollowStatusEnum {
return
null
;
return
null
;
}
}
/**
* 状态映射为中文
*
* @param status
* @return
*/
public
static
String
mapStatusToLabel
(
String
status
)
{
PolicyFollowStatusEnum
policyFollowStatusEnum
=
getEnumByValue
(
status
);
if
(
policyFollowStatusEnum
==
null
)
{
return
""
;
}
return
policyFollowStatusEnum
.
getItemLabel
();
}
}
}
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/PolicyFollowServiceImpl.java
View file @
ea3a0adc
This diff is collapsed.
Click to expand it.
yd-csf-service/src/main/java/com/yd/csf/service/vo/PolicyFollowVO.java
View file @
ea3a0adc
package
com
.
yd
.
csf
.
service
.
vo
;
package
com
.
yd
.
csf
.
service
.
vo
;
import
com.
google.common.reflect.TypeToken
;
import
com.
fasterxml.jackson.annotation.JsonFormat
;
import
com.yd.csf.service.dto.PolicyFollowUpdateDto
;
import
com.yd.csf.service.dto.PolicyFollowUpdateDto
;
import
com.yd.csf.service.dto.PolicyMailing
;
import
com.yd.csf.service.dto.VerifyPolicyInfo
;
import
com.yd.csf.service.enums.PolicyFollowStatusEnum
;
import
com.yd.csf.service.enums.PolicyFollowStatusEnum
;
import
com.yd.csf.service.model.PolicyBroker
;
import
com.yd.csf.service.model.PolicyFollow
;
import
com.yd.csf.service.model.PolicyFollow
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -13,8 +10,6 @@ import org.springframework.beans.BeanUtils;
...
@@ -13,8 +10,6 @@ import org.springframework.beans.BeanUtils;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.util.*
;
import
java.util.*
;
import
com.yd.csf.service.utils.GSONUtil
;
import
com.yd.csf.service.dto.PolicySigner
;
/**
/**
* 新单跟进视图
* 新单跟进视图
...
@@ -24,6 +19,9 @@ public class PolicyFollowVO implements Serializable {
...
@@ -24,6 +19,9 @@ public class PolicyFollowVO implements Serializable {
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
@Schema
(
description
=
"policy follow id"
)
private
Long
id
;
/**
/**
* 新单跟进唯一业务ID
* 新单跟进唯一业务ID
*/
*/
...
@@ -31,40 +29,84 @@ public class PolicyFollowVO implements Serializable {
...
@@ -31,40 +29,84 @@ public class PolicyFollowVO implements Serializable {
private
String
policyBizId
;
private
String
policyBizId
;
/**
/**
* 下一步跟进状态列表
* 保单号
*/
@Schema
(
description
=
"保单号"
)
private
String
policyNo
;
/**
* 新单跟进状态
*/
@Schema
(
description
=
"新单跟进状态"
)
private
String
status
;
/**
* 预约信息主表唯一业务ID
*/
@Schema
(
description
=
"预约信息主表唯一业务ID"
)
private
String
appointmentBizId
;
/**
* 预约编号
*/
@Schema
(
description
=
"预约编号"
)
private
String
appointmentNo
;
/**
* 客户业务id
*/
@Schema
(
description
=
"客户业务id"
)
private
String
customerBizId
;
/**
* 签单日
*/
@Schema
(
description
=
"签单日"
,
format
=
"yyyy-MM-dd"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
signDate
;
/**
* 最晚缴费日
*/
*/
@Schema
(
description
=
"下一步跟进状态列表, 下拉框"
)
@Schema
(
description
=
"最晚缴费日"
,
format
=
"yyyy-MM-dd"
)
private
Object
nextStatusList
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
latestPaymentDate
;
/**
/**
*
新单跟进Dto
*
保單持有人
*/
*/
@Schema
(
description
=
"
新单跟进Dto
"
)
@Schema
(
description
=
"
投保人
"
)
private
PolicyFollowUpdateDto
policyFollowUpdateDto
;
private
String
policyHolder
;
/**
/**
*
转介
人
*
受保
人
*/
*/
@Schema
(
description
=
"
转介
人"
)
@Schema
(
description
=
"
受保
人"
)
private
List
<
PolicyBroker
>
brokerList
;
private
String
insured
;
/**
/**
*
核保信息
*
产品计划唯一业务ID
*/
*/
@Schema
(
description
=
"
核保信息
"
)
@Schema
(
description
=
"
产品计划唯一业务ID
"
)
private
VerifyPolicyInfo
verifyPolicyInfo
;
private
String
productLaunchBizId
;
/**
/**
*
保单邮寄
*
产品计划
*/
*/
@Schema
(
description
=
"
保单邮寄
"
)
@Schema
(
description
=
"
产品计划
"
)
private
PolicyMailing
policyMailing
;
private
String
productName
;
/**
/**
* 保
单信息
* 保
险公司
*/
*/
// private Policy policy;
@Schema
(
description
=
"保险公司"
)
private
String
insuranceCompany
;
/**
* 保险公司业务id
*/
@Schema
(
description
=
"保险公司业务id"
)
private
String
insuranceCompanyBizId
;
/**
/**
* 对象转封装类
* 对象转封装类
...
@@ -77,35 +119,9 @@ public class PolicyFollowVO implements Serializable {
...
@@ -77,35 +119,9 @@ public class PolicyFollowVO implements Serializable {
return
null
;
return
null
;
}
}
PolicyFollowVO
policyFollowVO
=
new
PolicyFollowVO
();
PolicyFollowVO
policyFollowVO
=
new
PolicyFollowVO
();
policyFollowVO
.
setPolicyBizId
(
policyFollow
.
getPolicyBizId
());
BeanUtils
.
copyProperties
(
policyFollow
,
policyFollowVO
);
// 状态映射为中文
// 转换PolicyFollowUpdateDto
policyFollowVO
.
setStatus
(
PolicyFollowStatusEnum
.
mapStatusToLabel
(
policyFollow
.
getStatus
()));
PolicyFollowUpdateDto
policyFollowUpdateDto
=
new
PolicyFollowUpdateDto
();
BeanUtils
.
copyProperties
(
policyFollow
,
policyFollowUpdateDto
);
policyFollowVO
.
setPolicyFollowUpdateDto
(
policyFollowUpdateDto
);
// 处理 nextStatusList 字段
Object
nextStatusList
=
policyFollow
.
getNextStatusList
();
if
(
nextStatusList
!=
null
&&
!
nextStatusList
.
toString
().
isEmpty
())
{
String
[]
statusArr
=
nextStatusList
.
toString
().
split
(
","
);
List
<
Map
<
String
,
String
>>
statusMapList
=
new
ArrayList
<>();
for
(
String
status
:
statusArr
)
{
Map
<
String
,
String
>
map
=
new
HashMap
<>();
map
.
put
(
"itemLabel"
,
PolicyFollowStatusEnum
.
getEnumByValue
(
status
).
getItemLabel
());
map
.
put
(
"itemValue"
,
status
);
statusMapList
.
add
(
map
);
}
policyFollowVO
.
setNextStatusList
(
statusMapList
);
}
VerifyPolicyInfo
verifyPolicyInfo
=
new
VerifyPolicyInfo
();
BeanUtils
.
copyProperties
(
policyFollow
,
verifyPolicyInfo
);
policyFollowVO
.
setVerifyPolicyInfo
(
verifyPolicyInfo
);
PolicyMailing
policyMailing
=
new
PolicyMailing
();
BeanUtils
.
copyProperties
(
policyFollow
,
policyMailing
);
policyFollowVO
.
setPolicyMailing
(
policyMailing
);
return
policyFollowVO
;
return
policyFollowVO
;
}
}
...
...
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