From 101192fd84bb38911ea7bc84c21cfe2b9ba378c7 Mon Sep 17 00:00:00 2001
From: ZQN <364596817@qq.com>
Date: 星期二, 25 六月 2024 14:25:30 +0800
Subject: [PATCH] 审批修改

---
 project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java |   32 +++++++++++++++++++++++++-------
 1 files changed, 25 insertions(+), 7 deletions(-)

diff --git a/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java b/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java
index 317241c..a354dbd 100644
--- a/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java
+++ b/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java
@@ -15,6 +15,7 @@
 import com.project.system.domain.bo.editBo.CheckBo;
 import com.project.system.domain.bo.editBo.SysCompanyBo;
 import com.project.system.service.ISysCompanyService;
+import com.project.system.service.ISysUserService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -34,6 +35,7 @@
 public class CheckServiceImpl implements ICheckService
 {
 
+    private final ISysUserService userService;
     private final ISysCompanyService companyService;
     private final IEnforceOrderService orderService;
     private final IEnforceCheckLogService checkLogService;
@@ -43,7 +45,7 @@
     @Transactional
     public Boolean checkOrder(CheckBo bo)
     {
-        if (StringUtils.isNotEmpty(bo.getIds())){
+        if (StringUtils.isEmpty(bo.getIds())){
             throw new BaseException("璇烽�夋嫨瑕佸鎵圭殑鍗曟嵁锛�");
         }
         switch (bo.getCheckType())
@@ -56,6 +58,9 @@
                     }
                     SysCompanyBo companyBo = new SysCompanyBo();
                     companyBo.setCompanyId(company.getCompanyId());
+                    if (company.getCheckStatus()!=0){
+                        throw new BaseException("璇ヤ紒涓氬凡瀹℃壒锛�");
+                    }
                     if (bo.getCheckStatus()== -1){
                         company.setCheckStatus(-1);
                         companyBo.setCompanyStatus(1);
@@ -75,19 +80,31 @@
                     if (order==null) {
                         throw new BaseException("娌℃湁鎵惧埌瀵瑰簲鏁版嵁锛岃妫�鏌ュ鏍哥被鍨嬶紒");
                     }
+                    if (order.getOrderStatus()!=1){
+                        throw new BaseException("璇ユ墽娉曞崟宸插鎵�");
+                    }
                     addCheckLog(order, bo);
                     if (bo.getCheckStatus()==-1){
+                        order.setOrderStatus(-1);
                         order.setCheckStatus(-1);
                         //瀹℃壒鎷掔粷锛岀粰鐢宠浜哄彂閫佺煭淇★紝濡傛灉閫氱煡浼佷笟涔熺粰浼佷笟鍙戦�佺煭淇�
                         smsService.sendCheckMsg(order.getApplyPhone(), order.getCheckStatus());
+                        orderService.updateById(order);
                     } else {
                         List<String> phones = orderService.getCheckPhones(order.getCheckLevel()+1, order.getApplyDeptId());
                         if (StringUtils.isNotEmpty(phones)){
+                            int checkLevel = Integer.parseInt(phones.get(0));
+                            order.setCheckLevel(checkLevel);
+                            phones.remove(0);
+                            phones.remove(0);
                             order.setCheckStatus(1);
                             //缁欎笅涓�绾у鎵逛汉鍙戦�佺煭淇�
                             smsService.sendApplyMsg(phones, order.getApplyUser());
                             String checkPhones = StringUtils.join(phones, ",");
-                            orderService.update(orderService.lu().set(EnforceOrder::getCheckIds, checkPhones).eq(EnforceOrder::getOrderId, order.getOrderId()));
+                            order.setCheckIds(checkPhones);
+                            order.setCheckReason(bo.getCheckReason());
+
+                            return orderService.updateById(order);
                         } else {
                             order.setCheckStatus(2);
                             order.setOrderStatus(2);
@@ -96,11 +113,12 @@
                             if (order.getIsNoticeCompany()==1){
                                 smsService.sendCompanyMsg(order.getCompanyPhone(), order.getApplyDeptName(), order.getPlanTime());
                             }
+
+                            //瀹℃壒绛夌骇鍔�1
+                            order.setCheckLevel(order.getCheckLevel()+1);
+                            order.setCheckReason(bo.getCheckReason());
+                            return orderService.updateById(order);
                         }
-                        //瀹℃壒绛夌骇鍔�1
-                        order.setCheckLevel(order.getCheckLevel()+1);
-                        order.setCheckReason(bo.getCheckReason());
-                        orderService.updateById(order);
                     }
 
                 }
@@ -119,7 +137,7 @@
     {
         EnforceCheckLog checkLog = Convert.convert(EnforceCheckLog.class, obj);
         checkLog.setCheckType(bo.getCheckType());
-        SysUser loginUser = SecurityUtils.getLoginUser().getUser();
+        SysUser loginUser = userService.selectUserById(SecurityUtils.getUserId());
         checkLog.setCheckId(loginUser.getUserId());
         checkLog.setCheckUser(loginUser.getUserName());
         checkLog.setCheckPhone(loginUser.getPhonenumber());

--
Gitblit v1.9.1