From be649a182a10a25a834f137576b28c3f7de03c64 Mon Sep 17 00:00:00 2001
From: ZQN <364596817@qq.com>
Date: 星期二, 03 九月 2024 11:08:52 +0800
Subject: [PATCH] 审批企业状态

---
 project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java |   49 ++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 40 insertions(+), 9 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..343266d 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,12 +58,19 @@
                     }
                     SysCompanyBo companyBo = new SysCompanyBo();
                     companyBo.setCompanyId(company.getCompanyId());
+                    if (company.getCheckStatus()!=0){
+                        throw new BaseException("璇ヤ紒涓氬凡瀹℃壒锛�");
+                    }
                     if (bo.getCheckStatus()== -1){
                         company.setCheckStatus(-1);
+                        company.setCompanyStatus(1);
                         companyBo.setCompanyStatus(1);
+                        smsService.sendCompanyCheckMsg(company.getCompanyPhone(), -1);
                     } else {
                         company.setCheckStatus(2);
+                        company.setCompanyStatus(0);
                         companyBo.setCompanyStatus(0);
+                        smsService.sendCompanyCheckMsg(company.getCompanyPhone(), 2);
                     }
                     addCheckLog(company, bo);
                     company.setCheckReason(bo.getCheckReason());
@@ -75,32 +84,54 @@
                     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);
                             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);
                             //瀹℃壒閫氳繃锛岀粰鐢宠浜哄彂閫佺煭淇★紝濡傛灉閫氱煡浼佷笟涔熺粰浼佷笟鍙戦�佺煭淇�
                             smsService.sendCheckMsg(order.getApplyPhone(), order.getCheckStatus());
-                            if (order.getIsNoticeCompany()==1){
+
+                            if (StringUtils.isEmpty(order.getCompanyCode())){
+                                order.setOrderStatus(3);
+                                order.setInTime(DateUtils.getNowDate());
+                                order.setExecuteDeptId(order.getApplyDeptId());
+                                order.setExecuteDeptName(order.getApplyDeptName());
+                                order.setExecuteUser(order.getApplyUser());
+                                order.setExecutePhone(order.getApplyPhone());
+                                order.setExecuteId(order.getApplyId());
+                            }
+                            if (order.getIsNoticeCompany()==1 && StringUtils.isNotEmpty(order.getCompanyPhone())){
                                 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,9 +150,9 @@
     {
         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.setCheckUser(loginUser.getNickName());
         checkLog.setCheckPhone(loginUser.getPhonenumber());
         checkLog.setCheckStatus(bo.getCheckStatus()>0?1:-1);
         checkLog.setCheckTime(DateUtils.getNowDate());

--
Gitblit v1.9.1