From e6bfd5bf0a7ddd855a0f5f42d64a18380b4d0eeb Mon Sep 17 00:00:00 2001 From: hewenqiang <1527468660@qq.com> Date: Fri, 11 Feb 2022 10:58:39 +0800 Subject: [PATCH] =?UTF-8?q?fix=20--=20=E4=BC=98=E5=8C=96=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E6=96=B9=E6=B3=95=EF=BC=8C=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E5=93=8D=E5=BA=94=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workflow/FlowTaskController.java | 32 ++++++----- .../workflow/service/IFlowTaskService.java | 32 ++++++----- .../service/impl/FlowTaskServiceImpl.java | 56 ++++++++----------- .../views/workflow/task/finished/index.vue | 4 +- .../src/views/workflow/task/process/index.vue | 4 +- .../src/views/workflow/task/todo/index.vue | 4 +- 6 files changed, 64 insertions(+), 68 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/workflow/FlowTaskController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/workflow/FlowTaskController.java index 5047e600..b7e08937 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/workflow/FlowTaskController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/workflow/FlowTaskController.java @@ -1,6 +1,8 @@ package com.ruoyi.web.controller.workflow; +import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.workflow.domain.dto.FlowTaskDto; import com.ruoyi.workflow.domain.vo.FlowTaskVo; import com.ruoyi.workflow.service.IFlowTaskService; @@ -35,42 +37,41 @@ public class FlowTaskController { @ApiOperation(value = "我发起的流程", response = FlowTaskDto.class) @GetMapping(value = "/myProcess") - public R myProcess(@ApiParam(value = "当前页码", required = true) @RequestParam Integer pageNum, - @ApiParam(value = "每页条数", required = true) @RequestParam Integer pageSize) { - return flowTaskService.myProcess(pageNum, pageSize); + public TableDataInfo myProcess(PageQuery pageQuery) { + return flowTaskService.myProcess(pageQuery); } @ApiOperation(value = "取消申请", response = FlowTaskDto.class) @PostMapping(value = "/stopProcess") public R stopProcess(@RequestBody FlowTaskVo flowTaskVo) { - return flowTaskService.stopProcess(flowTaskVo); + flowTaskService.stopProcess(flowTaskVo); + return R.ok(); } @ApiOperation(value = "撤回流程", response = FlowTaskDto.class) @PostMapping(value = "/revokeProcess") public R revokeProcess(@RequestBody FlowTaskVo flowTaskVo) { - return flowTaskService.revokeProcess(flowTaskVo); + flowTaskService.revokeProcess(flowTaskVo); + return R.ok(); } @ApiOperation(value = "获取待办列表", response = FlowTaskDto.class) @GetMapping(value = "/todoList") - public R todoList(@ApiParam(value = "当前页码", required = true) @RequestParam Integer pageNum, - @ApiParam(value = "每页条数", required = true) @RequestParam Integer pageSize) { - return flowTaskService.todoList(pageNum, pageSize); + public TableDataInfo todoList(PageQuery pageQuery) { + return flowTaskService.todoList(pageQuery); } @ApiOperation(value = "获取已办任务", response = FlowTaskDto.class) @GetMapping(value = "/finishedList") - public R finishedList(@ApiParam(value = "当前页码", required = true) @RequestParam Integer pageNum, - @ApiParam(value = "每页条数", required = true) @RequestParam Integer pageSize) { - return flowTaskService.finishedList(pageNum, pageSize); + public TableDataInfo finishedList(PageQuery pageQuery) { + return flowTaskService.finishedList(pageQuery); } @ApiOperation(value = "流程历史流转记录", response = FlowTaskDto.class) @GetMapping(value = "/flowRecord") public R flowRecord(String procInsId, String deployId) { - return flowTaskService.flowRecord(procInsId,deployId); + return R.ok(flowTaskService.flowRecord(procInsId, deployId)); } @ApiOperation(value = "获取流程变量", response = FlowTaskDto.class) @@ -82,7 +83,8 @@ public class FlowTaskController { @ApiOperation(value = "审批任务") @PostMapping(value = "/complete") public R complete(@RequestBody FlowTaskVo flowTaskVo) { - return flowTaskService.complete(flowTaskVo); + flowTaskService.complete(flowTaskVo); + return R.ok(); } @@ -103,7 +105,7 @@ public class FlowTaskController { @ApiOperation(value = "获取所有可回退的节点") @PostMapping(value = "/returnList") public R findReturnTaskList(@RequestBody FlowTaskVo flowTaskVo) { - return flowTaskService.findReturnTaskList(flowTaskVo); + return R.ok(flowTaskService.findReturnTaskList(flowTaskVo)); } @ApiOperation(value = "删除任务") @@ -186,6 +188,6 @@ public class FlowTaskController { */ @RequestMapping("/flowViewer/{procInsId}") public R getFlowViewer(@PathVariable("procInsId") String procInsId) { - return flowTaskService.getFlowViewer(procInsId); + return R.ok(flowTaskService.getFlowViewer(procInsId)); } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/workflow/service/IFlowTaskService.java b/ruoyi-system/src/main/java/com/ruoyi/workflow/service/IFlowTaskService.java index 1bc1ecf1..20a5c2f3 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/workflow/service/IFlowTaskService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/workflow/service/IFlowTaskService.java @@ -1,10 +1,17 @@ package com.ruoyi.workflow.service; +import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.workflow.domain.dto.FlowTaskDto; import com.ruoyi.workflow.domain.vo.FlowTaskVo; +import com.ruoyi.workflow.domain.vo.FlowViewerVo; +import org.flowable.bpmn.model.UserTask; import org.flowable.task.api.Task; import java.io.InputStream; +import java.util.List; +import java.util.Map; /** * @author XuanXuan @@ -17,7 +24,7 @@ public interface IFlowTaskService { * * @param task 请求实体参数 */ - R complete(FlowTaskVo task); + void complete(FlowTaskVo task); /** * 驳回任务 @@ -40,7 +47,7 @@ public interface IFlowTaskService { * @param flowTaskVo * @return */ - R findReturnTaskList(FlowTaskVo flowTaskVo); + List findReturnTaskList(FlowTaskVo flowTaskVo); /** * 删除任务 @@ -80,45 +87,40 @@ public interface IFlowTaskService { /** * 我发起的流程 - * @param pageNum - * @param pageSize + * * @return */ - R myProcess(Integer pageNum, Integer pageSize); + TableDataInfo myProcess(PageQuery pageQuery); /** * 取消申请 * @param flowTaskVo * @return */ - R stopProcess(FlowTaskVo flowTaskVo); + void stopProcess(FlowTaskVo flowTaskVo); /** * 撤回流程 * @param flowTaskVo * @return */ - R revokeProcess(FlowTaskVo flowTaskVo); + void revokeProcess(FlowTaskVo flowTaskVo); /** * 代办任务列表 * - * @param pageNum 当前页码 - * @param pageSize 每页条数 * @return */ - R todoList(Integer pageNum, Integer pageSize); + TableDataInfo todoList(PageQuery pageQuery); /** * 已办任务列表 * - * @param pageNum 当前页码 - * @param pageSize 每页条数 * @return */ - R finishedList(Integer pageNum, Integer pageSize); + TableDataInfo finishedList(PageQuery pageQuery); /** * 流程历史流转记录 @@ -126,7 +128,7 @@ public interface IFlowTaskService { * @param procInsId 流程实例Id * @return */ - R flowRecord(String procInsId, String deployId); + Map flowRecord(String procInsId, String deployId); /** * 根据任务ID查询挂载的表单信息 @@ -148,7 +150,7 @@ public interface IFlowTaskService { * @param procInsId * @return */ - R getFlowViewer(String procInsId); + FlowViewerVo getFlowViewer(String procInsId); /** * 获取流程变量 diff --git a/ruoyi-system/src/main/java/com/ruoyi/workflow/service/impl/FlowTaskServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/workflow/service/impl/FlowTaskServiceImpl.java index 62da1f90..90bdea91 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/workflow/service/impl/FlowTaskServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/workflow/service/impl/FlowTaskServiceImpl.java @@ -4,9 +4,12 @@ package com.ruoyi.workflow.service.impl; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.google.common.collect.Lists; +import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.domain.entity.SysRole; import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.helper.LoginHelper; import com.ruoyi.common.utils.JsonUtils; import com.ruoyi.flowable.common.constant.ProcessConstants; @@ -86,10 +89,10 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask */ @Transactional(rollbackFor = Exception.class) @Override - public R complete(FlowTaskVo taskVo) { + public void complete(FlowTaskVo taskVo) { Task task = taskService.createTaskQuery().taskId(taskVo.getTaskId()).singleResult(); if (Objects.isNull(task)) { - return R.fail("任务不存在"); + throw new ServiceException("任务不存在"); } if (DelegationState.PENDING.equals(task.getDelegationState())) { taskService.addComment(taskVo.getTaskId(), taskVo.getInstanceId(), FlowComment.DELEGATE.getType(), taskVo.getComment()); @@ -104,7 +107,6 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask taskService.complete(taskVo.getTaskId()); } } - return R.ok(); } /** @@ -318,7 +320,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask * @return */ @Override - public R findReturnTaskList(FlowTaskVo flowTaskVo) { + public List findReturnTaskList(FlowTaskVo flowTaskVo) { // 当前任务 task Task task = taskService.createTaskQuery().taskId(flowTaskVo.getTaskId()).singleResult(); // 获取流程定义信息 @@ -349,7 +351,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask userTaskList.retainAll(road); } } - return R.ok(userTaskList); + return userTaskList; } /** @@ -411,19 +413,18 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask /** * 我发起的流程 * - * @param pageNum - * @param pageSize * @return */ @Override - public R myProcess(Integer pageNum, Integer pageSize) { + public TableDataInfo myProcess(PageQuery pageQuery) { Page page = new Page<>(); Long userId = LoginHelper.getUserId(); HistoricProcessInstanceQuery historicProcessInstanceQuery = historyService.createHistoricProcessInstanceQuery() .startedBy(userId.toString()) .orderByProcessInstanceStartTime() .desc(); - List historicProcessInstances = historicProcessInstanceQuery.listPage(pageNum - 1, pageSize); + List historicProcessInstances = historicProcessInstanceQuery + .listPage(pageQuery.getPageNum() - 1, pageQuery.getPageSize()); page.setTotal(historicProcessInstanceQuery.count()); List flowList = new ArrayList<>(); for (HistoricProcessInstance hisIns : historicProcessInstances) { @@ -461,7 +462,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask flowList.add(flowTask); } page.setRecords(flowList); - return R.ok(page); + return TableDataInfo.build(page); } /** @@ -471,7 +472,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask * @return */ @Override - public R stopProcess(FlowTaskVo flowTaskVo) { + public void stopProcess(FlowTaskVo flowTaskVo) { List task = taskService.createTaskQuery().processInstanceId(flowTaskVo.getInstanceId()).list(); if (CollectionUtils.isEmpty(task)) { throw new RuntimeException("流程未启动或已执行完成,取消申请失败"); @@ -496,8 +497,6 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask endId).changeState(); } } - - return R.ok(); } /** @@ -507,7 +506,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask * @return */ @Override - public R revokeProcess(FlowTaskVo flowTaskVo) { + public void revokeProcess(FlowTaskVo flowTaskVo) { Task task = taskService.createTaskQuery().processInstanceId(flowTaskVo.getInstanceId()).singleResult(); if (task == null) { throw new RuntimeException("流程未启动或已执行完成,无法撤回"); @@ -553,20 +552,15 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask //记录原活动方向 List oriSequenceFlows = new ArrayList<>(flowNode.getOutgoingFlows()); - - - return R.ok(); } /** * 代办任务列表 * - * @param pageNum 当前页码 - * @param pageSize 每页条数 * @return */ @Override - public R todoList(Integer pageNum, Integer pageSize) { + public TableDataInfo todoList(PageQuery pageQuery) { Page page = new Page<>(); Long userId = LoginHelper.getUserId(); TaskQuery taskQuery = taskService.createTaskQuery() @@ -575,7 +569,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask .taskCandidateOrAssigned(userId.toString()) .orderByTaskCreateTime().desc(); page.setTotal(taskQuery.count()); - List taskList = taskQuery.listPage(pageNum - 1, pageSize); + List taskList = taskQuery.listPage(pageQuery.getPageNum() - 1, pageQuery.getPageSize()); List flowList = new ArrayList<>(); for (Task task : taskList) { FlowTaskDto flowTask = new FlowTaskDto(); @@ -607,19 +601,17 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask } page.setRecords(flowList); - return R.ok(page); + return TableDataInfo.build(page); } /** * 已办任务列表 * - * @param pageNum 当前页码 - * @param pageSize 每页条数 * @return */ @Override - public R finishedList(Integer pageNum, Integer pageSize) { + public TableDataInfo finishedList(PageQuery pageQuery) { Page page = new Page<>(); Long userId = LoginHelper.getUserId(); HistoricTaskInstanceQuery taskInstanceQuery = historyService.createHistoricTaskInstanceQuery() @@ -628,7 +620,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask .taskAssignee(userId.toString()) .orderByHistoricTaskInstanceEndTime() .desc(); - List historicTaskInstanceList = taskInstanceQuery.listPage(pageNum - 1, pageSize); + List historicTaskInstanceList = taskInstanceQuery.listPage(pageQuery.getPageNum() - 1, pageQuery.getPageSize()); List hisTaskList = Lists.newArrayList(); for (HistoricTaskInstance histTask : historicTaskInstanceList) { FlowTaskDto flowTask = new FlowTaskDto(); @@ -667,7 +659,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask // Map result = new HashMap<>(); // result.put("result",page); // result.put("finished",true); - return R.ok(page); + return TableDataInfo.build(page); } private static Predicate distinctByKey(Function keyExtractor) { @@ -682,7 +674,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask * @return */ @Override - public R flowRecord(String procInsId, String deployId) { + public Map flowRecord(String procInsId, String deployId) { Map map = new HashMap<>(); if (StringUtils.isNotBlank(procInsId)) { List list = historyService @@ -748,11 +740,11 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask if (StringUtils.isNotBlank(deployId)) { SysForm sysForm = sysInstanceFormService.selectSysDeployFormByDeployId(deployId); if (Objects.isNull(sysForm)) { - return R.fail("请先配置流程表单"); + throw new ServiceException("请先配置流程表单"); } map.put("formData", JsonUtils.parseObject(sysForm.getFormContent(), Map.class)); } - return R.ok(map); + return map; } /** @@ -822,7 +814,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask * @return */ @Override - public R getFlowViewer(String procInsId) { + public FlowViewerVo getFlowViewer(String procInsId) { // 构建查询条件 HistoricActivityInstanceQuery query = historyService.createHistoricActivityInstanceQuery() .processInstanceId(procInsId); @@ -835,7 +827,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask .stream().distinct().map(HistoricActivityInstance::getActivityId) .collect(Collectors.toList()); // 构建视图类 - return R.ok(new FlowViewerVo(finishedTaskList, unfinishedTaskList)); + return new FlowViewerVo(finishedTaskList, unfinishedTaskList); } /** diff --git a/ruoyi-ui/src/views/workflow/task/finished/index.vue b/ruoyi-ui/src/views/workflow/task/finished/index.vue index e7ce68f1..f336a937 100644 --- a/ruoyi-ui/src/views/workflow/task/finished/index.vue +++ b/ruoyi-ui/src/views/workflow/task/finished/index.vue @@ -138,8 +138,8 @@ export default { getList() { this.loading = true; finishedList(this.queryParams).then(response => { - this.finishedList = response.data.records; - this.total = response.data.total; + this.finishedList = response.rows; + this.total = response.total; this.loading = false; }); }, diff --git a/ruoyi-ui/src/views/workflow/task/process/index.vue b/ruoyi-ui/src/views/workflow/task/process/index.vue index 684353ed..ad3d4fd8 100644 --- a/ruoyi-ui/src/views/workflow/task/process/index.vue +++ b/ruoyi-ui/src/views/workflow/task/process/index.vue @@ -215,8 +215,8 @@ export default { getList() { this.loading = true; myProcessList(this.queryParams).then(response => { - this.myProcessList = response.data.records; - this.total = response.data.total; + this.myProcessList = response.rows; + this.total = response.total; this.loading = false; }); }, diff --git a/ruoyi-ui/src/views/workflow/task/todo/index.vue b/ruoyi-ui/src/views/workflow/task/todo/index.vue index 66a2f7af..f01b4e2b 100644 --- a/ruoyi-ui/src/views/workflow/task/todo/index.vue +++ b/ruoyi-ui/src/views/workflow/task/todo/index.vue @@ -135,8 +135,8 @@ export default { getList() { this.loading = true; todoList(this.queryParams).then(response => { - this.todoList = response.data.records; - this.total = response.data.total; + this.todoList = response.rows; + this.total = response.total; this.loading = false; }); },