1.谐波普测流程相关调整

This commit is contained in:
cdf
2024-04-02 16:23:10 +08:00
parent 40bc9e57f3
commit 8a416bab4d
26 changed files with 2364 additions and 75 deletions

View File

@@ -133,7 +133,7 @@ public class RGeneralSurveyPlanController extends BaseController {
@ApiImplicitParam(name = "rGeneralSurveyPlanQueryParm", value = "普测计划查询参数", required = true)
public HttpResult<IPage<RGeneralSurveyPlanVO>> queryPlan(@Validated @RequestBody RGeneralSurveyPlanQueryParm rGeneralSurveyPlanQueryParm) {
String methodDescribe = getMethodDescribe("queryPlan");
IPage<RGeneralSurveyPlanVO> rGeneralSurveyPlanVOS = rGeneralSurveyPlanPOService.query(rGeneralSurveyPlanQueryParm, Stream.of("0", "1", "2", "3").collect(Collectors.toList()), "1");
IPage<RGeneralSurveyPlanVO> rGeneralSurveyPlanVOS = rGeneralSurveyPlanPOService.query(rGeneralSurveyPlanQueryParm, Stream.of("0", "1", "2", "3","4","5").collect(Collectors.toList()), "1");
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rGeneralSurveyPlanVOS, methodDescribe);
}
@@ -266,4 +266,19 @@ public class RGeneralSurveyPlanController extends BaseController {
}
/**
* 提交审核
* @author cdf
* @date 2024/3/29
*/
@ApiOperation("提交审核")
@PostMapping(value = "submitAuditUser")
@ApiImplicitParam(name = "rGeneralSurveyPlanAuditUserParam", value = "实体参数", required = true)
public HttpResult<Boolean> submitAuditUser(@RequestBody @Validated RGeneralSurveyPlanAuditUserParam rGeneralSurveyPlanAuditUserParam) {
String methodDescribe = getMethodDescribe("submitAuditUser");
rGeneralSurveyPlanPOService.submitAuditUser(rGeneralSurveyPlanAuditUserParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
}
}

View File

