Commit 5892c8897fa86e41d670b1ec93b196f076899608

Authored by puhui999
1 parent 0a97ff03

CRM: 流程状态转换封装

yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/contract/CrmContractServiceImpl.java
@@ -11,7 +11,6 @@ import cn.iocoder.yudao.framework.common.util.object.ObjectUtils; @@ -11,7 +11,6 @@ import cn.iocoder.yudao.framework.common.util.object.ObjectUtils;
11 import cn.iocoder.yudao.module.bpm.api.listener.dto.BpmResultListenerRespDTO; 11 import cn.iocoder.yudao.module.bpm.api.listener.dto.BpmResultListenerRespDTO;
12 import cn.iocoder.yudao.module.bpm.api.task.BpmProcessInstanceApi; 12 import cn.iocoder.yudao.module.bpm.api.task.BpmProcessInstanceApi;
13 import cn.iocoder.yudao.module.bpm.api.task.dto.BpmProcessInstanceCreateReqDTO; 13 import cn.iocoder.yudao.module.bpm.api.task.dto.BpmProcessInstanceCreateReqDTO;
14 -import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum;  
15 import cn.iocoder.yudao.module.crm.controller.admin.contract.vo.CrmContractPageReqVO; 14 import cn.iocoder.yudao.module.crm.controller.admin.contract.vo.CrmContractPageReqVO;
16 import cn.iocoder.yudao.module.crm.controller.admin.contract.vo.CrmContractSaveReqVO; 15 import cn.iocoder.yudao.module.crm.controller.admin.contract.vo.CrmContractSaveReqVO;
17 import cn.iocoder.yudao.module.crm.controller.admin.contract.vo.CrmContractTransferReqVO; 16 import cn.iocoder.yudao.module.crm.controller.admin.contract.vo.CrmContractTransferReqVO;
@@ -48,6 +47,8 @@ import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionU @@ -48,6 +47,8 @@ import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionU
48 import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.*; 47 import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.*;
49 import static cn.iocoder.yudao.module.crm.enums.ErrorCodeConstants.*; 48 import static cn.iocoder.yudao.module.crm.enums.ErrorCodeConstants.*;
50 import static cn.iocoder.yudao.module.crm.enums.LogRecordConstants.*; 49 import static cn.iocoder.yudao.module.crm.enums.LogRecordConstants.*;
  50 +import static cn.iocoder.yudao.module.crm.util.CrmAuditStatusUtils.convertAuditStatus;
  51 +import static cn.iocoder.yudao.module.crm.util.CrmAuditStatusUtils.isEndResult;
