Commit a7a4fc00 by 赵剑炜

修改工作流

parent 666ff82f
...@@ -60,3 +60,4 @@ Thumbs.db ...@@ -60,3 +60,4 @@ Thumbs.db
/jyzb-boot/src/main/resources/application.yml /jyzb-boot/src/main/resources/application.yml
/jyzb-boot/pom.xml /jyzb-boot/pom.xml
/.idea/encodings.xml /.idea/encodings.xml
/jyzb-boot/src/main/resources/application.yml
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
server: server:
tomcat: tomcat:
uri-encoding: UTF-8 #tomcat编码 uri-encoding: UTF-8 #tomcat编码
port: 10031 #tomcat端口 port: 10032 #tomcat端口
spring: spring:
main: main:
#bea同名类进行注册时,准许覆盖注册 #bea同名类进行注册时,准许覆盖注册
......
artifactId=jyzb-mq-consumer
groupId=com.junmp.jyzb
version=1.0.0
artifactId=jyzb-mq-producer
groupId=com.junmp.jyzb
version=1.0.0
...@@ -121,11 +121,11 @@ public class BpmnController { ...@@ -121,11 +121,11 @@ public class BpmnController {
public ApiRes<Boolean> createForm(@RequestBody FormReq formReq) { public ApiRes<Boolean> createForm(@RequestBody FormReq formReq) {
return ApiRes.success(WorkProcessService.createNewForm(formReq)); return ApiRes.success(WorkProcessService.createNewForm(formReq));
} }
// @ApiOperation("终止流程") @ApiOperation("终止流程")
// @PostMapping("StopProcessInstanceById") @PostMapping("StopProcessInstanceById")
// public ApiRes<Boolean> stopProcessInstanceById(@RequestBody HandleDataDTO handleDataDTO) { public ApiRes<Boolean> stopProcessInstanceById(@RequestBody HandleDataDTO handleDataDTO) {
// return ApiRes.success(WorkProcessService.suspendOrActivateProcessDefinitionById(req)); return WorkProcessService.stopProcessInstanceById(handleDataDTO);
// } }
@ApiOperation("挂起流程实例") @ApiOperation("挂起流程实例")
@PostMapping("SuspendOrActivateDefinition") @PostMapping("SuspendOrActivateDefinition")
public ApiRes<Boolean> SuspendOrActivateDefinition(@RequestBody SuspendOrActivateDefinitionReq req) { public ApiRes<Boolean> SuspendOrActivateDefinition(@RequestBody SuspendOrActivateDefinitionReq req) {
......
...@@ -29,12 +29,12 @@ public interface WorkProcessService { ...@@ -29,12 +29,12 @@ public interface WorkProcessService {
*/ */
Boolean createNewForm(FormReq processVO) ; Boolean createNewForm(FormReq processVO) ;
// /** /**
// * 挂起流程定义 * 终止流程实例
// * *
// * @return * @return
// */ */
// Boolean stopProcessInstanceById(SuspendOrActivateDefinitionReq req) ; ApiRes<Boolean> stopProcessInstanceById(HandleDataDTO handleDataDTO) ;
/** /**
* 挂起流程定义 * 挂起流程定义
......
...@@ -212,6 +212,46 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper, ...@@ -212,6 +212,46 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
return pageResult; return pageResult;
} }
public List<EndEvent> findEndFlowElement(String processDefId) {
BpmnModel bpmnModel = repositoryService.getBpmnModel(processDefId);
if (bpmnModel != null) {
Process process = bpmnModel.getMainProcess();
return process.findFlowElementsOfType(EndEvent.class);
} else {
return null;
}
}
// /**
// * @Author: Zhaojw
// * @Description: 终止流程实例
// * @DateTime: 2023/7/24 15:17
// * @Params:
// * @Return
// */
public ApiRes<Boolean> stopProcessInstanceById(HandleDataDTO handleDataDTO)
{
ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().processInstanceId(handleDataDTO.getProcessInstanceId()).singleResult();
if (processInstance != null) {
//2、执行终止
List<Execution> executions = runtimeService.createExecutionQuery().parentId(handleDataDTO.getProcessInstanceId()).list();
List<String> executionIds = new ArrayList<>();
List<EndEvent> endNodes = this.findEndFlowElement(processInstance.getProcessDefinitionId());
String endId = endNodes.get(0).getId();
executions.forEach(execution -> executionIds.add(execution.getId()));
runtimeService.createChangeActivityStateBuilder()
.moveExecutionsToSingleActivityId(executionIds, endId)
.changeState();
return ApiRes.success(true);
}else {
return ApiRes.failure("不存在运行的流程实例,请确认!");
}
}
/** /**
* @Author: Zhaojw * @Author: Zhaojw
* @Description: 创建新表单 * @Description: 创建新表单
...@@ -275,7 +315,7 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper, ...@@ -275,7 +315,7 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
BpmnModel bpmnModel = toBpmn(processJsonNode,formJsonNode,formName,templateId); BpmnModel bpmnModel = toBpmn(processJsonNode,formJsonNode,formName,templateId);
Deployment deploy = repositoryService.createDeployment() Deployment deploy = repositoryService.createDeployment()
.addBpmnModel(templateId+".bpmn20.xml", bpmnModel) .addBpmnModel(templateId+".bpmn20.xml", bpmnModel)
.name(templateId) .name(formName)
.category(templateId) .category(templateId)
.deploy(); .deploy();
...@@ -377,7 +417,7 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper, ...@@ -377,7 +417,7 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
Deployment deploy = repositoryService.createDeployment() Deployment deploy = repositoryService.createDeployment()
.addBpmnModel(process.getTemplateId()+".bpmn20.xml", bpmnModel) .addBpmnModel(process.getTemplateId()+".bpmn20.xml", bpmnModel)
.name(process.getTemplateId()) .name(formName)
.category(process.getTemplateId()) .category(process.getTemplateId())
.deploy(); .deploy();
return true; return true;
...@@ -711,6 +751,11 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper, ...@@ -711,6 +751,11 @@ public class WorkProcessServiceImpl extends ServiceImpl<ProcessTemplatesMapper,
Map<String, Object> processVariables = historicProcessInstance.getProcessVariables(); Map<String, Object> processVariables = historicProcessInstance.getProcessVariables();
HistoryProcessInstanceVO historyProcessInstanceVO = new HistoryProcessInstanceVO(); HistoryProcessInstanceVO historyProcessInstanceVO = new HistoryProcessInstanceVO();
historyProcessInstanceVO.setProcessInstanceId(historicProcessInstance.getId()); historyProcessInstanceVO.setProcessInstanceId(historicProcessInstance.getId());
BpmnModel bpmnModel = repositoryService.getBpmnModel(historicProcessInstance.getProcessDefinitionId());
String Name= bpmnModel.getMainProcess().getName();
historyProcessInstanceVO.setProcessDefinitionName(historicProcessInstance.getProcessDefinitionName()); historyProcessInstanceVO.setProcessDefinitionName(historicProcessInstance.getProcessDefinitionName());
historyProcessInstanceVO.setStartUser(JSONObject.parseObject(MapUtil.getStr(processVariables, START_USER_INFO), new TypeReference<UserInfo>() { historyProcessInstanceVO.setStartUser(JSONObject.parseObject(MapUtil.getStr(processVariables, START_USER_INFO), new TypeReference<UserInfo>() {
})); }));
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
<module>jyzb-api</module> <module>jyzb-api</module>
<module>jyzb-boot</module> <module>jyzb-boot</module>
<module>jyzb-biz</module> <module>jyzb-biz</module>
<!-- <module>jyzb-process</module>--> <module>jyzb-process</module>
<module>jyzb-common</module> <module>jyzb-common</module>
<module>jyzb-mq</module> <module>jyzb-mq</module>
</modules> </modules>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论