diff --git a/pom.xml b/pom.xml index dab3fc0..17c01ce 100644 --- a/pom.xml +++ b/pom.xml @@ -259,6 +259,12 @@ chenbowen + + qsj + + qsj + + diff --git a/zt-module-bpm/zt-module-bpm-server/pom.xml b/zt-module-bpm/zt-module-bpm-server/pom.xml index 9642724..73fa3b7 100644 --- a/zt-module-bpm/zt-module-bpm-server/pom.xml +++ b/zt-module-bpm/zt-module-bpm-server/pom.xml @@ -43,6 +43,11 @@ zt-module-product-api ${business.mes.version} + + com.zt.plat + zt-module-product-api + ${business.mes.version} + com.zt.plat zt-module-qms-api diff --git a/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/mes/plan/MesCompanyPlanStatusListener.java b/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/mes/plan/MesCompanyPlanStatusListener.java new file mode 100644 index 0000000..3ecfa57 --- /dev/null +++ b/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/mes/plan/MesCompanyPlanStatusListener.java @@ -0,0 +1,33 @@ +package com.zt.plat.module.bpm.service.mes.plan; + +import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEvent; +import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEventListener; +import com.zt.plat.module.product.api.dto.MesApprovalCallbackVO; +import com.zt.plat.module.product.api.plan.MesCompanyPlanApi; +import com.zt.plat.module.product.enums.plan.CompanyPlanTypeEnums; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +@Component +public class MesCompanyPlanStatusListener extends BpmProcessInstanceStatusEventListener { + + @Resource + private MesCompanyPlanApi mesCompanyPlanApi; + + @Override + protected List getProcessDefinitionKey() { + return Arrays.stream(CompanyPlanTypeEnums.values()).map(CompanyPlanTypeEnums::getProcessKey).toList(); + } + + @Override + protected void onEvent(BpmProcessInstanceStatusEvent event) { + mesCompanyPlanApi.updateApprovalStatus(new MesApprovalCallbackVO() + .setInstanceId(event.getId()) + .setBusinessKey(event.getBusinessKey()) + .setStatus(event.getStatus()) + ); + } +} diff --git a/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/mes/plan/MesFactoryPlanStatusListener.java b/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/mes/plan/MesFactoryPlanStatusListener.java new file mode 100644 index 0000000..c5174bd --- /dev/null +++ b/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/mes/plan/MesFactoryPlanStatusListener.java @@ -0,0 +1,33 @@ +package com.zt.plat.module.bpm.service.mes.plan; + +import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEvent; +import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEventListener; +import com.zt.plat.module.product.api.dto.MesApprovalCallbackVO; +import com.zt.plat.module.product.api.plan.MesFactoryPlanApi; +import com.zt.plat.module.product.enums.plan.FactoryPlanTypeEnums; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +@Component +public class MesFactoryPlanStatusListener extends BpmProcessInstanceStatusEventListener { + + @Resource + private MesFactoryPlanApi mesFactoryPlanApi; + + @Override + protected List getProcessDefinitionKey() { + return Arrays.stream(FactoryPlanTypeEnums.values()).map(FactoryPlanTypeEnums::getProcessKey).toList(); + } + + @Override + protected void onEvent(BpmProcessInstanceStatusEvent event) { + mesFactoryPlanApi.updateApprovalStatus(new MesApprovalCallbackVO() + .setInstanceId(event.getId()) + .setBusinessKey(event.getBusinessKey()) + .setStatus(event.getStatus()) + ); + } +} diff --git a/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/process/route/listener/ProcessRouteApprovalBpmListener.java b/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/process/route/listener/ProcessRouteApprovalBpmListener.java new file mode 100644 index 0000000..2bdbe8d --- /dev/null +++ b/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/process/route/listener/ProcessRouteApprovalBpmListener.java @@ -0,0 +1,42 @@ +package com.zt.plat.module.bpm.service.process.route.listener; + +import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEvent; +import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEventListener; +import com.zt.plat.module.bpm.enums.task.BpmProcessInstanceStatusEnum; +import com.zt.plat.module.product.api.MesProcessRoutApi; +import com.zt.plat.module.product.enums.process.ProcessConstant; +import com.zt.plat.module.product.enums.process.ProcessRouteApprovalStatusEnums; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.Objects; + +/** + * 工艺流程审批状态监听器 + */ +@Component +public class ProcessRouteApprovalBpmListener extends BpmProcessInstanceStatusEventListener { + + @Resource + private MesProcessRoutApi mesProcessRoutApi; + + @Override + protected List getProcessDefinitionKey() { + return List.of(ProcessConstant.APPROVAL_PROCESS_KEY); + } + + @Override + protected void onEvent(BpmProcessInstanceStatusEvent event) { + Integer bpmStatus = event.getStatus(); + String status = null; + if (Objects.equals(BpmProcessInstanceStatusEnum.APPROVE.getStatus(), bpmStatus)) { + status = ProcessRouteApprovalStatusEnums.Approved.getCode(); + } else if (Objects.equals(BpmProcessInstanceStatusEnum.REJECT.getStatus(), bpmStatus)) { + status = ProcessRouteApprovalStatusEnums.Failed.getCode(); + } else if (Objects.equals(BpmProcessInstanceStatusEnum.CANCEL.getStatus(), bpmStatus)) { + status = ProcessRouteApprovalStatusEnums.Draft.getCode(); + } + mesProcessRoutApi.updateProcessRouteApprovalStatus(Long.parseLong(event.getBusinessKey()), status); + } +} diff --git a/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/supply/capital/listener/BpmAmountRequestApprovalStatusListener.java b/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/supply/capital/listener/BpmAmountRequestApprovalStatusListener.java new file mode 100644 index 0000000..e9f1383 --- /dev/null +++ b/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/supply/capital/listener/BpmAmountRequestApprovalStatusListener.java @@ -0,0 +1,42 @@ +package com.zt.plat.module.bpm.service.supply.capital.listener; + +import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEvent; +import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEventListener; +import com.zt.plat.module.bpm.enums.task.BpmProcessInstanceStatusEnum; +import com.zt.plat.module.capital.api.splyAmountRequest.AmountRequestApi; +import com.zt.plat.module.capital.enums.AmountRequestApiStatusEnum; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * sply_amount_request_approval_process - 请款单的状态的监听器实现类 + * + * @author qianshijiang + */ +@Component +public class BpmAmountRequestApprovalStatusListener extends BpmProcessInstanceStatusEventListener { + + @Resource + private AmountRequestApi amountRequestApi; + + @Override + protected List getProcessDefinitionKey() { + return List.of(amountRequestApi.PROCESS_KEY); + } + + @Override + protected void onEvent(BpmProcessInstanceStatusEvent event) { + // 将流程中的状态转换为业务的状态 + Integer status = event.getStatus(); + String approvalStatus = null; + if (BpmProcessInstanceStatusEnum.APPROVE.getStatus() == status) { + approvalStatus = AmountRequestApiStatusEnum.ACAS_PASS.getCode(); + } else if (BpmProcessInstanceStatusEnum.REJECT.getStatus() == status) { + approvalStatus = AmountRequestApiStatusEnum.ACAS_REJECT.getCode(); + } + amountRequestApi.updateAmountRequestStatus(Long.parseLong(event.getBusinessKey()),approvalStatus); + } + +} diff --git a/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/supply/capital/listener/BpmCreditLetterApprovalStatusListener.java b/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/supply/capital/listener/BpmCreditLetterApprovalStatusListener.java index 83fed4c..099b709 100644 --- a/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/supply/capital/listener/BpmCreditLetterApprovalStatusListener.java +++ b/zt-module-bpm/zt-module-bpm-server/src/main/java/com/zt/plat/module/bpm/service/supply/capital/listener/BpmCreditLetterApprovalStatusListener.java @@ -3,7 +3,7 @@ package com.zt.plat.module.bpm.service.supply.capital.listener; import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEvent; import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEventListener; import com.zt.plat.module.bpm.enums.task.BpmProcessInstanceStatusEnum; -import com.zt.plat.module.capital.api.AmountCreditApplyApi; +import com.zt.plat.module.capital.api.splyAmtCrdtAppl.AmountCreditApplyApi; import com.zt.plat.module.capital.enums.AmountCreditApplyApiStatusEnum; import jakarta.annotation.Resource; import org.springframework.stereotype.Component;