Bläddra i källkod

Merge branch 'huangzqa-fix-20220407' into 'master'

Huangzqa fix 20220407

See merge request dcuc-tjdsj/approve-core!96
ywsb GA+ 3 år sedan
förälder
incheckning
77e7c56e7f

+ 11 - 4
approve-core-service/src/main/java/com/dragonsoft/dcuc/approve/business/impl/WorkFlowBusinessImpl.java

@@ -220,14 +220,21 @@ public class WorkFlowBusinessImpl implements IWorkFlowBusiness {
 
         boolean showBack = false;
         List<String> taskDefinitionKeyList = new ArrayList<>();
-        for (TaskDefinitionVo taskDefinitionVo : outgoingVo.getTaskDefinitionVoList()) {
-            taskDefinitionKeyList.add(taskDefinitionVo.getTaskDefinitionKey());
+        List<TaskDefinitionVo> taskDefinitionVoList = new ArrayList<>();
+        if (outgoingVo != null) {
+            taskDefinitionVoList = outgoingVo.getTaskDefinitionVoList();
+            for (TaskDefinitionVo taskDefinitionVo : outgoingVo.getTaskDefinitionVoList()) {
+                taskDefinitionKeyList.add(taskDefinitionVo.getTaskDefinitionKey());
+            }
         }
 
+
         if (!taskId.equalsIgnoreCase(ApproveConstants.END_STR)) {
-            String historyTaskDefinitionKey;
+            String historyTaskDefinitionKey = "";
             if (pageTypeEnum != null && pageTypeEnum.equals(PageTypeEnum.REQUEST)) {
-                historyTaskDefinitionKey = outgoingVo.getTaskDefinitionVoList().get(0).getTaskDefinitionKey();
+                if (!taskDefinitionVoList.isEmpty()) {
+                    historyTaskDefinitionKey = taskDefinitionVoList.get(0).getTaskDefinitionKey();
+                }
 
             } else {
                 TaskHistoryDetailVo currentTask = workflowClientFactory.getWorkflowTaskClient().queryTaskDetail(taskId);

+ 9 - 1
approve-core-service/src/main/java/com/dragonsoft/dcuc/approve/facade/api/ApiV1ApproveFacade.java

@@ -27,10 +27,12 @@ import com.dragonsoft.duceap.base.entity.http.ResponseStatus;
 import com.dragonsoft.duceap.base.entity.security.BaseSecurityUser;
 import com.dragonsoft.duceap.base.utils.UserContextUtils;
 import com.dragonsoft.duceap.commons.util.enums.EnumUtils;
+import com.dragonsoft.duceap.commons.util.json.JsonUtils;
 import com.dragonsoft.duceap.core.search.Searchable;
 import com.dragonsoft.duceap.core.search.enums.SearchOperator;
 import com.dragonsoft.duceap.core.search.filter.Condition;
 import com.dragonsoft.duceap.duwf.api.model.*;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RestController;
 
@@ -42,6 +44,7 @@ import java.util.Map;
 /**
  * @author huangzqa
  */
+@Slf4j
 @RestController
 public class ApiV1ApproveFacade implements IApiV1ApproveFacade {
     @Autowired
@@ -111,14 +114,19 @@ public class ApiV1ApproveFacade implements IApiV1ApproveFacade {
 
     @Override
     public ResponseDTO<OperateRespVO> approveOperate(ApproveOperateReqVO approveOperateReqVO) {
-
+        log.info("approveOperateReqVO req:{}", JsonUtils.toJSONString(approveOperateReqVO));
         TaskRequest<ApproveTaskRequestVo> taskRequest = new TaskRequest<>();
         ApproveMessage approveMessage = new ApproveMessage();
         approveMessage.setMessage(approveOperateReqVO.getMessage());
         approveMessage.setApproveState(approveOperateReqVO.getOperateType());
         taskRequest.setApproveMessage(approveMessage);
         BaseSecurityUser currentUser = UserContextUtils.getCurrentUser();
+
+        log.info("BaseSecurityUser req:{}", JsonUtils.toJSONString(currentUser));
+
         TaskRequestUserInfoDTO taskRequestUserInfoDTO = TaskRequestUserInfoDTO.parseBaseSecurityUser(currentUser);
+        taskRequestUserInfoDTO.setIdCard(approveOperateReqVO.getIdCard());
+        taskRequestUserInfoDTO.setUserName(approveOperateReqVO.getUserName());
 
         return approveService.approveOperate(approveOperateReqVO.getTaskId(), approveOperateReqVO.getProcessInstanceId(),
                 EnumUtils.enumOf(ApproveWorkFlowOperationEnum.class, approveOperateReqVO.getOperateType()),

+ 4 - 0
approve-core-service/src/main/java/com/dragonsoft/dcuc/approve/service/impl/ApproveServiceImpl.java

@@ -42,6 +42,7 @@ import com.dragonsoft.duceap.commons.util.UUIDUtils;
 import com.dragonsoft.duceap.commons.util.date.DateConst;
 import com.dragonsoft.duceap.commons.util.date.DateUtils;
 import com.dragonsoft.duceap.commons.util.enums.EnumUtils;
+import com.dragonsoft.duceap.commons.util.json.JsonUtils;
 import com.dragonsoft.duceap.core.context.ContextUtils;
 import com.dragonsoft.duceap.core.search.Searchable;
 import com.dragonsoft.duceap.core.search.enums.SearchOperator;
@@ -669,6 +670,9 @@ public class ApproveServiceImpl implements IApproveService {
 
         ProcessInstanceVO vo = null;
         logger.info("=====approveInfo->applicantIdCard:{},传入的idCard是:{}=====", approvalInfo.getApplicantIdcard(), operateIdcard);
+
+        logger.info("=====approveInfo->workflowClientFactory taskRequest:{}", JsonUtils.toJSONString(taskRequest));
+
         switch (approveWorkFlowOperationEnum) {
             case COMPLETE_AGREE:
                 vo = workflowClientFactory.getWorkflowTaskClient().commitTask(taskId, taskRequest, WorkFlowOprationEnum.COMPLETE_AGREE, operateIdcard);