wangting
2023-08-07 db860f9c08a23fe916121a2c76001e05d2acee3e
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/VCIFlowserviceImpl.java
@@ -18,13 +18,18 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.vci.ubcs.flow.core.constant.ProcessConstant;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.dto.ProcessStageAttrDTO;
import com.vci.ubcs.flow.core.entity.BladeFlow;
import com.vci.ubcs.flow.core.entity.FlowTaskUser;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import com.vci.ubcs.flow.core.utils.TaskUtil;
import com.vci.ubcs.flow.engine.entity.*;
import com.vci.ubcs.flow.engine.service.FlowEngineService;
import com.vci.ubcs.flow.engine.service.FlowTaskUserService;
import com.vci.ubcs.flow.engine.service.ProcessStageAttrService;
import com.vci.ubcs.flow.engine.service.VICFlowService;
import com.vci.ubcs.starter.web.util.BeanUtil;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
@@ -62,6 +67,8 @@
   private final ProcessStageAttrService processStageAttrService;
   private static String MODELKEY = "modelKey";//前端传过来的模型key
   private static String TASKID = "taskId";//前端传过来的模型key
   private static String PROCESSINSTANCEID = "processInstanceId";//前端传过来的模型key
   @Override
   public R<BladeFlow> startProcess(FlowTaskDTO flowTaskUserC){
      Map<String, Object> kvv = flowTaskUserC.getVariables();
@@ -228,16 +235,26 @@
         flowTaskDTO.setVariables(variables);
      }
      String templateId = variables.get("templateId").toString();
      //流程阶段
      Map<String, Object> m = new HashMap<>();
      String templateId = variables.get("templateId").toString();
      m.put("template_id", templateId);
      m.put("task_id", crruentActivityId);
      m.put("model_key", modelKey);
      QueryWrapper q = Condition.getQueryWrapper(m, ProcessStageAttr.class)
         .select("attr_id attrId,attr_name attrName,attr_group attrGroup");
      List<ProcessStageAttr> stageAttrs = processStageAttrService.list(q);
      flowTaskDTO.setStageAttrs(stageAttrs);
      List<ProcessStageAttrDTO> stageAttrsDto = new ArrayList<>();
      stageAttrs.stream().forEach(e->{
         ProcessStageAttrDTO dto = new ProcessStageAttrDTO();
         BeanUtil.convert(e,dto);
         stageAttrsDto.add(dto);
      });
      flowTaskDTO.setStageAttrs(stageAttrsDto);
      //放入流程阶段、流程modelkey
      variables.put(TASKID,crruentActivityId);
      variables.put(PROCESSINSTANCEID,processInstanceId);
      return flowTaskDTO;
   }
}