核心信息提取
This commit is contained in:
@@ -22,6 +22,7 @@ import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.supervision.api.BusinessCommonFeignClient;
|
||||
import com.njcn.user.api.DeptFeignClient;
|
||||
import com.njcn.user.api.UserFeignClient;
|
||||
import com.njcn.user.pojo.po.Dept;
|
||||
@@ -60,6 +61,8 @@ public class BpmProcessInstanceController extends BaseController {
|
||||
@Resource
|
||||
private IBpmProcessInstanceService processInstanceService;
|
||||
@Resource
|
||||
private BusinessCommonFeignClient businessCommonFeignClient;
|
||||
@Resource
|
||||
private IBpmTaskService taskService;
|
||||
@Resource
|
||||
private IBpmProcessDefinitionService processDefinitionService;
|
||||
|
||||
@@ -16,6 +16,7 @@ import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.supervision.api.BusinessCommonFeignClient;
|
||||
import com.njcn.user.api.DeptFeignClient;
|
||||
import com.njcn.user.api.UserFeignClient;
|
||||
import com.njcn.user.pojo.po.Dept;
|
||||
@@ -58,6 +59,9 @@ public class BpmTaskController extends BaseController {
|
||||
@Resource
|
||||
private IBpmTaskService taskService;
|
||||
|
||||
@Resource
|
||||
private BusinessCommonFeignClient businessCommonFeignClient;
|
||||
|
||||
@Resource
|
||||
private IBpmProcessInstanceService processInstanceService;
|
||||
|
||||
@@ -86,7 +90,7 @@ public class BpmTaskController extends BaseController {
|
||||
convertSet(pageResult.getList(), Task::getProcessInstanceId));
|
||||
List<UserVO> userList = userFeignClient.getUserVOByIdList(convertList(processInstanceMap.values(), ProcessInstance::getStartUserId)).getData();
|
||||
Map<String, UserVO> userMap = CollectionUtils.convertMap(userList, UserVO::getId);
|
||||
PageResult<BpmTaskVO> bpmTaskVOPageResult = BpmTaskConvert.INSTANCE.buildTodoTaskPage(pageResult, processInstanceMap, userMap);
|
||||
PageResult<BpmTaskVO> bpmTaskVOPageResult = BpmTaskConvert.INSTANCE.buildTodoTaskPage(pageResult, processInstanceMap, userMap,businessCommonFeignClient);
|
||||
//封装调整为当前系统的格式
|
||||
Page<BpmTaskVO> page = new Page<>();
|
||||
page.setRecords(bpmTaskVOPageResult.getList());
|
||||
|
||||
@@ -2,10 +2,18 @@ package com.njcn.bpm.utils;
|
||||
|
||||
import cn.hutool.core.map.MapUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.extra.spring.SpringUtil;
|
||||
import com.njcn.bpm.pojo.dto.BpmInstanceInfo;
|
||||
import com.njcn.bpm.pojo.dto.PageResult;
|
||||
import com.njcn.bpm.pojo.po.BpmForm;
|
||||
import com.njcn.bpm.pojo.vo.instance.BpmProcessInstanceVO;
|
||||
import com.njcn.bpm.pojo.vo.task.BpmTaskVO;
|
||||
import com.njcn.bpm.service.IBpmService;
|
||||
import com.njcn.common.pojo.exception.BusinessException;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.supervision.api.BusinessCommonFeignClient;
|
||||
import com.njcn.supervision.enums.SupervisionKeyEnum;
|
||||
import com.njcn.supervision.enums.SupervisionResponseEnum;
|
||||
import com.njcn.user.pojo.po.Dept;
|
||||
import com.njcn.user.pojo.vo.UserVO;
|
||||
import org.flowable.engine.history.HistoricProcessInstance;
|
||||
@@ -15,10 +23,13 @@ import org.flowable.task.api.history.HistoricTaskInstance;
|
||||
import org.flowable.task.service.impl.persistence.entity.TaskEntityImpl;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
import org.springframework.validation.beanvalidation.SpringValidatorAdapter;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
|
||||
import static com.njcn.bpm.utils.CollectionUtils.*;
|
||||
import static com.njcn.bpm.utils.MapUtils.findAndThen;
|
||||
@@ -34,9 +45,12 @@ public interface BpmTaskConvert {
|
||||
|
||||
BpmTaskConvert INSTANCE = Mappers.getMapper(BpmTaskConvert.class);
|
||||
|
||||
|
||||
|
||||
default PageResult<BpmTaskVO> buildTodoTaskPage(PageResult<Task> pageResult,
|
||||
Map<String, ProcessInstance> processInstanceMap,
|
||||
Map<String, UserVO> userMap) {
|
||||
Map<String, UserVO> userMap,
|
||||
BusinessCommonFeignClient businessCommonFeignClient) {
|
||||
|
||||
return BeanUtils.toBean(pageResult, BpmTaskVO.class, taskVO -> {
|
||||
ProcessInstance processInstance = processInstanceMap.get(taskVO.getProcessInstanceId());
|
||||
@@ -46,11 +60,21 @@ public interface BpmTaskConvert {
|
||||
taskVO.setProcessInstance(BeanUtils.toBean(processInstance, BpmTaskVO.ProcessInstance.class));
|
||||
UserVO startUserVO = userMap.get(processInstance.getStartUserId());
|
||||
taskVO.getProcessInstance().setStartUser(BeanUtils.toBean(startUserVO, BpmProcessInstanceVO.User.class));
|
||||
String processDefinitionId = taskVO.getProcessInstance().getProcessDefinitionId();
|
||||
String key = processDefinitionId.substring(0,processDefinitionId.lastIndexOf(":"));
|
||||
key = key.substring(0,key.lastIndexOf(":"));
|
||||
BpmInstanceInfo instanceInfo = businessCommonFeignClient.getInstanceInfo(key, processInstance.getBusinessKey()).getData();
|
||||
if(Objects.nonNull(instanceInfo)){
|
||||
taskVO.setHistoryInstanceId(instanceInfo.getHistoryInstanceId());
|
||||
taskVO.setInstanceSign(instanceInfo.getInstanceSign());
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
default PageResult<BpmTaskVO> buildTaskPage(PageResult<HistoricTaskInstance> pageResult,
|
||||
Map<String, HistoricProcessInstance> processInstanceMap,
|
||||
Map<String, UserVO> userMap,
|
||||
|
||||
Reference in New Issue
Block a user