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 11 import cn.iocoder.yudao.module.bpm.api.listener.dto.BpmResultListenerRespDTO;
12 12 import cn.iocoder.yudao.module.bpm.api.task.BpmProcessInstanceApi;
13 13 import cn.iocoder.yudao.module.bpm.api.task.dto.BpmProcessInstanceCreateReqDTO;
14   -import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum;
15 14 import cn.iocoder.yudao.module.crm.controller.admin.contract.vo.CrmContractPageReqVO;
16 15 import cn.iocoder.yudao.module.crm.controller.admin.contract.vo.CrmContractSaveReqVO;
17 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 47 import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.*;
49 48 import static cn.iocoder.yudao.module.crm.enums.ErrorCodeConstants.*;
50 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 54 * CRM 合同 Service 实现类
... ... @@ -296,32 +297,12 @@ public class CrmContractServiceImpl implements CrmContractService {
296 297 if (!isEndResult(event.getResult())) {
297 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 302 contractMapper.updateById(new CrmContractDO().setId(Long.parseLong(event.getBusinessKey()))
311 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 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 43 import static cn.iocoder.yudao.module.crm.enums.ErrorCodeConstants.*;
44 44 import static cn.iocoder.yudao.module.crm.enums.LogRecordConstants.*;
45 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 49 * CRM 回款 Service 实现类
... ... @@ -142,6 +143,10 @@ public class CrmReceivableServiceImpl implements CrmReceivableService {
142 143  
143 144 @Override
144 145 public void updateReceivableAuditStatus(BpmResultListenerRespDTO event) {
  146 + // 判断下状态是否符合预期
  147 + if (!isEndResult(event.getResult())) {
  148 + return;
  149 + }
145 150 convertAuditStatus(event);
146 151 // 更新回款审批状态
147 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 13 */
14 14 public class CrmAuditStatusUtils {
15 15  
  16 + /**
  17 + * 流程审批状态转换
  18 + *
  19 + * @param event 业务流程实例的结果
  20 + */
16 21 public static void convertAuditStatus(BpmResultListenerRespDTO event) {
17   - // 判断下状态是否符合预期
18   - if (!isEndResult(event.getResult())) {
19   - return;
20   - }
21 22 // 状态转换
22 23 if (ObjUtil.equal(event.getResult(), BpmProcessInstanceResultEnum.APPROVE.getResult())) {
23 24 event.setResult(CrmAuditStatusEnum.APPROVE.getStatus());
... ...