51 52
52 /** 53 /**
53 * CRM 合同 Service 实现类 54 * CRM 合同 Service 实现类
@@ -296,32 +297,12 @@ public class CrmContractServiceImpl implements CrmContractService { @@ -296,32 +297,12 @@ public class CrmContractServiceImpl implements CrmContractService {
296 if (!isEndResult(event.getResult())) { 297 if (!isEndResult(event.getResult())) {
297 return; 298 return;
298 } 299 }
299 - // 状态转换  
300 - if (ObjUtil.equal(event.getResult(), BpmProcessInstanceResultEnum.APPROVE.getResult())) {  
301 - event.setResult(CrmAuditStatusEnum.APPROVE.getStatus());  
302 - }  
303 - if (ObjUtil.equal(event.getResult(), BpmProcessInstanceResultEnum.REJECT.getResult())) {  
304 - event.setResult(CrmAuditStatusEnum.REJECT.getStatus());  
305 - }  
306 - if (ObjUtil.equal(event.getResult(), BpmProcessInstanceResultEnum.CANCEL.getResult())) {  
307 - event.setResult(CrmAuditStatusEnum.CANCEL.getStatus());  
308 - } 300 + convertAuditStatus(event);
309 // 更新合同状态 301 // 更新合同状态
310 contractMapper.updateById(new CrmContractDO().setId(Long.parseLong(event.getBusinessKey())) 302 contractMapper.updateById(new CrmContractDO().setId(Long.parseLong(event.getBusinessKey()))
311 .setAuditStatus(event.getResult())); 303 .setAuditStatus(event.getResult()));
312 } 304 }
313 305
314 - /**  
315 - * 判断该结果是否处于 End 最终结果  
316 - *  
317 - * @param result 结果  
318 - * @return 是否  
319 - */  
320 - public static boolean isEndResult(Integer result) {  
321 - return ObjectUtils.equalsAny(result, BpmProcessInstanceResultEnum.APPROVE.getResult(),  
322 - BpmProcessInstanceResultEnum.REJECT.getResult(), BpmProcessInstanceResultEnum.CANCEL.getResult());  
323 - }  
324 -  
325 //======================= 查询相关 ======================= 306 //======================= 查询相关 =======================
326 307
327 @Override 308 @Override
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivableServiceImpl.java
@@ -43,6 +43,7 @@ import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionU @@ -43,6 +43,7 @@ import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionU
43 import static cn.iocoder.yudao.module.crm.enums.ErrorCodeConstants.*; 43 import static cn.iocoder.yudao.module.crm.enums.ErrorCodeConstants.*;
44 import static cn.iocoder.yudao.module.crm.enums.LogRecordConstants.*; 44 import static cn.iocoder.yudao.module.crm.enums.LogRecordConstants.*;
45 import static cn.iocoder.yudao.module.crm.util.CrmAuditStatusUtils.convertAuditStatus; 45 import static cn.iocoder.yudao.module.crm.util.CrmAuditStatusUtils.convertAuditStatus;
  46 +import static cn.iocoder.yudao.module.crm.util.CrmAuditStatusUtils.isEndResult;
46 47
47 /** 48 /**
48 * CRM 回款 Service 实现类 49 * CRM 回款 Service 实现类
@@ -142,6 +143,10 @@ public class CrmReceivableServiceImpl implements CrmReceivableService { @@ -142,6 +143,10 @@ public class CrmReceivableServiceImpl implements CrmReceivableService {
142 143
143 @Override 144 @Override
144 public void updateReceivableAuditStatus(BpmResultListenerRespDTO event) { 145 public void updateReceivableAuditStatus(BpmResultListenerRespDTO event) {
  146 + // 判断下状态是否符合预期
  147 + if (!isEndResult(event.getResult())) {
  148 + return;
  149 + }
145 convertAuditStatus(event); 150 convertAuditStatus(event);
146 // 更新回款审批状态 151 // 更新回款审批状态
147 receivableMapper.updateById(new CrmReceivableDO().setId(Long.parseLong(event.getBusinessKey())) 152 receivableMapper.updateById(new CrmReceivableDO().setId(Long.parseLong(event.getBusinessKey()))
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/util/CrmAuditStatusUtils.java
@@ -13,11 +13,12 @@ import cn.iocoder.yudao.module.crm.enums.common.CrmAuditStatusEnum; @@ -13,11 +13,12 @@ import cn.iocoder.yudao.module.crm.enums.common.CrmAuditStatusEnum;
13 */ 13 */
14 public class CrmAuditStatusUtils { 14 public class CrmAuditStatusUtils {
15 15
  16 + /**
  17 + * 流程审批状态转换
  18 + *
  19 + * @param event 业务流程实例的结果
  20 + */
16 public static void convertAuditStatus(BpmResultListenerRespDTO event) { 21 public static void convertAuditStatus(BpmResultListenerRespDTO event) {
17 - // 判断下状态是否符合预期  
18 - if (!isEndResult(event.getResult())) {  
19 - return;  
20 - }  
21 // 状态转换 22 // 状态转换
22 if (ObjUtil.equal(event.getResult(), BpmProcessInstanceResultEnum.APPROVE.getResult())) { 23 if (ObjUtil.equal(event.getResult(), BpmProcessInstanceResultEnum.APPROVE.getResult())) {
23 event.setResult(CrmAuditStatusEnum.APPROVE.getStatus()); 24 event.setResult(CrmAuditStatusEnum.APPROVE.getStatus());