Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
0bb5f749e4
12 files changed
+258
-130
No files matched your search
+38
-4
@@ -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);
|
||||
}
|
||||
|
||||
}
|
||||
+116
-93
@@ -20,110 +20,133 @@ import java.util.Map;
|
||||
@FeignClient(contextId = "remoteFlowEngineService", value = ServiceNameConstants.FLOW_ENGINE_SERVER)
|
||||
public interface RemoteFlowEngineService {
|
||||
|
||||
/**
|
||||
* 查询任务变量
|
||||
* @param variableQueryParamDto 变量查询参数
|
||||
* @return 任务变量结果
|
||||
*/
|
||||
@PostMapping("/task/queryTaskVariables")
|
||||
R<Map<String, Object>> queryTaskVariables(@RequestBody VariableQueryParamDto variableQueryParamDto);
|
||||
/**
|
||||
* 查询任务变量
|
||||
*
|
||||
* @param variableQueryParamDto 变量查询参数
|
||||
* @return 任务变量结果
|
||||
*/
|
||||
@PostMapping("/task/queryTaskVariables")
|
||||
R<Map<String, Object>> queryTaskVariables(@RequestBody VariableQueryParamDto variableQueryParamDto);
|
||||
|
||||
/**
|
||||
* 查询简单数据
|
||||
* @param userId 用户ID
|
||||
* @return 索引页统计数据
|
||||
*/
|
||||
@GetMapping("/process-instance/querySimpleData")
|
||||
R<IndexPageStatistics> querySimpleData(@RequestParam("userId") Long userId);
|
||||
/**
|
||||
* 查询简单数据
|
||||
*
|
||||
* @param userId 用户ID
|
||||
* @return 索引页统计数据
|
||||
*/
|
||||
@GetMapping("/process-instance/querySimpleData")
|
||||
R<IndexPageStatistics> querySimpleData(@RequestParam("userId") Long userId);
|
||||
|
||||
/**
|
||||
* 创建流程
|
||||
* @param map 流程JSON对象
|
||||
* @return 创建流程结果
|
||||
*/
|
||||
@PostMapping("/flow/create")
|
||||
R<String> createFlow(@RequestBody Map<String, Object> map);
|
||||
/**
|
||||
* 创建流程
|
||||
*
|
||||
* @param map 流程JSON对象
|
||||
* @return 创建流程结果
|
||||
*/
|
||||
@PostMapping("/flow/create")
|
||||
R<String> createFlow(@RequestBody Map<String, Object> map);
|
||||
|
||||
/**
|
||||
* 启动流程实例
|
||||
* @param processInstanceParamDto 流程实例参数
|
||||
* @return 启动流程结果
|
||||
*/
|
||||
@NoToken
|
||||
@PostMapping("/flow/start")
|
||||
R<String> startProcess(@RequestBody ProcessInstanceParamDto processInstanceParamDto);
|
||||
/**
|
||||
* 启动流程实例
|
||||
*
|
||||
* @param processInstanceParamDto 流程实例参数
|
||||
* @return 启动流程结果
|
||||
*/
|
||||
@NoToken
|
||||
@PostMapping("/flow/start")
|
||||
R<String> startProcess(@RequestBody ProcessInstanceParamDto processInstanceParamDto);
|
||||
|
||||
/**
|
||||
* 查询待办任务
|
||||
* @param paramDto 任务查询参数
|
||||
* @return 待办任务列表
|
||||
*/
|
||||
@PostMapping("/flow/queryAssignTask")
|
||||
R<Page<TaskDto>> queryAssignTask(@RequestBody TaskQueryParamDto paramDto);
|
||||
/**
|
||||
* 查询待办任务
|
||||
*
|
||||
* @param paramDto 任务查询参数
|
||||
* @return 待办任务列表
|
||||
*/
|
||||
@PostMapping("/flow/queryAssignTask")
|
||||
R<Page<TaskDto>> queryAssignTask(@RequestBody TaskQueryParamDto paramDto);
|
||||
|
||||
/**
|
||||
* 查询已完成任务
|
||||
* @param paramDto 任务查询参数
|
||||
* @return 已完成任务列表
|
||||
*/
|
||||
@PostMapping("/flow/queryCompletedTask")
|
||||
R<Page<TaskDto>> queryCompletedTask(@RequestBody TaskQueryParamDto paramDto);
|
||||
/**
|
||||
* 根据processInstanceId和当前登录用户id查询待办任务
|
||||
*
|
||||
* @param processInstanceId
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/flow/queryAssignTaskOne")
|
||||
R<TaskDto> queryAssignTaskOne(@RequestParam String processInstanceId);
|
||||
|
||||
/**
|
||||
* 完成任务
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 完成任务结果
|
||||
*/
|
||||
@PostMapping("/task/complete")
|
||||
R<String> completeTask(@RequestBody TaskParamDto taskParamDto);
|
||||
|
||||
/**
|
||||
* 设置任务负责人
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 设置负责人结果
|
||||
*/
|
||||
@PostMapping("/task/transferTask")
|
||||
R<String> transferTask(@RequestBody TaskParamDto taskParamDto);
|
||||
/**
|
||||
* 查询已完成任务
|
||||
*
|
||||
* @param paramDto 任务查询参数
|
||||
* @return 已完成任务列表
|
||||
*/
|
||||
@PostMapping("/flow/queryCompletedTask")
|
||||
R<Page<TaskDto>> queryCompletedTask(@RequestBody TaskQueryParamDto paramDto);
|
||||
|
||||
/**
|
||||
* 停止流程实例
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 停止流程实例结果
|
||||
*/
|
||||
@PostMapping("/flow/stopProcessInstance")
|
||||
R<String> stopProcessInstance(@RequestBody TaskParamDto taskParamDto);
|
||||
/**
|
||||
* 完成任务
|
||||
*
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 完成任务结果
|
||||
*/
|
||||
@PostMapping("/task/complete")
|
||||
R<String> completeTask(@RequestBody TaskParamDto taskParamDto);
|
||||
|
||||
/**
|
||||
* 解决任务
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 解决任务结果
|
||||
*/
|
||||
@PostMapping("/task/resolveTask")
|
||||
R<String> resolveTask(@RequestBody TaskParamDto taskParamDto);
|
||||
/**
|
||||
* 设置任务负责人
|
||||
*
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 设置负责人结果
|
||||
*/
|
||||
@PostMapping("/task/transferTask")
|
||||
R<String> transferTask(@RequestBody TaskParamDto taskParamDto);
|
||||
|
||||
/**
|
||||
* 退回任务
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 退回任务结果
|
||||
*/
|
||||
@PostMapping("/task/back")
|
||||
R<String> back(@RequestBody TaskParamDto taskParamDto);
|
||||
/**
|
||||
* 停止流程实例
|
||||
*
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 停止流程实例结果
|
||||
*/
|
||||
@PostMapping("/flow/stopProcessInstance")
|
||||
R<String> stopProcessInstance(@RequestBody TaskParamDto taskParamDto);
|
||||
|
||||
/**
|
||||
* 委派任务
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 委派任务结果
|
||||
*/
|
||||
@PostMapping("/task/delegateTask")
|
||||
R<String> delegateTask(@RequestBody TaskParamDto taskParamDto);
|
||||
/**
|
||||
* 解决任务
|
||||
*
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 解决任务结果
|
||||
*/
|
||||
@PostMapping("/task/resolveTask")
|
||||
R<String> resolveTask(@RequestBody TaskParamDto taskParamDto);
|
||||
|
||||
/**
|
||||
* 查询任务
|
||||
* @param taskId 任务ID
|
||||
* @param userId 用户ID
|
||||
* @return 任务查询结果
|
||||
*/
|
||||
@GetMapping("/task/engine/queryTask")
|
||||
R<TaskResultDto> queryTask(@RequestParam("taskId") String taskId, @RequestParam("userId") Long userId);
|
||||
/**
|
||||
* 退回任务
|
||||
*
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 退回任务结果
|
||||
*/
|
||||
@PostMapping("/task/back")
|
||||
R<String> back(@RequestBody TaskParamDto taskParamDto);
|
||||
|
||||
/**
|
||||
* 委派任务
|
||||
*
|
||||
* @param taskParamDto 任务参数
|
||||
* @return 委派任务结果
|
||||
*/
|
||||
@PostMapping("/task/delegateTask")
|
||||
R<String> delegateTask(@RequestBody TaskParamDto taskParamDto);
|
||||
|
||||
/**
|
||||
* 查询任务
|
||||
*
|
||||
* @param taskId 任务ID
|
||||
* @param userId 用户ID
|
||||
* @return 任务查询结果
|
||||
*/
|
||||
@GetMapping("/task/engine/queryTask")
|
||||
R<TaskResultDto> queryTask(@RequestParam("taskId") String taskId, @RequestParam("userId") Long userId);
|
||||
|
||||
}
|
||||
+11
@@ -3,6 +3,7 @@ package com.bsd.pjcloud.flow.task.dto;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 用户任务查询参数
|
||||
@@ -40,4 +41,14 @@ public class TaskQueryParamDto {
|
||||
*/
|
||||
private Integer status;
|
||||
|
||||
/**
|
||||
* 流程实例ids
|
||||
*/
|
||||
private List<String> processInstanceIds;
|
||||
|
||||
/**
|
||||
* 是否只查询激活状态的任务
|
||||
*/
|
||||
private Boolean isActive = false;
|
||||
|
||||
}
|
||||
+6
@@ -55,6 +55,12 @@ public class ProcessInstanceController {
|
||||
return processInstanceService.queryMineTask(queryParamDto);
|
||||
}
|
||||
|
||||
@SneakyThrows
|
||||
@GetMapping("/queryAssignTaskOne")
|
||||
public R queryAssignTaskOne(@RequestParam String processInstanceId) {
|
||||
return processInstanceService.queryAssignTaskOne(processInstanceId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询当前登录用户已办任务
|
||||
* @param taskQueryParamDto
|
||||
|
||||
+1
@@ -66,4 +66,5 @@ public interface IProcessInstanceService {
|
||||
*/
|
||||
R detail(String processInstanceId);
|
||||
|
||||
R queryAssignTaskOne(String processInstanceId);
|
||||
}
|
||||
+4
@@ -443,4 +443,8 @@ public class ProcessInstanceServiceImpl implements IProcessInstanceService {
|
||||
return R.ok(set);
|
||||
}
|
||||
|
||||
@Override
|
||||
public R queryAssignTaskOne(String processInstanceId) {
|
||||
return flowEngineService.queryAssignTaskOne(processInstanceId);
|
||||
}
|
||||
}
|
||||
+4
@@ -12,4 +12,8 @@ public class WalletRechargeApplyDto extends WalletRechargeApplyEntity {
|
||||
|
||||
private List<Long> walletTypeIds;
|
||||
|
||||
/**
|
||||
* 审批相关
|
||||
*/
|
||||
private Boolean isFindCheckUser = false;
|
||||
}
|
||||
-1
@@ -58,5 +58,4 @@ public class WalletDataUtil {
|
||||
v.setWalletActiveBindStatus(vo.getActiveBindStatus());
|
||||
return v;
|
||||
}
|
||||
|
||||
}
|
||||
+5
@@ -33,4 +33,9 @@ public class WalletRechargeApplyVo extends WalletRechargeApplyEntity implements
|
||||
*/
|
||||
private String deptName;
|
||||
|
||||
/**
|
||||
* 审批相关
|
||||
*/
|
||||
private Boolean isCheckUser = false;
|
||||
|
||||
}
|
||||
+2
-1
@@ -57,7 +57,7 @@ public class WalletRechargeApplyController {
|
||||
@Operation(summary = "提交申请", description = "提交申请")
|
||||
@SysLog("提交申请")
|
||||
@GetMapping("/apply")
|
||||
@PreAuthorize("@pms.hasPermission('wallet_walletRechargeApply_apply')")
|
||||
@PreAuthorize("@pms.hasPermission('wallet_walletRechargeApply_apply')")
|
||||
public R apply(@RequestParam Long id) {
|
||||
walletRechargeApplyService.apply(id);
|
||||
return R.ok(true);
|
||||
@@ -84,6 +84,7 @@ public class WalletRechargeApplyController {
|
||||
@GetMapping("/page-join")
|
||||
@PreAuthorize("@pms.hasPermission('wallet_walletRechargeApply_view')")
|
||||
public R getWalletRechargeApplyPage(@ParameterObject Page page, @ParameterObject WalletRechargeApplyDto dto) {
|
||||
dto.setIsFindCheckUser(true);
|
||||
return R.ok(walletRechargeApplyService.scopePageList(page, dto));
|
||||
}
|
||||
|
||||
|
||||
+52
-28
@@ -23,9 +23,11 @@ import com.bsd.pjcloud.common.core.util.R;
|
||||
import com.bsd.pjcloud.common.excel.vo.ErrorMessage;
|
||||
import com.bsd.pjcloud.common.security.service.PjcloudUser;
|
||||
import com.bsd.pjcloud.common.security.util.SecurityUtils;
|
||||
import com.bsd.pjcloud.flow.task.api.feign.RemoteFlowEngineService;
|
||||
import com.bsd.pjcloud.flow.task.constant.NodeStatusEnum;
|
||||
import com.bsd.pjcloud.flow.task.constant.TaskCheckStatusEnum;
|
||||
import com.bsd.pjcloud.flow.task.dto.ProcessNodeRecordAssignUserParamDto;
|
||||
import com.bsd.pjcloud.flow.task.dto.TaskDto;
|
||||
import com.bsd.pjcloud.wallet.api.constant.WalletBizEnum;
|
||||
import com.bsd.pjcloud.wallet.api.constant.WalletBizRechargeEnum;
|
||||
import com.bsd.pjcloud.wallet.api.constant.WalletTypeEnum;
|
||||
@@ -86,6 +88,7 @@ public class WalletRechargeApplyServiceImpl extends ServiceImpl<WalletRechargeAp
|
||||
|
||||
private final RemoteUserService userService;
|
||||
private final RemoteDeptService deptService;
|
||||
private final RemoteFlowEngineService flowEngineService;
|
||||
|
||||
private final FlowUtil flowUtil;
|
||||
|
||||
@@ -159,34 +162,7 @@ public class WalletRechargeApplyServiceImpl extends ServiceImpl<WalletRechargeAp
|
||||
@Override
|
||||
public Page<WalletRechargeApplyVo> scopePageList(Page page, WalletRechargeApplyDto dto) {
|
||||
Page<WalletRechargeApplyVo> list = baseMapper.scopePageList(page, dto);
|
||||
if (ObjectUtil.isNotEmpty(list.getRecords())) {
|
||||
// 用户
|
||||
List<Long> userIds = list.getRecords().stream().map(WalletRechargeApplyVo::getUserId).distinct().toList();
|
||||
if (ObjectUtil.isNotEmpty(userIds)) {
|
||||
R<List<SysUser>> userList = userService.getUserById(new ArrayList<>(userIds));
|
||||
if (ObjectUtil.isNotEmpty(userList.getData())) {
|
||||
DataUtil.convertUserList(list.getRecords(), CollectionUtils.convertMap(userList.getData(), SysUser::getUserId));
|
||||
}
|
||||
}
|
||||
// 部门
|
||||
List<Long> deptIds = list.getRecords().stream().map(WalletRechargeApplyVo::getDeptId).distinct().toList();
|
||||
if (ObjectUtil.isNotEmpty(deptIds)) {
|
||||
R<Map<Long, SysDept>> deptList = deptService.getDeptByDeptIds(deptIds);
|
||||
if (ObjectUtil.isNotEmpty(deptList.getData())) {
|
||||
DataUtil.convertDeptList(list.getRecords(), deptList.getData());
|
||||
}
|
||||
}
|
||||
// 饭卡类型
|
||||
List<Long> walletTypeIds = list.getRecords().stream().map(WalletRechargeApplyVo::getWalletTypeId).distinct().toList();
|
||||
if (ObjectUtil.isNotEmpty(walletTypeIds)) {
|
||||
WalletTypeDto walletTypeDto = new WalletTypeDto();
|
||||
walletTypeDto.setWalletTypeIds(walletTypeIds);
|
||||
List<WalletTypeEntity> walletTypeList = walletTypeMapper.list(walletTypeDto);
|
||||
if (ObjectUtil.isNotEmpty(walletTypeList)) {
|
||||
WalletDataUtil.convertWalletTypeList(list.getRecords(), CollectionUtils.convertMap(walletTypeList, WalletTypeEntity::getId));
|
||||
}
|
||||
}
|
||||
}
|
||||
disposeList(list.getRecords(), dto);
|
||||
return list;
|
||||
}
|
||||
|
||||
@@ -392,6 +368,54 @@ public class WalletRechargeApplyServiceImpl extends ServiceImpl<WalletRechargeAp
|
||||
return result;
|
||||
}
|
||||
|
||||
private void disposeList(List<WalletRechargeApplyVo> list, WalletRechargeApplyDto dto) {
|
||||
if (ObjectUtil.isNotEmpty(list)) {
|
||||
// 用户
|
||||
List<Long> userIds = list.stream().map(WalletRechargeApplyVo::getUserId).distinct().toList();
|
||||
if (ObjectUtil.isNotEmpty(userIds)) {
|
||||
R<List<SysUser>> userList = userService.getUserById(new ArrayList<>(userIds));
|
||||
if (ObjectUtil.isNotEmpty(userList.getData())) {
|
||||
DataUtil.convertUserList(list, CollectionUtils.convertMap(userList.getData(), SysUser::getUserId));
|
||||
}
|
||||
}
|
||||
// 部门
|
||||
List<Long> deptIds = list.stream().map(WalletRechargeApplyVo::getDeptId).distinct().toList();
|
||||
if (ObjectUtil.isNotEmpty(deptIds)) {
|
||||
R<Map<Long, SysDept>> deptList = deptService.getDeptByDeptIds(deptIds);
|
||||
if (ObjectUtil.isNotEmpty(deptList.getData())) {
|
||||
DataUtil.convertDeptList(list, deptList.getData());
|
||||
}
|
||||
}
|
||||
// 饭卡类型
|
||||
List<Long> walletTypeIds = list.stream().map(WalletRechargeApplyVo::getWalletTypeId).distinct().toList();
|
||||
if (ObjectUtil.isNotEmpty(walletTypeIds)) {
|
||||
WalletTypeDto walletTypeDto = new WalletTypeDto();
|
||||
walletTypeDto.setWalletTypeIds(walletTypeIds);
|
||||
List<WalletTypeEntity> walletTypeList = walletTypeMapper.list(walletTypeDto);
|
||||
if (ObjectUtil.isNotEmpty(walletTypeList)) {
|
||||
WalletDataUtil.convertWalletTypeList(list, CollectionUtils.convertMap(walletTypeList, WalletTypeEntity::getId));
|
||||
}
|
||||
}
|
||||
// 审批流程
|
||||
if (dto.getIsFindCheckUser()) {
|
||||
List<String> processInstanceIds = list.stream().map(WalletRechargeApplyVo::getProcessId).filter(ObjectUtil::isNotEmpty).distinct().toList();
|
||||
if (ObjectUtil.isNotEmpty(processInstanceIds)) {
|
||||
List<TaskDto> taskList = flowUtil.queryProcessInstanceList(SecurityUtils.getUser().getId().toString(), processInstanceIds);
|
||||
if (ObjectUtil.isNotEmpty(taskList)) {
|
||||
Map<String, TaskDto> taskMap = CollectionUtils.convertMap(taskList, TaskDto::getProcessInstanceId);
|
||||
CollectionUtils.convertList(list, v -> {
|
||||
TaskDto task = taskMap.get(v.getProcessId());
|
||||
if (ObjectUtil.isNotEmpty(task)) {
|
||||
v.setIsCheckUser(true);
|
||||
}
|
||||
return v;
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isCheckData(Long walletId) {
|
||||
Long count = baseMapper.selectCount(new LambdaQueryWrapper<WalletRechargeApplyEntity>()
|
||||
.eq(WalletRechargeApplyEntity::getUserId, walletId)
|
||||
|
||||
+19
-3
@@ -6,13 +6,17 @@ import cn.hutool.core.lang.Dict;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.bsd.pjcloud.admin.api.entity.SysUser;
|
||||
import com.bsd.pjcloud.common.core.util.R;
|
||||
import com.bsd.pjcloud.common.data.resolver.ParamResolver;
|
||||
import com.bsd.pjcloud.flow.task.api.feign.RemoteFlowApiFlowService;
|
||||
import com.bsd.pjcloud.flow.task.api.feign.RemoteFlowEngineService;
|
||||
import com.bsd.pjcloud.flow.task.constant.NodeUserTypeEnum;
|
||||
import com.bsd.pjcloud.flow.task.dto.ProcessInstanceParamDto;
|
||||
import com.bsd.pjcloud.flow.task.dto.ProcessNodeRecordAssignUserParamDto;
|
||||
import com.bsd.pjcloud.flow.task.dto.TaskDto;
|
||||
import com.bsd.pjcloud.flow.task.dto.TaskQueryParamDto;
|
||||
import com.bsd.pjcloud.flow.task.entity.Process;
|
||||
import com.bsd.pjcloud.flow.task.vo.ProcessVO;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
@@ -21,9 +25,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.*;
|
||||
|
||||
@Validated
|
||||
@Slf4j
|
||||
@@ -34,6 +36,7 @@ public class FlowUtil {
|
||||
static private final String TAG = "钱包审批流工具类";
|
||||
|
||||
private final RemoteFlowApiFlowService flowApiFlowService;
|
||||
private final RemoteFlowEngineService flowEngineService;
|
||||
|
||||
private final ObjectMapper objectMapper;
|
||||
|
||||
@@ -78,6 +81,19 @@ public class FlowUtil {
|
||||
return paramMap;
|
||||
}
|
||||
|
||||
public List<TaskDto> queryProcessInstanceList(String userId, List<String> processInstanceIds) {
|
||||
List<TaskDto> result = new ArrayList<>();
|
||||
TaskQueryParamDto taskQueryParamDto = new TaskQueryParamDto();
|
||||
taskQueryParamDto.setAssign(userId);
|
||||
taskQueryParamDto.setProcessInstanceIds(processInstanceIds);
|
||||
taskQueryParamDto.setIsActive(true);
|
||||
taskQueryParamDto.setCurrent(1);
|
||||
taskQueryParamDto.setSize(processInstanceIds.size() + 10);
|
||||
Page<TaskDto> taskList = flowEngineService.queryAssignTask(taskQueryParamDto).getData();
|
||||
if (ObjectUtil.isEmpty(taskList) || ObjectUtil.isEmpty(taskList.getRecords())) return result;
|
||||
return taskList.getRecords();
|
||||
}
|
||||
|
||||
// 检查回调是否正确
|
||||
public Boolean checkCallback(ProcessNodeRecordAssignUserParamDto dto) {
|
||||
if (!ObjectUtil.isAllNotEmpty(dto, dto.getFlowId())) return false;
|
||||
|
||||
Reference in new issue
Block a user