|
...
|
...
|
@@ -5,17 +5,27 @@ import java.util.List; |
|
|
|
import java.util.Arrays;
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
import cn.hutool.core.convert.Convert;
|
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
import com.baomidou.mybatisplus.annotation.TableName;
|
|
|
|
import com.ruoyi.common.businessworkflow.domain.bo.TblBusinessWorkflowBo;
|
|
|
|
import com.ruoyi.common.businessworkflow.service.ITblBusinessWorkflowService;
|
|
|
|
import com.ruoyi.compliancemanagement.domain.TblContract;
|
|
|
|
import com.ruoyi.compliancemanagement.domain.bo.TblBusinessWorkflowBo;
|
|
|
|
import com.ruoyi.compliancemanagement.model.TblContractModel;
|
|
|
|
import com.ruoyi.compliancemanagement.service.ITblBusinessWorkflowService;
|
|
|
|
import com.ruoyi.flowable.common.constant.ProcessConstants;
|
|
|
|
import com.ruoyi.flowable.common.enums.ProcessStatus;
|
|
|
|
import com.ruoyi.workflow.service.IWfProcessService;
|
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
import javax.validation.constraints.*;
|
|
|
|
import cn.dev33.satoken.annotation.SaCheckPermission;
|
|
|
|
import org.flowable.engine.HistoryService;
|
|
|
|
import org.flowable.engine.history.HistoricProcessInstance;
|
|
|
|
import org.flowable.engine.history.HistoricProcessInstanceQuery;
|
|
|
|
import org.flowable.engine.runtime.ProcessInstance;
|
|
|
|
import org.flowable.variable.api.history.HistoricVariableInstance;
|
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
...
|
...
|
@@ -49,8 +59,10 @@ public class TblContractController extends BaseController { |
|
|
|
private final IWfProcessService iWfProcessService;
|
|
|
|
private final ITblBusinessWorkflowService iTblBusinessWorkflowService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
protected HistoryService historyService;
|
|
|
|
/**
|
|
|
|
* 查询【请填写功能名称】列表
|
|
|
|
* 查询【合同审批】列表
|
|
|
|
*/
|
|
|
|
@SaCheckPermission("system:contract:list")
|
|
|
|
@GetMapping("/list")
|
|
...
|
...
|
@@ -59,6 +71,15 @@ public class TblContractController extends BaseController { |
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 查询【归档合同】列表
|
|
|
|
*/
|
|
|
|
@SaCheckPermission("system:contract:listSealContract")
|
|
|
|
@GetMapping("/listSealContract")
|
|
|
|
public TableDataInfo<TblContractModel> listSealContract(TblContractBo bo, PageQuery pageQuery) {
|
|
|
|
return iTblContractService.queryPageListSealContract(bo, pageQuery);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 导出【请填写功能名称】列表
|
|
|
|
*/
|
|
|
|
@SaCheckPermission("system:contract:export")
|
|
...
|
...
|
@@ -151,22 +172,34 @@ public class TblContractController extends BaseController { |
|
|
|
// 变更内容
|
|
|
|
variables.put("reasonText", bo.getReasonText());
|
|
|
|
// 启动流程
|
|
|
|
// CollegeMatters mat = iCollegeMattersService.getMatter(matterKey);
|
|
|
|
// matter.setMatterDept(mat.getMatterDepartmentId());
|
|
|
|
// variables.put("department", mat.getMatterDepartmentId());
|
|
|
|
// matter.setMatterKey(procDefId);
|
|
|
|
// matter.setBusinessKey(procDefId + "." + id);
|
|
|
|
// matter.setVariables(variables);
|
|
|
|
// matter.setProcessId("Process_18tcmzu:1:216d90ff-3f8a-11ef-b7e7-70b5e84e8ddf");
|
|
|
|
// iWfProcessService.startProcess(matter);
|
|
|
|
ProcessInstance processInstance = iWfProcessService.startProcessByDefId(procDefId, variables);
|
|
|
|
|
|
|
|
if(null != processInstance){
|
|
|
|
|
|
|
|
// 获取流程状态
|
|
|
|
HistoricVariableInstance processStatusVariable = historyService.createHistoricVariableInstanceQuery()
|
|
|
|
.processInstanceId(processInstance.getProcessInstanceId())
|
|
|
|
.variableName(ProcessConstants.PROCESS_STATUS_KEY)
|
|
|
|
.singleResult();
|
|
|
|
String processStatus = null;
|
|
|
|
if (ObjectUtil.isNotNull(processStatusVariable)) {
|
|
|
|
processStatus = Convert.toStr(processStatusVariable.getValue());
|
|
|
|
}
|
|
|
|
|
|
|
|
HistoricProcessInstanceQuery historicProcessInstanceQuery = historyService.createHistoricProcessInstanceQuery()
|
|
|
|
.processDefinitionId(procDefId);
|
|
|
|
List<HistoricProcessInstance> historicProcessInstances = historicProcessInstanceQuery.list();
|
|
|
|
// 兼容旧流程
|
|
|
|
if (processStatus == null) {
|
|
|
|
processStatus = ObjectUtil.isNull(historicProcessInstances.get(0).getEndTime()) ? ProcessStatus.RUNNING.getStatus() : ProcessStatus.COMPLETED.getStatus();
|
|
|
|
}
|
|
|
|
|
|
|
|
TblBusinessWorkflowBo tblBusinessWorkflowBo = new TblBusinessWorkflowBo();
|
|
|
|
tblBusinessWorkflowBo.setBusinessId(id);
|
|
|
|
tblBusinessWorkflowBo.setProcInsId(processInstance.getProcessInstanceId());
|
|
|
|
tblBusinessWorkflowBo.setProcDefId(procDefId);
|
|
|
|
tblBusinessWorkflowBo.setDeployId(processInstance.getDeploymentId());
|
|
|
|
tblBusinessWorkflowBo.setProcessStatus(processStatus);
|
|
|
|
TableName table = TblContract.class.getAnnotation(TableName.class);
|
|
|
|
tblBusinessWorkflowBo.setTableName(table.value());
|
|
|
|
iTblBusinessWorkflowService.insertByBo(tblBusinessWorkflowBo);
|
|
...
|
...
|
@@ -190,6 +223,15 @@ public class TblContractController extends BaseController { |
|
|
|
return toAjax(iTblContractService.updateByBo(bo));
|
|
|
|
}
|
|
|
|
|
|
|
|
@RepeatSubmit()
|
|
|
|
@PostMapping("/updateSealByContractno")
|
|
|
|
public R<Void> updateSealByContractno( @RequestBody TblContractBo bo) {
|
|
|
|
String contractno = bo.getContractno();
|
|
|
|
String sealContract = bo.getSealContract();
|
|
|
|
return toAjax(iTblContractService.updateSealByContractno(contractno,sealContract));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 删除【请填写功能名称】
|
|
|
|
*
|
...
|
...
|
|