Compare commits
16 Commits
d331c9f441
...
1f80be555f
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1f80be555f | ||
|
|
4bf96508a1 | ||
|
|
3fa9312a56 | ||
|
|
b1edfba21c | ||
|
|
912c26ce37 | ||
|
|
72bca7a98d | ||
|
|
5a7de203df | ||
|
|
fd355f29b3 | ||
|
|
6d9b5b82bc | ||
|
|
82e5bb91a0 | ||
|
|
9453757324 | ||
|
|
3d54b2cf73 | ||
|
|
c44f75b2cc | ||
|
|
469558c87d | ||
|
|
61c04b7f36 | ||
|
|
0b50d2444c |
30
pom.xml
30
pom.xml
@@ -16,13 +16,13 @@
|
|||||||
<url>https://github.com/YunaiV/ruoyi-vue-pro</url>
|
<url>https://github.com/YunaiV/ruoyi-vue-pro</url>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<revision>3.0.41</revision>
|
<revision>3.0.42</revision>
|
||||||
<business.supply.version>3.0.41</business.supply.version>
|
<business.supply.version>3.0.42</business.supply.version>
|
||||||
<business.base.version>3.0.41</business.base.version>
|
<business.base.version>3.0.42</business.base.version>
|
||||||
<business.logistic.version>3.0.41</business.logistic.version>
|
<business.logistic.version>3.0.42</business.logistic.version>
|
||||||
<business.manage.version>3.0.41</business.manage.version>
|
<business.manage.version>3.0.42</business.manage.version>
|
||||||
<business.qms.version>3.0.42</business.qms.version>
|
<business.qms.version>3.0.42</business.qms.version>
|
||||||
<business.mes.version>3.0.41</business.mes.version>
|
<business.mes.version>3.0.42</business.mes.version>
|
||||||
<!-- Maven 相关 -->
|
<!-- Maven 相关 -->
|
||||||
<java.version>17</java.version>
|
<java.version>17</java.version>
|
||||||
<maven.compiler.source>${java.version}</maven.compiler.source>
|
<maven.compiler.source>${java.version}</maven.compiler.source>
|
||||||
@@ -195,7 +195,7 @@
|
|||||||
<name>中铜 ZStack 私服</name>
|
<name>中铜 ZStack 私服</name>
|
||||||
<url>http://172.16.46.63:30708/repository/test/</url>
|
<url>http://172.16.46.63:30708/repository/test/</url>
|
||||||
<releases>
|
<releases>
|
||||||
<enabled>false</enabled>
|
<enabled>true</enabled>
|
||||||
</releases>
|
</releases>
|
||||||
</repository>
|
</repository>
|
||||||
</repositories>
|
</repositories>
|
||||||
@@ -244,12 +244,12 @@
|
|||||||
<id>env-local</id>
|
<id>env-local</id>
|
||||||
<properties>
|
<properties>
|
||||||
<env.name>local</env.name>
|
<env.name>local</env.name>
|
||||||
<!-- <config.server-addr>localhost:8848</config.server-addr>-->
|
<config.server-addr>localhost:8848</config.server-addr>
|
||||||
<config.server-addr>172.16.46.63:30848</config.server-addr>
|
<!-- <config.server-addr>172.16.46.63:30848</config.server-addr>-->
|
||||||
<config.namespace>local</config.namespace>
|
<config.namespace>zgty-qms-local</config.namespace>
|
||||||
<config.group>DEFAULT_GROUP</config.group>
|
<config.group>DEFAULT_GROUP</config.group>
|
||||||
<config.username/>
|
<config.username>qms</config.username>
|
||||||
<config.password/>
|
<config.password>1234567890</config.password>
|
||||||
<config.version>1.0.0</config.version>
|
<config.version>1.0.0</config.version>
|
||||||
</properties>
|
</properties>
|
||||||
</profile>
|
</profile>
|
||||||
@@ -259,6 +259,12 @@
|
|||||||
<config.namespace>chenbowen</config.namespace>
|
<config.namespace>chenbowen</config.namespace>
|
||||||
</properties>
|
</properties>
|
||||||
</profile>
|
</profile>
|
||||||
|
<profile>
|
||||||
|
<id>qsj</id>
|
||||||
|
<properties>
|
||||||
|
<config.namespace>qsj</config.namespace>
|
||||||
|
</properties>
|
||||||
|
</profile>
|
||||||
</profiles>
|
</profiles>
|
||||||
|
|
||||||
</project>
|
</project>
|
||||||
|
|||||||
@@ -38,6 +38,16 @@
|
|||||||
<artifactId>zt-module-capital-api</artifactId>
|
<artifactId>zt-module-capital-api</artifactId>
|
||||||
<version>${business.supply.version}</version>
|
<version>${business.supply.version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.zt.plat</groupId>
|
||||||
|
<artifactId>zt-module-product-api</artifactId>
|
||||||
|
<version>${business.mes.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.zt.plat</groupId>
|
||||||
|
<artifactId>zt-module-product-api</artifactId>
|
||||||
|
<version>${business.mes.version}</version>
|
||||||
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.zt.plat</groupId>
|
<groupId>com.zt.plat</groupId>
|
||||||
<artifactId>zt-module-qms-api</artifactId>
|
<artifactId>zt-module-qms-api</artifactId>
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
package com.zt.plat.module.bpm.framework.rpc.config;
|
package com.zt.plat.module.bpm.framework.rpc.config;
|
||||||
|
|
||||||
import com.zt.plat.module.capital.api.AmountCreditApplyApi;
|
import com.zt.plat.module.capital.api.splyAmountRequest.AmountRequestApi;
|
||||||
|
import com.zt.plat.module.capital.api.splyAmtCrdtAppl.AmountCreditApplyApi;
|
||||||
|
import com.zt.plat.module.product.api.MesProcessRoutApi;
|
||||||
|
import com.zt.plat.module.product.api.plan.MesCompanyPlanApi;
|
||||||
|
import com.zt.plat.module.product.api.plan.MesFactoryPlanApi;
|
||||||
import com.zt.plat.module.system.api.dept.DeptApi;
|
import com.zt.plat.module.system.api.dept.DeptApi;
|
||||||
import com.zt.plat.module.system.api.dept.PostApi;
|
import com.zt.plat.module.system.api.dept.PostApi;
|
||||||
import com.zt.plat.module.system.api.dict.DictDataApi;
|
import com.zt.plat.module.system.api.dict.DictDataApi;
|
||||||
@@ -13,6 +17,6 @@ import org.springframework.context.annotation.Configuration;
|
|||||||
|
|
||||||
@Configuration(value = "bpmRpcConfiguration", proxyBeanMethods = false)
|
@Configuration(value = "bpmRpcConfiguration", proxyBeanMethods = false)
|
||||||
@EnableFeignClients(clients = {RoleApi.class, DeptApi.class, PostApi.class, AdminUserApi.class, SmsSendApi.class, DictDataApi.class,
|
@EnableFeignClients(clients = {RoleApi.class, DeptApi.class, PostApi.class, AdminUserApi.class, SmsSendApi.class, DictDataApi.class,
|
||||||
PermissionApi.class, AmountCreditApplyApi.class})
|
PermissionApi.class, AmountCreditApplyApi.class, MesProcessRoutApi.class, MesFactoryPlanApi.class, MesCompanyPlanApi.class, AmountRequestApi.class})
|
||||||
public class RpcConfiguration {
|
public class RpcConfiguration {
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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<String> 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())
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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<String> 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())
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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<String> 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);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
package com.zt.plat.module.bpm.service.qms.listener;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.zt.plat.framework.common.pojo.CommonResult;
|
||||||
|
import com.zt.plat.module.qms.api.task.QmsApi;
|
||||||
|
import com.zt.plat.module.qms.api.task.dto.QmsBpmDTO;
|
||||||
|
import com.zt.plat.module.qms.enums.ErrorCodeConstants;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.flowable.engine.RuntimeService;
|
||||||
|
import org.flowable.engine.delegate.DelegateExecution;
|
||||||
|
import org.flowable.engine.delegate.JavaDelegate;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception0;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* QMS模块执行监听
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
@Slf4j
|
||||||
|
public class QmsExecutionListener implements JavaDelegate {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private QmsApi qmsApi;
|
||||||
|
@Resource private RuntimeService runtimeService;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public void execute(DelegateExecution execution) {
|
||||||
|
log.info("[QmsExecutionListener][execution({}) 被调用!变量有:{}]", execution.getId(), execution.getCurrentFlowableListener().getFieldExtensions());
|
||||||
|
Map<String, Object> variables = execution.getVariables();
|
||||||
|
JSONObject jsonObject = new JSONObject(variables);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
String insId = execution.getProcessInstanceId();
|
||||||
|
String businessKey = execution.getProcessInstanceBusinessKey();
|
||||||
|
QmsBpmDTO qmsBpmDTO = new QmsBpmDTO(insId, businessKey, jsonObject, "");
|
||||||
|
Map<String, Object> v = runtimeService.getVariables(execution.getProcessInstanceId());
|
||||||
|
// Object status = runtimeService.getVariable(execution.getProcessInstanceId(), WfProcessConstant.TASK_VARIABLE_PROCESS_TERMINATE);
|
||||||
|
CommonResult<JSONObject> result = qmsApi.bpmCallback(qmsBpmDTO);
|
||||||
|
if (!result.isSuccess()) {
|
||||||
|
log.error("[QmsExecutionListener][execution({}) 回调失败!错误码:{},错误信息:{}]", execution.getId(), result.getCode(), result.getMsg());
|
||||||
|
throw exception0(ErrorCodeConstants.ERROR_CODE_MODULE_QMS_BPM, result.getMsg());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
package com.zt.plat.module.bpm.service.qms.listener;
|
||||||
|
|
||||||
|
import com.zt.plat.framework.common.pojo.CommonResult;
|
||||||
|
import com.zt.plat.module.qms.api.task.QmsApi;
|
||||||
|
import com.zt.plat.module.qms.api.task.dto.QmsBpmDTO;
|
||||||
|
import com.zt.plat.module.qms.enums.ErrorCodeConstants;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.flowable.engine.delegate.TaskListener;
|
||||||
|
import org.flowable.task.service.delegate.DelegateTask;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception0;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* QMS模块任务监听
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
@Slf4j
|
||||||
|
public class QmsTaskListener implements TaskListener {
|
||||||
|
@Autowired
|
||||||
|
private QmsApi qmsApi;
|
||||||
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public void notify(DelegateTask delegateTask) {
|
||||||
|
log.info("[QmsTaskListener][delegateTask({})]", delegateTask);
|
||||||
|
String state = delegateTask.getState();
|
||||||
|
Map<String, Object> variables = delegateTask.getVariables();
|
||||||
|
JSONObject jsonObject = new JSONObject(variables);
|
||||||
|
String insId = delegateTask.getProcessInstanceId();
|
||||||
|
QmsBpmDTO qmsBpmDTO = new QmsBpmDTO(insId, "", jsonObject, state);
|
||||||
|
CommonResult<JSONObject> result = qmsApi.bpmCallback(qmsBpmDTO);
|
||||||
|
if (!result.isSuccess()) {
|
||||||
|
log.error("[QmsExecutionListener][execution({}) 回调失败!错误码:{},错误信息:{}]", delegateTask.getId(), result.getCode(), result.getMsg());
|
||||||
|
throw exception0(ErrorCodeConstants.ERROR_CODE_MODULE_QMS_BPM, result.getMsg());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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<String> 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);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -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.BpmProcessInstanceStatusEvent;
|
||||||
import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEventListener;
|
import com.zt.plat.module.bpm.api.event.BpmProcessInstanceStatusEventListener;
|
||||||
import com.zt.plat.module.bpm.enums.task.BpmProcessInstanceStatusEnum;
|
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 com.zt.plat.module.capital.enums.AmountCreditApplyApiStatusEnum;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|||||||
Reference in New Issue
Block a user