feat:审批表单加入表格

This commit is contained in:
dzc committed 2025-02-26 20:37:41 +08:00
1 parent 6488502380
commit 35cc925b4f
12 files changed
+258 -130

No files matched your search

@@ -8,7 +8,9 @@ import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.RandomUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bsd.pjcloud.common.security.util.SecurityUtils;
import com.bsd.pjcloud.flow.task.entity.Process;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.bsd.pjcloud.common.core.util.R;
@@ -30,11 +32,9 @@ import org.flowable.engine.history.HistoricActivityInstance;
import org.flowable.engine.history.HistoricActivityInstanceQuery;
import org.flowable.engine.runtime.Execution;
import org.flowable.engine.runtime.ProcessInstance;
import org.flowable.task.api.Task;
import org.flowable.task.api.TaskQuery;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.time.ZoneId;
import java.time.ZonedDateTime;
@@ -250,6 +250,14 @@ public class EngineFlowController {
}
}
if (CollUtil.isNotEmpty(taskQueryParamDto.getProcessInstanceIds()) && StrUtil.isEmpty(taskQueryParamDto.getProcessName())) {
taskQuery.processInstanceIdIn(taskQueryParamDto.getProcessInstanceIds());
}
if (Objects.nonNull(taskQueryParamDto.getIsActive()) && taskQueryParamDto.getIsActive()) {
taskQuery.active();
}
if (ArrayUtil.isNotEmpty(taskQueryParamDto.getTaskTime())) {
ZoneId zoneId = ZoneId.systemDefault();
ZonedDateTime zonedBeforeDateTime = taskQueryParamDto.getTaskTime()[0].atZone(zoneId);
@@ -289,4 +297,30 @@ public class EngineFlowController {
return R.ok(pageResultDto);
}
@GetMapping("/queryAssignTaskOne")
public R<TaskDto> queryAssignTaskOne(@RequestParam String processInstanceId) {
String assign = SecurityUtils.getUser().getId().toString();
TaskQuery taskQuery = taskService.createTaskQuery().taskAssignee(assign).orderByTaskCreateTime().processInstanceId(processInstanceId).active().desc();
long count = taskQuery.count();
if (count != 1) {
log.debug("queryAssignTaskOne查询错误,count!=1,processInstanceId:{}", processInstanceId);
return null;
}
Task task = taskQuery.singleResult();
String taskId = task.getId();
log.debug("queryAssignTaskOne查询错误(taskId) {} processInstanceId={} executrionId={}", task.getName(), processInstanceId, task.getExecutionId());
String taskDefinitionKey = task.getTaskDefinitionKey();
String processDefinitionId = task.getProcessDefinitionId();
String flowId = NodeUtil.getFlowId(processDefinitionId);
TaskDto taskDto = new TaskDto();
taskDto.setFlowId(flowId);
taskDto.setTaskCreateTime(task.getCreateTime());
taskDto.setNodeId(taskDefinitionKey);
taskDto.setProcessInstanceId(processInstanceId);
taskDto.setTaskId(taskId);
taskDto.setAssign(task.getAssignee());
taskDto.setTaskName(task.getName());
return R.ok(taskDto);
}
}