From c4354b452cb7b09fe28a9e8ea81f455df1c68de8 Mon Sep 17 00:00:00 2001
From: songhuangfeng123 <shf18767906695@163.com>
Date: 星期五, 05 八月 2022 17:02:59 +0800
Subject: [PATCH] 流程fix

---
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyWorkApproveServiceImpl.java |   95 ++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 80 insertions(+), 15 deletions(-)

diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyWorkApproveServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyWorkApproveServiceImpl.java
index b6f3338..4e55c4a 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyWorkApproveServiceImpl.java
+++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyWorkApproveServiceImpl.java
@@ -1,6 +1,7 @@
 package com.gkhy.safePlatform.emergency.service.impl;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.commons.co.ContextCacheUser;
 import com.gkhy.safePlatform.commons.enums.ResultCodes;
 import com.gkhy.safePlatform.commons.query.PageQuery;
 import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
@@ -8,7 +9,6 @@
 import com.gkhy.safePlatform.commons.vo.ResultVO;
 import com.gkhy.safePlatform.commons.vo.SearchResultVO;
 import com.gkhy.safePlatform.emergency.entity.*;
-import com.gkhy.safePlatform.emergency.enums.ApproveStatus;
 import com.gkhy.safePlatform.emergency.enums.EmergencyResultCodes;
 import com.gkhy.safePlatform.emergency.excepiton.EmergencyException;
 import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyWorkApproveReqDTO;
@@ -56,19 +56,95 @@
     }
 
     @Override
-    public ResultVO addWorkApprove(Long uid, EmergencyWorkApproveReqDTO EmergencyWorkApproveReqDTO) {
+    public ResultVO addWorkApprove(ContextCacheUser currentUser, EmergencyWorkApproveReqDTO EmergencyWorkApproveReqDTO) {
+
+        // 业务类型
+        if (EmergencyWorkApproveReqDTO.getRelateType()==null){
+            throw new EmergencyException(EmergencyResultCodes.APPROVE_RELATE_ID_NULL);
+        }
+        // 业务主表id
+        if (EmergencyWorkApproveReqDTO.getRelateId()==null){
+            throw new EmergencyException(EmergencyResultCodes.APPROVE_RELATE_TYPE_NULL);
+        }
+        // 审批人
+        if (EmergencyWorkApproveReqDTO.getApprovePersonId()==null){
+            throw new EmergencyException(EmergencyResultCodes.APPROVE_PERSON_NULL);
+        }
+        // 审批状态
+        if (EmergencyWorkApproveReqDTO.getApproveStatus()==null){
+            throw new EmergencyException(EmergencyResultCodes.APPROVE_STATUS_NULL);
+        }
+
 
         Date nowDate = new Date();
-        //1.新增应急队伍
+        Long uid = currentUser.getUid();
+        String uName = currentUser.getRealName();
+        //1.新增应急审批
         EmergencyWorkApproveInfo EmergencyWorkApproveInfo = new EmergencyWorkApproveInfo();
         BeanUtils.copyProperties(EmergencyWorkApproveReqDTO, EmergencyWorkApproveInfo);
         EmergencyWorkApproveInfo.setDelFlag(false);
         EmergencyWorkApproveInfo.setCreateUid(uid);
         EmergencyWorkApproveInfo.setGmtCreate(nowDate);
-        EmergencyWorkApproveInfo.setApproveStatus(ApproveStatus.NOT_APPROVE.getStatus());
+        EmergencyWorkApproveInfo.setSubmitPersonId(uid);
+        EmergencyWorkApproveInfo.setSubmitPersonName(uName);
         workApproveInfoService.addWorkApprove(EmergencyWorkApproveInfo);
         return new ResultVO(ResultCodes.OK);
     }
+
+    @Override
+    public ResultVO updateWorkApprove(ContextCacheUser currentUser, EmergencyWorkApproveReqDTO emergencyWorkApproveReqDTO) {
+
+        Date nowDate = new Date();
+        Long uid = currentUser.getUid();
+        String uName = currentUser.getRealName();
+        // 更新原审批记录
+        EmergencyWorkApproveInfo emergencyWorkApproveInfo = new EmergencyWorkApproveInfo();
+        emergencyWorkApproveInfo.setId(emergencyWorkApproveReqDTO.getId());
+        emergencyWorkApproveInfo.setUpdateUid(uid);
+        emergencyWorkApproveInfo.setGmtModitify(nowDate);
+        emergencyWorkApproveInfo.setApproveStatus(emergencyWorkApproveReqDTO.getApproveStatus());
+        emergencyWorkApproveInfo.setApproveResult(emergencyWorkApproveReqDTO.getApproveResult());
+        emergencyWorkApproveInfo.setApproveMemo(emergencyWorkApproveReqDTO.getApproveMemo());
+        workApproveInfoService.updateWorkApprove(emergencyWorkApproveInfo);
+
+        //新增下级审批记录
+        if (emergencyWorkApproveReqDTO.getApproveStatus() == 2){
+            EmergencyWorkApproveInfo newEmergencyWorkApproveInfo = new EmergencyWorkApproveInfo();
+            BeanUtils.copyProperties(emergencyWorkApproveReqDTO,newEmergencyWorkApproveInfo);
+
+            newEmergencyWorkApproveInfo.setId(null);
+            newEmergencyWorkApproveInfo.setDelFlag(false);
+            newEmergencyWorkApproveInfo.setCreateUid(uid);
+            newEmergencyWorkApproveInfo.setGmtCreate(nowDate);
+            newEmergencyWorkApproveInfo.setSubmitPersonId(uid);
+            newEmergencyWorkApproveInfo.setSubmitPersonName(uName);
+            newEmergencyWorkApproveInfo.setApproveResult(null);
+            newEmergencyWorkApproveInfo.setApproveMemo(null);
+            workApproveInfoService.addWorkApprove(newEmergencyWorkApproveInfo);
+        }
+        return new ResultVO(ResultCodes.OK);
+    }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
     @Override
     public ResultVO<EmergencyWorkApproveDetailRespDTO> getWorkApproveById(Long id) {
@@ -78,17 +154,6 @@
         BeanUtils.copyProperties(EmergencyWorkApproveInfoDetailDO, emergencyWorkApproveDetailRespDTO);
 
         return new ResultVO<>(ResultCodes.OK, emergencyWorkApproveDetailRespDTO);
-    }
-
-    @Override
-    public ResultVO updateWorkApprove(Long uid, EmergencyWorkApproveReqDTO EmergencyWorkApproveReqDTO) {
-        Date nowDate = new Date();
-        EmergencyWorkApproveInfo EmergencyWorkApproveInfo = new EmergencyWorkApproveInfo();
-        BeanUtils.copyProperties(EmergencyWorkApproveReqDTO, EmergencyWorkApproveInfo);
-        EmergencyWorkApproveInfo.setUpdateUid(uid);
-        EmergencyWorkApproveInfo.setGmtModitify(nowDate);
-        workApproveInfoService.updateWorkApprove(EmergencyWorkApproveInfo);
-        return new ResultVO(ResultCodes.OK);
     }
 
     @Override

--
Gitblit v1.9.2