@@ -1,8 +1,11 @@
package com.njcn.process.controller.flowable;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.process.pojo.dto.flowable.FlowProcDefDto;
import com.njcn.process.pojo.dto.flowable.FlowSaveXmlVo;
import com.njcn.process.service.flowable.IFlowDefinitionService;
import com.njcn.process.service.flowable.IFlowTaskService;
import com.njcn.web.controller.BaseController;
@@ -11,6 +14,7 @@ import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.IOUtils;
import org.flowable.common.engine.api.FlowableObjectNotFoundException;
import org.flowable.engine.HistoryService;
import org.flowable.engine.RepositoryService;
@@ -23,12 +27,20 @@ import org.flowable.engine.runtime.ProcessInstance;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import static cn.hutool.core.util.CharsetUtil.UTF_8;
/**
* pqs
* 工作流
*
* @author cdf
* @date 2023/4/10
*/
@@ -44,27 +56,17 @@ public class FlowDefinitionController extends BaseController {
private final RepositoryService repositoryService;
private final RuntimeService runtimeService;
private final TaskService taskService;
private final HistoryService historyService;
private final IFlowTaskService flowTaskService;
@GetMapping("deployment")
@ApiOperation(value = "工作流_部署流程")
public void createDeployment() {
Deployment deployment = repositoryService.createDeployment()
.addClasspathResource("gaojing.bpmn20.xml")
.name("技术监督告警流程").category("gaojing")
.addClasspathResource("puce.bpmn20.xml")
.name("谐波普测管理").category("xbpc")
.deploy();
ProcessDefinition definition = repositoryService.createProcessDefinitionQuery().deploymentId(deployment.getId()).singleResult();
repositoryService.setProcessDefinitionCategory(definition.getId(), "gaojing");
repositoryService.setProcessDefinitionCategory(definition.getId(), "xbpc");
System.out.println(deployment.getId());
}
@@ -73,10 +75,10 @@ public class FlowDefinitionController extends BaseController {
@PostMapping("/start")
public HttpResult<String> start(@ApiParam(value = "流程定义id") @RequestParam(value = "procDefId") String procDefId,
@ApiParam(value = "监督单id") @RequestParam(value = "thsIndex") String thsIndex,
@ApiParam(value = "变量集合,json对象") @RequestBody Map<String, Object> variables) {
@ApiParam(value = "变量集合,json对象") @RequestBody Map<String, Object> variables) {
String methodDescribe = getMethodDescribe("start");
String res = flowDefinitionService.startProcessInstanceById(procDefId,thsIndex, variables);
if(Objects.nonNull(res)){
String res = flowDefinitionService.startProcessInstanceById(procDefId, thsIndex, variables);
if (Objects.nonNull(res)) {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, res, methodDescribe);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
@@ -84,12 +86,79 @@ public class FlowDefinitionController extends BaseController {
@ApiOperation(value = "工作流_定义删除")
@DeleteMapping(value = "delete/{deployIds}")
public HttpResult<Object> delete(@PathVariable String[] deployIds) {
@PostMapping(value = "delete")
public HttpResult<Object> delete(@RequestBody List<String> deployIds) {
String methodDescribe = getMethodDescribe("delete");
for (String deployId : deployIds) {
flowDefinitionService.delete(deployId);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@GetMapping(value = "/list")
@ApiOperation(value = "流程定义列表")
public HttpResult<Page<FlowProcDefDto>> list(@ApiParam(value = "当前页码", required = true) @RequestParam("pageNum") Integer pageNum,
@ApiParam(value = "每页条数", required = true) @RequestParam("pageSize") Integer pageSize,
@ApiParam(value = "流程名称") @RequestParam(value = "name", required = false) String name) {
String methodDescribe = getMethodDescribe("list");
Page<FlowProcDefDto> pageResult = flowDefinitionService.list(name, pageNum, pageSize);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, pageResult, methodDescribe);
}
@ApiOperation(value = "保存流程设计器内的xml文件")
@PostMapping("/save")
public HttpResult save(@RequestBody FlowSaveXmlVo vo) {
String methodDescribe = getMethodDescribe("save");
InputStream in = null;
try {
in = new ByteArrayInputStream(vo.getFlowableXml().getBytes(StandardCharsets.UTF_8));
flowDefinitionService.importFile(vo.getName(), vo.getCategory(), in);
} catch (Exception e) {
log.error("导入失败:", e);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, e.getMessage(), methodDescribe);
} finally {
try {
if (in != null) {
in.close();
}
} catch (IOException e) {
log.error("关闭输入流出错", e);
}
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, "导入成功", methodDescribe);
}
@ApiOperation(value = "读取xml文件")
@GetMapping("/readXml")
public HttpResult<String> readXml(@ApiParam(value = "流程定义id") @RequestParam(value = "deployId") String deployId) {
String methodDescribe = getMethodDescribe("readXml");
try {
String result = flowDefinitionService.readXml(deployId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
} catch (Exception e) {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, "加载xml文件异常", methodDescribe);
}
}
/**
* 挂载表单
*
* @author cdf
* @date 2024/4/2
*/
@ApiOperation(value = "挂载表单")
@GetMapping("/assFormWithDeploy")
public HttpResult<Boolean> assFormWithDeploy(@ApiParam(value = "流程定义id") @RequestParam(value = "deployId") String deployId, @ApiParam(value = "表单功能id") @RequestParam(value = "formId") String formId) {
String methodDescribe = getMethodDescribe("assFormWithDeploy");
flowDefinitionService.assFormWithDeploy(deployId, formId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
}
}

View File

@@ -0,0 +1,80 @@
package com.njcn.process.controller.flowable;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.process.pojo.vo.flowable.FlowTaskVo;
import com.njcn.process.service.flowable.IFlowInstanceService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
/**
* <p>工作流流程实例管理<p>
*
* @author Tony
* @date 2021-04-03
*/
@Slf4j
@Api(tags = "工作流流程实例管理")
@RestController
@RequestMapping("/flowable/instance")
public class FlowInstanceController extends BaseController {
@Autowired
private IFlowInstanceService flowInstanceService;
@ApiOperation(value = "根据流程定义id启动流程实例")
@PostMapping("/startBy/{procDefId}")
public HttpResult startById(@ApiParam(value = "流程定义id") @PathVariable(value = "procDefId") String procDefId,
@ApiParam(value = "变量集合,json对象") @RequestBody Map<String, Object> variables) {
String methodDescribe = getMethodDescribe("startById");
String result = flowInstanceService.startProcessInstanceById(procDefId, variables);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@ApiOperation(value = "激活或挂起流程实例")
@PostMapping(value = "/updateState")
public HttpResult updateState(@ApiParam(value = "1:激活,2:挂起", required = true) @RequestParam Integer state,
@ApiParam(value = "流程实例ID", required = true) @RequestParam String instanceId) {
String methodDescribe = getMethodDescribe("updateState");
flowInstanceService.updateState(state,instanceId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
}
@ApiOperation("结束流程实例")
@PostMapping(value = "/stopProcessInstance")
public HttpResult stopProcessInstance(@RequestBody FlowTaskVo flowTaskVo) {
String methodDescribe = getMethodDescribe("stopProcessInstance");
flowInstanceService.stopProcessInstance(flowTaskVo);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
}
@ApiOperation(value = "删除流程实例")
@GetMapping(value = "/delete")
public HttpResult delete(@ApiParam(value = "流程实例ID", required = true) @RequestParam String instanceIds) {
String methodDescribe = getMethodDescribe("delete");
flowInstanceService.delete(instanceIds,"测试删除666");
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
}
}

View File

@@ -1,9 +1,11 @@
package com.njcn.process.controller.flowable;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.process.pojo.dto.flowable.FlowTaskDto;
import com.njcn.process.pojo.vo.flowable.FlowQueryVo;
import com.njcn.process.pojo.vo.flowable.FlowTaskVo;
import com.njcn.process.service.flowable.IFlowTaskService;
@@ -70,5 +72,65 @@ public class FlowTaskController extends BaseController {
}
@ApiOperation(value = "我发起的流程", response = HttpResult.class)
@GetMapping(value = "/myProcess")
public HttpResult<Page<FlowTaskDto>> myProcess(FlowQueryVo queryVo) {
String methodDescribe = getMethodDescribe("myProcess");
Page<FlowTaskDto> page = flowTaskService.myProcess(queryVo);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, page, methodDescribe);
}
@ApiOperation(value = "获取已办任务", response = FlowTaskDto.class)
@GetMapping(value = "/finishedList")
public HttpResult<Page<FlowTaskDto>> finishedList(FlowQueryVo queryVo) {
String methodDescribe = getMethodDescribe("finishedList");
Page<FlowTaskDto> page = flowTaskService.finishedList(queryVo);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, page, methodDescribe);
}
@ApiOperation(value = "获取待办列表", response = FlowTaskDto.class)
@GetMapping(value = "/todoList")
public HttpResult<Page<FlowTaskDto>> todoList(FlowQueryVo queryVo) {
String methodDescribe = getMethodDescribe("todoList");
Page<FlowTaskDto> page = flowTaskService.todoList(queryVo);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, page, methodDescribe);
}
@ApiOperation(value = "获取流程变量", response = FlowTaskDto.class)
@GetMapping(value = "/processVariables/{taskId}")
public HttpResult<Map<String,Object>> processVariables(@ApiParam(value = "流程任务Id") @PathVariable(value = "taskId") String taskId) {
String methodDescribe = getMethodDescribe("processVariables");
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, flowTaskService.processVariables(taskId), methodDescribe);
}
@ApiOperation(value = "流程历史流转记录", response = FlowTaskDto.class)
@GetMapping(value = "/flowRecord")
public HttpResult<Map<String, Object>> flowRecord(String procInsId, String deployId) {
String methodDescribe = getMethodDescribe("flowRecord");
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, flowTaskService.flowRecord(procInsId, deployId), methodDescribe);
}
@ApiOperation(value = "取消申请", response = FlowTaskDto.class)
@PostMapping(value = "/stopProcess")
public HttpResult<Object> stopProcess(@RequestBody FlowTaskVo flowTaskVo) {
String methodDescribe = getMethodDescribe("stopProcess");
flowTaskService.stopProcess(flowTaskVo);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,true, methodDescribe);
}
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject")
public HttpResult taskReject(@RequestBody FlowTaskVo flowTaskVo) {
String methodDescribe = getMethodDescribe("taskReject");
flowTaskService.taskReject(flowTaskVo);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,true, methodDescribe);
}
}