package org.springblade.mdm.flow.controller;
|
|
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Parameter;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
import lombok.AllArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.flowable.engine.RuntimeService;
|
import org.flowable.engine.TaskService;
|
import org.flowable.engine.runtime.ProcessInstance;
|
import org.flowable.task.api.Task;
|
import org.springblade.core.tool.api.R;
|
import org.springblade.mdm.flow.constants.FlowContants;
|
import org.springblade.mdm.flow.excution.StartDispatcher;
|
import org.springblade.mdm.flow.service.ApproveRecordService;
|
import org.springblade.mdm.flow.service.FlowProgramFileService;
|
import org.springblade.mdm.flow.service.ReplaceFlowService;
|
import org.springblade.mdm.flow.service.TaskDispatchService;
|
import org.springblade.mdm.flow.service.execute.AbstractFlowCompleteService;
|
import org.springblade.mdm.flow.service.execute.DefaultFlowCompleteService;
|
import org.springblade.mdm.flow.service.execute.TryFlowCompleteService;
|
import org.springblade.mdm.flow.vo.ReplaceFlowStartVO;
|
import org.springblade.mdm.flow.vo.TaskAssignVO;
|
import org.springblade.mdm.program.service.ProcessProgRefService;
|
import org.springblade.mdm.program.vo.NcNodeVO;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.Map;
|
|
@Slf4j
|
@RestController
|
@AllArgsConstructor
|
@RequestMapping("/flow/replace")
|
@Tag(name = "替换流程", description = "替换流程")
|
public class ReplaceFlowController {
|
|
private final StartDispatcher dispatcher;
|
|
private final TaskService taskService;
|
private final RuntimeService runtimeService;
|
private final ProcessProgRefService processProgRefService;
|
|
private final ApproveRecordService approveRecordService;
|
private final FlowProgramFileService flowProgramFileService;
|
private final DefaultFlowCompleteService defaultFlowCompleteService;
|
private final TaskDispatchService taskDispatchService;
|
private final ReplaceFlowService replaceFlowService;
|
|
/*
|
@PostMapping("/prestart")
|
@Operation(summary = "准备程序替换流程", description = "准备程序替换流程,打开界面之前调用,调用之后会初始化文件列表,")
|
public R<String> prestart(@Parameter(description = "程序包名 节点的id") Long nodeId) {
|
String tempInstanceId = "REP"+System.currentTimeMillis();
|
try {
|
replaceFlowService.prestart(nodeId,tempInstanceId);
|
return R.data(tempInstanceId);
|
}catch(Exception e){
|
log.error("预开始错误",e);
|
return R.fail(e.getMessage());
|
}
|
|
}
|
*/
|
@PostMapping("/pre")
|
@Operation(summary = "准备程序替换流程new", description = "准备程序替换流程,打开界面之前调用,调用之后会初始化文件列表,")
|
public R<NcNodeVO> pre(@Parameter(description = "程序包名 节点的id") Long nodeId) {
|
String tempInstanceId = "REP"+System.currentTimeMillis();
|
try {
|
return R.data(replaceFlowService.pre(nodeId,tempInstanceId));
|
}catch(Exception e){
|
log.error("预开始错误",e);
|
return R.fail(e.getMessage());
|
}
|
|
}
|
/**
|
* 发起替换流程
|
*/
|
@PostMapping("/start")
|
@Operation(summary = "发起程序替换流程", description = "发起程序替换流程")
|
public R<Boolean> start(@RequestBody ReplaceFlowStartVO startVO) {
|
try {
|
replaceFlowService.start(startVO);
|
return R.data(true);
|
}catch(Exception e){
|
log.error("发起程序替换错误",e);
|
return R.fail(e.getMessage());
|
}
|
|
}
|
|
}
|