From f1f506172a3edff8d31e4db77b8940f115660919 Mon Sep 17 00:00:00 2001
From: songhuangfeng123 <shf18767906695@163.com>
Date: 星期二, 20 九月 2022 16:25:43 +0800
Subject: [PATCH] fix

---
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyWorkApproveServiceImpl.java |  108 +++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 91 insertions(+), 17 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..e597290 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,41 +56,115 @@
     }
 
     @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);
+        EmergencyWorkApproveInfo.setSort(1);
         workApproveInfoService.addWorkApprove(EmergencyWorkApproveInfo);
         return new ResultVO(ResultCodes.OK);
     }
 
     @Override
-    public ResultVO<EmergencyWorkApproveDetailRespDTO> getWorkApproveById(Long id) {
+    public ResultVO updateWorkApprove(ContextCacheUser currentUser, EmergencyWorkApproveReqDTO emergencyWorkApproveReqDTO) {
 
-        EmergencyWorkApproveInfoDetailDO EmergencyWorkApproveInfoDetailDO = workApproveInfoService.selectWorkApproveById(id);
-        EmergencyWorkApproveDetailRespDTO emergencyWorkApproveDetailRespDTO = new EmergencyWorkApproveDetailRespDTO();
-        BeanUtils.copyProperties(EmergencyWorkApproveInfoDetailDO, emergencyWorkApproveDetailRespDTO);
+        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);
 
-        return new ResultVO<>(ResultCodes.OK, emergencyWorkApproveDetailRespDTO);
+        //新增下级审批记录
+        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);
+            newEmergencyWorkApproveInfo.setSort(newEmergencyWorkApproveInfo.getSort()+1);
+            workApproveInfoService.addWorkApprove(newEmergencyWorkApproveInfo);
+        }
+        return new ResultVO(ResultCodes.OK);
     }
 
     @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);
+    public ResultVO<EmergencyWorkApproveDetailRespDTO> getWorkApproveById(Long id) {
+        EmergencyWorkApproveInfoDetailDO EmergencyWorkApproveInfoDetailDO = workApproveInfoService.selectWorkApproveById(id);
+        if (EmergencyWorkApproveInfoDetailDO==null){
+            throw new EmergencyException(EmergencyResultCodes.APPROVE_NOT_EXIST);
+        }
+        EmergencyWorkApproveDetailRespDTO emergencyWorkApproveDetailRespDTO = new EmergencyWorkApproveDetailRespDTO();
+        BeanUtils.copyProperties(EmergencyWorkApproveInfoDetailDO, emergencyWorkApproveDetailRespDTO);
+        return new ResultVO<>(ResultCodes.OK, emergencyWorkApproveDetailRespDTO);
     }
 
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
     @Override
     public ResultVO batchDeleteWorkApprove(String ids) {
         if (!StringUtils.isBlank(ids)) {

--
Gitblit v1.9.2