From 23855599412c4d61b38d78f0f3abd3430a48b5b1 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期三, 25 六月 2025 11:51:38 +0800 Subject: [PATCH] Merge branch 'mdc_hyjs_master' --- lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/controller/FlowTaskController.java | 213 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 213 insertions(+), 0 deletions(-) diff --git a/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/controller/FlowTaskController.java b/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/controller/FlowTaskController.java new file mode 100644 index 0000000..030a714 --- /dev/null +++ b/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/controller/FlowTaskController.java @@ -0,0 +1,213 @@ +package org.jeecg.modules.flowable.controller; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.flowable.domain.dto.FlowNextDto; +import org.jeecg.modules.flowable.domain.dto.FlowTaskDto; +import org.jeecg.modules.flowable.domain.vo.FlowTaskVo; +import org.jeecg.modules.flowable.service.IFlowTaskService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.imageio.ImageIO; +import javax.servlet.http.HttpServletResponse; +import java.awt.image.BufferedImage; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.util.List; + +/** + * <p>宸ヤ綔娴佷换鍔$鐞�<p> + * + */ +@Slf4j +@Api(tags = "宸ヤ綔娴佹祦绋嬩换鍔$鐞�") +@RestController +@RequestMapping("/flowable/task") +public class FlowTaskController { + + @Autowired + private IFlowTaskService flowTaskService; + + @ApiOperation(value = "鎴戝彂璧风殑娴佺▼", response = FlowTaskDto.class) + @GetMapping(value = "/myProcess") + public Result myProcess(@ApiParam(value = "褰撳墠椤电爜", required = true) @RequestParam Integer pageNum, + @ApiParam(value = "姣忛〉鏉℃暟", required = true) @RequestParam Integer pageSize) { + return flowTaskService.myProcess(pageNum, pageSize); + } + + @ApiOperation(value = "鍙栨秷鐢宠", response = FlowTaskDto.class) + @PostMapping(value = "/stopProcess") + public Result stopProcess(@RequestBody FlowTaskVo flowTaskVo) { + return flowTaskService.stopProcess(flowTaskVo); + } + + @ApiOperation(value = "鎾ゅ洖娴佺▼", response = FlowTaskDto.class) + @PostMapping(value = "/revokeProcess") + public Result revokeProcess(@RequestBody FlowTaskVo flowTaskVo) { + return flowTaskService.revokeProcess(flowTaskVo); + } + + @ApiOperation(value = "鑾峰彇寰呭姙鍒楄〃", response = FlowTaskDto.class) + @GetMapping(value = "/todoList") + public Result todoList(@ApiParam(value = "褰撳墠椤电爜", required = true) @RequestParam Integer pageNum, + @ApiParam(value = "姣忛〉鏉℃暟", required = true) @RequestParam Integer pageSize) { + return flowTaskService.todoList(pageNum, pageSize); + } + + @ApiOperation(value = "娴佺▼鍘嗗彶娴佽浆璁板綍", response = FlowTaskDto.class) + @GetMapping(value = "/flowRecord") + public Result flowRecord(String dataId) { + return flowTaskService.flowRecord(dataId); + } + + @ApiOperation(value = "鑾峰彇娴佺▼鍙橀噺", response = FlowTaskDto.class) + @GetMapping(value = "/processVariables/{taskId}") + public Result processVariables(@ApiParam(value = "娴佺▼浠诲姟Id") @PathVariable(value = "taskId") String taskId) { + return flowTaskService.processVariables(taskId); + } + + @ApiOperation(value = "瀹℃壒浠诲姟") + @PostMapping(value = "/complete") + public Result complete(@RequestBody FlowTaskVo flowTaskVo) { + return flowTaskService.complete(flowTaskVo); + } + @ApiOperation(value = "瀹℃壒浠诲姟") + @PostMapping(value = "/completeByDateId") + public Result completeByDateId(@RequestBody FlowTaskVo flowTaskVo) { + return flowTaskService.completeByDateId(flowTaskVo); + } + + @ApiOperation(value = "椹冲洖浠诲姟") + @PostMapping(value = "/reject") + public Result taskReject(@RequestBody FlowTaskVo flowTaskVo) { + flowTaskService.taskReject(flowTaskVo); + return Result.OK(); + } + @ApiOperation(value = "椹冲洖浠诲姟") + @PostMapping(value = "/taskRejectByDataId") + public Result taskRejectByDataId(@RequestBody FlowTaskVo flowTaskVo) { + flowTaskService.taskRejectByDataId(flowTaskVo); + return Result.OK(); + } + + @ApiOperation(value = "閫�鍥炰换鍔�") + @PostMapping(value = "/return") + public Result taskReturn(@RequestBody FlowTaskVo flowTaskVo) { + flowTaskService.taskReturn(flowTaskVo); + return Result.OK(); + } + @ApiOperation(value = "閫�鍥炰换鍔�") + @PostMapping(value = "/taskReturnByDataId") + public Result taskReturnByDataId(@RequestBody FlowTaskVo flowTaskVo) { + flowTaskService.taskReturnByDataId(flowTaskVo); + return Result.OK(); + } + + @ApiOperation(value = "鑾峰彇鎵�鏈夊彲鍥為��鐨勮妭鐐�") + @PostMapping(value = "/returnList") + public Result findReturnTaskList(@RequestBody FlowTaskVo flowTaskVo) { + return flowTaskService.findReturnTaskList(flowTaskVo); + } + @ApiOperation(value = "鑾峰彇鎵�鏈夊彲鍥為��鐨勮妭鐐�") + @PostMapping(value = "/findReturnTaskListByDataId") + public Result findReturnTaskListByDataId(@RequestBody FlowTaskVo flowTaskVo) { + return flowTaskService.findReturnTaskListByDataId(flowTaskVo); + } + + @ApiOperation(value = "鍒犻櫎浠诲姟") + @DeleteMapping(value = "/delete") + public Result delete(@RequestBody FlowTaskVo flowTaskVo) { + flowTaskService.deleteTask(flowTaskVo); + return Result.OK(); + } + + @ApiOperation(value = "璁ら/绛炬敹浠诲姟") + @PostMapping(value = "/claim") + public Result claim(@RequestBody FlowTaskVo flowTaskVo) { + flowTaskService.claim(flowTaskVo); + return Result.OK(); + } + + @ApiOperation(value = "鍙栨秷璁ら/绛炬敹浠诲姟") + @PostMapping(value = "/unClaim") + public Result unClaim(@RequestBody FlowTaskVo flowTaskVo) { + flowTaskService.unClaim(flowTaskVo); + return Result.OK(); + } + + @ApiOperation(value = "濮旀淳浠诲姟") + @PostMapping(value = "/delegate") + public Result delegate(@RequestBody FlowTaskVo flowTaskVo) { + flowTaskService.delegateTask(flowTaskVo); + return Result.OK(); + } + + @ApiOperation(value = "杞姙浠诲姟") + @PostMapping(value = "/assign") + public Result assign(@RequestBody FlowTaskVo flowTaskVo) { + flowTaskService.assignTask(flowTaskVo); + return Result.OK(); + } + + @ApiOperation(value = "鑾峰彇涓嬩竴鑺傜偣") + @PostMapping(value = "/nextFlowNode") + public Result<List<FlowNextDto>> getNextFlowNode(@RequestBody FlowTaskVo flowTaskVo) { + return flowTaskService.getNextFlowNode(flowTaskVo); + } + + /** + * 鐢熸垚娴佺▼鍥� + * + * @param processId 浠诲姟ID + */ + @RequestMapping("/diagram/{processId}") + public void genProcessDiagram(HttpServletResponse response, + @PathVariable("processId") String processId) { + InputStream inputStream = flowTaskService.diagram(processId); + OutputStream os = null; + BufferedImage image = null; + try { + image = ImageIO.read(inputStream); + response.setContentType("image/png"); + os = response.getOutputStream(); + if (image != null) { + ImageIO.write(image, "png", os); + } + }catch (Exception e) { + e.printStackTrace(); + }finally { + try { + if (os != null) { + os.flush(); + os.close(); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + /** + * 鐢熸垚娴佺▼鍥� + * + * @param procInsId 浠诲姟ID + */ + @RequestMapping("/flowViewer/{procInsId}") + public Result getFlowViewer(@PathVariable("procInsId") String procInsId) { + return Result.OK(flowTaskService.getFlowViewer(procInsId)); + } + /** + * 鐢熸垚娴佺▼鍥� + * + * @param dataId 浠诲姟鏁版嵁ID + */ + @RequestMapping("/flowViewerByDataId/{dataId}") + public Result getFlowViewerByDataId(@PathVariable("dataId") String dataId) { + return Result.OK(flowTaskService.getFlowViewerByDataId(dataId)); + } +} -- Gitblit v1.9.3