feat(customer): 添加客户跟进步骤字段和审批逻辑
- 在CreditMpCustomer实体中新增第1步跟进相关字段,包括联系人、电话、录音、截图等信息 - 实现服务层中对第1至第4步审批状态的设置逻辑 - 添加审批时间、审批人等审计信息的存储功能 - 支持多步骤客户跟进流程的数据管理需求
This commit is contained in:
@@ -117,6 +117,33 @@ public class CreditMpCustomer implements Serializable {
|
|||||||
@Schema(description = "第1步提交时间")
|
@Schema(description = "第1步提交时间")
|
||||||
private String followStep1SubmittedAt;
|
private String followStep1SubmittedAt;
|
||||||
|
|
||||||
|
@Schema(description = "第1步联系人")
|
||||||
|
private String followStep1Contact;
|
||||||
|
|
||||||
|
@Schema(description = "第1步联系电话")
|
||||||
|
private String followStep1Phone;
|
||||||
|
|
||||||
|
@Schema(description = "第1步电话录音URL")
|
||||||
|
private String followStep1AudioUrl;
|
||||||
|
|
||||||
|
@Schema(description = "第1步电话录音文件名")
|
||||||
|
private String followStep1AudioName;
|
||||||
|
|
||||||
|
@Schema(description = "第1步短信截图JSON")
|
||||||
|
private String followStep1SmsShots;
|
||||||
|
|
||||||
|
@Schema(description = "第1步电话沟通截图JSON")
|
||||||
|
private String followStep1CallShots;
|
||||||
|
|
||||||
|
@Schema(description = "第1步沟通情况")
|
||||||
|
private String followStep1Remark;
|
||||||
|
|
||||||
|
@Schema(description = "第1步意向(无意向/有意向)")
|
||||||
|
private String followStep1Intention;
|
||||||
|
|
||||||
|
@Schema(description = "第1步沟通次数")
|
||||||
|
private Integer followStep1CommunicationCount;
|
||||||
|
|
||||||
@Schema(description = "第1步是否需要审核")
|
@Schema(description = "第1步是否需要审核")
|
||||||
private Integer followStep1NeedApproval;
|
private Integer followStep1NeedApproval;
|
||||||
|
|
||||||
|
|||||||
@@ -162,6 +162,26 @@ public class CreditMpCustomerServiceImpl extends ServiceImpl<CreditMpCustomerMap
|
|||||||
Integer currentUserId = baseController.getLoginUserId();
|
Integer currentUserId = baseController.getLoginUserId();
|
||||||
|
|
||||||
switch (dto.getStep()) {
|
switch (dto.getStep()) {
|
||||||
|
case 1:
|
||||||
|
customer.setFollowStep1Approved(dto.getApproved() ? 1 : 0);
|
||||||
|
customer.setFollowStep1ApprovedAt(currentTime);
|
||||||
|
customer.setFollowStep1ApprovedBy(currentUserId != null ? currentUserId.longValue() : null);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
customer.setFollowStep2Approved(dto.getApproved() ? 1 : 0);
|
||||||
|
customer.setFollowStep2ApprovedAt(currentTime);
|
||||||
|
customer.setFollowStep2ApprovedBy(currentUserId != null ? currentUserId.longValue() : null);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
customer.setFollowStep3Approved(dto.getApproved() ? 1 : 0);
|
||||||
|
customer.setFollowStep3ApprovedAt(currentTime);
|
||||||
|
customer.setFollowStep3ApprovedBy(currentUserId != null ? currentUserId.longValue() : null);
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
customer.setFollowStep4Approved(dto.getApproved() ? 1 : 0);
|
||||||
|
customer.setFollowStep4ApprovedAt(currentTime);
|
||||||
|
customer.setFollowStep4ApprovedBy(currentUserId != null ? currentUserId.longValue() : null);
|
||||||
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
customer.setFollowStep5Approved(dto.getApproved() ? 1 : 0);
|
customer.setFollowStep5Approved(dto.getApproved() ? 1 : 0);
|
||||||
customer.setFollowStep5ApprovedAt(currentTime);
|
customer.setFollowStep5ApprovedAt(currentTime);
|
||||||
|
|||||||
Reference in New Issue
Block a user