java110-interface/src/main/java/com/java110/intf/common/IContractApplyUserInnerServiceSMO.java
@@ -5,6 +5,7 @@ import com.java110.dto.contract.ContractDto; import com.java110.dto.purchaseApply.PurchaseApplyDto; import com.java110.entity.audit.AuditUser; import com.java110.po.contract.ContractPo; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; @@ -89,6 +90,11 @@ */ @RequestMapping(value = "/completeTask", method = RequestMethod.POST) public boolean completeTask(@RequestBody ContractDto contractDto); /** * 处理任务 * @return true 为流程结束 false 为流程没有结束 */ @RequestMapping(value = "/deleteTask", method = RequestMethod.POST) public boolean deleteTask(@RequestBody ContractPo contractDto); } service-common/src/main/java/com/java110/common/smo/impl/ContractApplyUserInnerServiceSMOImpl.java
@@ -4,12 +4,12 @@ import com.java110.core.base.smo.BaseServiceSMO; import com.java110.dto.PageDto; import com.java110.dto.contract.ContractDto; import com.java110.dto.purchaseApply.PurchaseApplyDto; import com.java110.dto.workflow.WorkflowDto; import com.java110.entity.audit.AuditUser; import com.java110.intf.common.IContractApplyUserInnerServiceSMO; import com.java110.intf.common.IWorkflowInnerServiceSMO; import com.java110.intf.store.IContractInnerServiceSMO; import com.java110.po.contract.ContractPo; import com.java110.utils.util.Assert; import com.java110.utils.util.StringUtil; import org.activiti.engine.HistoryService; @@ -65,7 +65,7 @@ variables.put("userId", contractDto.getCurrentUserId()); variables.put("startUserId", contractDto.getCurrentUserId()); //开启流程 ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(getWorkflowDto(contractDto.getStoreId()),contractDto.getContractId(), variables); ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(getWorkflowDto(contractDto.getStoreId()), contractDto.getContractId(), variables); //将得到的实例流程id值赋给之前设置的变量 String processInstanceId = processInstance.getId(); // System.out.println("流程开启成功.......实例流程id:" + processInstanceId); @@ -284,4 +284,27 @@ return false; } //删除任务 public boolean deleteTask(@RequestBody ContractPo contractDto) { TaskService taskService = processEngine.getTaskService(); TaskQuery query = taskService.createTaskQuery().processInstanceBusinessKey(contractDto.getContractId()); query.orderByTaskCreateTime().desc(); List<Task> list = query.list(); if (list == null || list.size() < 1) { return true; } for (Task task : list) { String processInstanceId = task.getProcessInstanceId(); //3.使用流程实例,查询 runtimeService.deleteProcessInstance(processInstanceId, "取消合同"); } return true; } } service-store/src/main/java/com/java110/store/bmo/contract/impl/DeleteContractBMOImpl.java
@@ -5,6 +5,7 @@ import com.java110.dto.contractRoom.ContractRoomDto; import com.java110.dto.fee.FeeDto; import com.java110.dto.owner.OwnerRoomRelDto; import com.java110.intf.common.IContractApplyUserInnerServiceSMO; import com.java110.intf.community.IRoomInnerServiceSMO; import com.java110.intf.fee.IFeeInnerServiceSMO; import com.java110.intf.store.IContractInnerServiceSMO; @@ -43,6 +44,9 @@ @Autowired private IFeeInnerServiceSMO feeInnerServiceSMOImpl; @Autowired private IContractApplyUserInnerServiceSMO contractApplyUserInnerServiceSMOImpl; /** * @param contractPo 数据 * @return 订单服务能够接受的报文 @@ -56,6 +60,8 @@ return ResultVo.createResponseEntity(ResultVo.CODE_ERROR, "保存失败"); } //删除流程信息 contractApplyUserInnerServiceSMOImpl.deleteTask(contractPo); deleteContractRoomRel(contractPo); return ResultVo.createResponseEntity(ResultVo.CODE_OK, "保存成功");