Browse Source

feat(lead): 票11 转商机契约加 customerId(可空占位,待A4收紧必填)

票11 步骤1-2 契约变更(走法甲:customerId 暂可空,不倒退现有自由文本转商机):
- CreateOpportunityCmd 新增 customerId(Long,暂可空);intendedCustomer 降为
  客户名快照,与 customerId 并存(引用+快照,同票13走法)
- ConvertOpportunityParam 新增 customerId(前端下拉选客户得到;A4 下拉未就绪
  前前端传 null)
- LeadServiceImpl 组装 cmd 时透传 param.getCustomerId()

A4 客户下拉就绪后把 customerId 收紧为必填(终态契约,一处校验)。
mvn -pl crm-lead -am test 116 全绿。
master
luoweijian 2 weeks ago
parent
commit
0e4449d75b
  1. 5
      crm-lead/src/main/java/com/crm/lead/domain/param/ConvertOpportunityParam.java
  2. 6
      crm-lead/src/main/java/com/crm/lead/port/outbound/CreateOpportunityCmd.java
  3. 3
      crm-lead/src/main/java/com/crm/lead/service/impl/LeadServiceImpl.java

5
crm-lead/src/main/java/com/crm/lead/domain/param/ConvertOpportunityParam.java

@ -21,9 +21,12 @@ public class ConvertOpportunityParam {
@Schema(description = "甲方(自由文本,可空)") @Schema(description = "甲方(自由文本,可空)")
private String partyA; private String partyA;
@Schema(description = "意向客户(自由文本,必填)") @Schema(description = "意向客户(自由文本,必填;票 11 降为名快照,与 customerId 并存)")
private String intendedCustomer; private String intendedCustomer;
@Schema(description = "意向客户 id(票 11;下拉选客户得到,引用 A4 客户模块。A4 下拉未就绪前可空)")
private Long customerId;
@Schema(description = "地区国标 code(必填)") @Schema(description = "地区国标 code(必填)")
private String regionCode; private String regionCode;

6
crm-lead/src/main/java/com/crm/lead/port/outbound/CreateOpportunityCmd.java

@ -8,7 +8,10 @@ package com.crm.lead.port.outbound;
* @param opportunityName 商机名称必填 * @param opportunityName 商机名称必填
* @param industryCode 行业字典 codeopportunity.industry必填 * @param industryCode 行业字典 codeopportunity.industry必填
* @param partyA 甲方自由文本可空 * @param partyA 甲方自由文本可空
* @param intendedCustomer 意向客户自由文本必填 * @param intendedCustomer 意向客户名快照自由文本 11 降为客户名快照 customerId 并存
* @param customerId 意向客户 id 11下拉选客户得到引用 A4 客户模块
* <b>暂可空</b>A4 客户下拉未就绪前前端传 null商机侧跳过建关联子表
* A4 就绪后收紧为必填 11 终态契约
* @param regionCode 地区国标 codevarchar 12必填 * @param regionCode 地区国标 codevarchar 12必填
* @param remark 备注自由文本可空 * @param remark 备注自由文本可空
* @param sourceLeadName 线索名称快照 * @param sourceLeadName 线索名称快照
@ -24,6 +27,7 @@ public record CreateOpportunityCmd(
String industryCode, String industryCode,
String partyA, String partyA,
String intendedCustomer, String intendedCustomer,
Long customerId,
String regionCode, String regionCode,
String remark, String remark,
String sourceLeadName, String sourceLeadName,

3
crm-lead/src/main/java/com/crm/lead/service/impl/LeadServiceImpl.java

@ -361,7 +361,8 @@ public class LeadServiceImpl extends BaseServiceImpl<LeadMapper, Lead>
try { try {
opportunityId = port.createOpportunity(new CreateOpportunityCmd( opportunityId = port.createOpportunity(new CreateOpportunityCmd(
lead.getId(), param.getOpportunityName(), param.getIndustryCode(), lead.getId(), param.getOpportunityName(), param.getIndustryCode(),
param.getPartyA(), param.getIntendedCustomer(), param.getRegionCode(), param.getPartyA(), param.getIntendedCustomer(), param.getCustomerId(),
param.getRegionCode(),
param.getRemark(), lead.getLeadName(), lead.getPhone(), param.getRemark(), lead.getLeadName(), lead.getPhone(),
lead.getProductCode(), lead.getOwnerUserId(), lead.getProductCode(), lead.getOwnerUserId(),
lead.getOwnerDeptIdSnapshot(), lead.getPoolId())); lead.getOwnerDeptIdSnapshot(), lead.getPoolId()));

Loading…
Cancel
Save