| | |
| | | package org.dromara.workflow.controller; |
| | | |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.convert.Convert; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import lombok.RequiredArgsConstructor; |
| | |
| | | import org.dromara.common.mybatis.core.page.TableDataInfo; |
| | | import org.dromara.common.satoken.utils.LoginHelper; |
| | | import org.dromara.common.web.core.BaseController; |
| | | import org.dromara.workflow.domain.WfTaskBackNode; |
| | | import org.dromara.workflow.domain.bo.*; |
| | | import org.dromara.workflow.domain.vo.TaskVo; |
| | | import org.dromara.workflow.domain.vo.VariableVo; |
| | | import org.dromara.workflow.service.IActTaskService; |
| | | import org.dromara.workflow.utils.WorkflowUtils; |
| | | import org.dromara.workflow.service.IWfTaskBackNodeService; |
| | | import org.dromara.workflow.utils.QueryUtils; |
| | | import org.flowable.engine.TaskService; |
| | | import org.springframework.validation.annotation.Validated; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | |
| | | private final IActTaskService actTaskService; |
| | | |
| | | private final TaskService taskService; |
| | | |
| | | private final IWfTaskBackNodeService iWfTaskBackNodeService; |
| | | |
| | | |
| | | /** |
| | |
| | | @Log(title = "任务管理", businessType = BusinessType.INSERT) |
| | | @RepeatSubmit() |
| | | @PostMapping("/backProcess") |
| | | public R<String> backProcess(@RequestBody BackProcessBo backProcessBo) { |
| | | public R<String> backProcess(@Validated({AddGroup.class}) @RequestBody BackProcessBo backProcessBo) { |
| | | return R.ok(actTaskService.backProcess(backProcessBo)); |
| | | } |
| | | |
| | | /** |
| | | * 获取流程状态 |
| | | * 获取当前任务 |
| | | * |
| | | * @param taskId 任务id |
| | | */ |
| | | @GetMapping("/getBusinessStatus/{taskId}") |
| | | public R<String> getBusinessStatus(@PathVariable String taskId) { |
| | | return R.ok("操作成功", WorkflowUtils.getBusinessStatusByTaskId(taskId)); |
| | | @GetMapping("/getTaskById/{taskId}") |
| | | public R<TaskVo> getTaskById(@PathVariable String taskId) { |
| | | return R.ok(QueryUtils.getTask(taskId)); |
| | | } |
| | | |
| | | |
| | |
| | | public R<Void> updateAssignee(@PathVariable String[] taskIds, @PathVariable String userId) { |
| | | return toAjax(actTaskService.updateAssignee(taskIds, userId)); |
| | | } |
| | | |
| | | /** |
| | | * 查询流程变量 |
| | | * |
| | | * @param taskId 任务id |
| | | */ |
| | | @GetMapping("/getInstanceVariable/{taskId}") |
| | | public R<List<VariableVo>> getProcessInstVariable(@PathVariable String taskId) { |
| | | return R.ok(actTaskService.getInstanceVariable(taskId)); |
| | | } |
| | | |
| | | /** |
| | | * 获取可驳回得任务节点 |
| | | * |
| | | * @param processInstanceId 流程实例id |
| | | */ |
| | | @GetMapping("/getTaskNodeList/{processInstanceId}") |
| | | public R<List<WfTaskBackNode>> getNodeList(@PathVariable String processInstanceId) { |
| | | return R.ok(CollUtil.reverse(iWfTaskBackNodeService.getListByInstanceId(processInstanceId))); |
| | | } |
| | | } |