From 7987ac6bf58cd64f0ad2af915ed1a9749960f643 Mon Sep 17 00:00:00 2001
From: ZQN <364596817@qq.com>
Date: 星期二, 25 六月 2024 16:10:47 +0800
Subject: [PATCH] 节点添加部门名

---
 project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java |   72 ++++++++++++++++++++++--------------
 1 files changed, 44 insertions(+), 28 deletions(-)

diff --git a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java
index be7bdf0..8fb7825 100644
--- a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java
+++ b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java
@@ -53,6 +53,7 @@
     private final IEnforceComplaintLogService complaintLogService;
     private final IEnforceEvaluateLogService evaluateLogService;
     private final YPSmsService smsService;
+    private final EnforceOrderMapper orderMapper;
 
     /**
      * 閫氱敤鍒楄〃-鏃犳潈闄�
@@ -65,6 +66,11 @@
         QueryWrapper<EnforceOrder> qw = getQw(bo);
         List<EnforceOrder> list = this.list(qw);
         return Convert.toList(EnforceOrderVo.class , list);
+    }
+
+    @Override
+    public Integer getDistinctCompanyNum() {
+        return orderMapper.getDistinctCompanyNum();
     }
 
     /**
@@ -118,14 +124,14 @@
     @Override
     public List<EnforceOrderVo> queryCheckList(EnforceOrderQueryBo bo)
     {
-        SysUser loginUser = SecurityUtils.getLoginUser().getUser();
+        SysUser loginUser = userService.selectUserById(SecurityUtils.getUserId());
         bo.setCheckIds(loginUser.getPhonenumber());
-        List<Long> deptIds = deptService.getApplyDeptIdsByLoginUserId(loginUser.getUserId());
-        if (StringUtils.isNotEmpty(deptIds)){
-            bo.setApplyDeptIds(deptIds);
-        } else {
-            bo.setApplyDeptIds(null);
-        }
+//        List<Long> deptIds = deptService.getApplyDeptIdsByLoginUserId(loginUser.getUserId());
+//        if (StringUtils.isNotEmpty(deptIds)){
+//            bo.setApplyDeptIds(deptIds);
+//        } else {
+//            bo.setApplyDeptIds(null);
+//        }
         return this.baseMapper.selectCheckList(bo);
     }
 
@@ -171,12 +177,14 @@
             if (one!=null){
                 String questionStatic = one.getQuestionStatic();
                 if (StringUtils.isNotEmpty(questionStatic)){
+                    EnforceEvaluateVo evaluateVo = Convert.convert(EnforceEvaluateVo.class, one);
                     try {
-                        EnforceEvaluateVo evaluateVo = JsonUtils.jsonToPojo(questionStatic, EnforceEvaluateVo.class);
-                        vo.setEvaluateVo(evaluateVo);
+                        List<EnforceEvaluateQuestion> questions = JsonUtils.jsonToList(questionStatic, EnforceEvaluateQuestion.class);
+                        evaluateVo.setQuestionList(questions);
                     } catch (Exception e) {
                         throw new BaseException("璇勪环闂埜瑙f瀽寮傚父锛�");
                     }
+                    vo.setEvaluateVo(evaluateVo);
                 }
             }
         }
@@ -196,6 +204,9 @@
         validEntityBeforeSave(add);
         List<String> phones = getCheckPhones(add.getCheckLevel(), add.getApplyDeptId());
         if (StringUtils.isNotEmpty(phones)){
+            int checkLevel = Integer.parseInt(phones.get(0));
+            add.setCheckLevel(checkLevel);
+            phones.remove(0);
             String checkPhones = StringUtils.join(phones, ",");
             add.setCheckIds(checkPhones);
         }
@@ -252,7 +263,7 @@
     @Override
     public List<String> getCheckPhones(Integer checkLevel, Long applyDeptId)
     {
-        return getCheckPhones(checkLevel, applyDeptId, 0);
+        return getCheckPhonesSimple(checkLevel, applyDeptId);
     }
 
     @Override
@@ -264,22 +275,23 @@
                 .eq(EnforceCheckLog::getOrderId, orderId).orderByAsc(EnforceCheckLog::getCheckTime)
         );
         if (order.getApplyTime()!=null){
-            vos.add(new OrderNodeVo("鎻愪氦鐢宠",order.getApplyUser(),order.getApplyTime(), null));
+            vos.add(new OrderNodeVo("鎻愪氦鐢宠",order.getApplyUser(),order.getApplyDeptName(),order.getApplyTime(), null));
         }
         if (StringUtils.isNotEmpty(checkLogs)){
             for (EnforceCheckLog checkLog : checkLogs) {
+
                 if (checkLog.getCheckStatus()>0){
-                    vos.add(new OrderNodeVo("瀹℃壒閫氳繃",checkLog.getCheckUser(),checkLog.getCheckTime(), null));
+                    vos.add(new OrderNodeVo("瀹℃壒閫氳繃",checkLog.getCheckUser(),userService.getDeptNameByUserId(checkLog.getCheckId()),checkLog.getCheckTime(), null));
                 } else {
-                    vos.add(new OrderNodeVo("瀹℃壒鎷掔粷",checkLog.getCheckUser(),checkLog.getCheckTime(), checkLog.getCheckReason()));
+                    vos.add(new OrderNodeVo("瀹℃壒鎷掔粷",checkLog.getCheckUser(),userService.getDeptNameByUserId(checkLog.getCheckId()),checkLog.getCheckTime(), checkLog.getCheckReason()));
                 }
             }
         }
         if (order.getInTime()!=null){
-            vos.add(new OrderNodeVo("鎵爜鍏ヤ紒",order.getExecuteUser(),order.getInTime(), null));
+            vos.add(new OrderNodeVo("鎵爜鍏ヤ紒",order.getExecuteUser(),order.getExecuteDeptName(),order.getInTime(), null));
         }
         if (order.getExecuteTime()!=null){
-            vos.add(new OrderNodeVo("缁撴灉涓婃姤",order.getExecuteUser(),order.getExecuteTime(), null));
+            vos.add(new OrderNodeVo("缁撴灉涓婃姤",order.getExecuteUser(),order.getExecuteDeptName(),order.getExecuteTime(), null));
         }
 
         return vos;
@@ -297,11 +309,17 @@
     public Boolean doScanOrder(Long orderId)
     {
         EnforceOrder order = this.getById(orderId);
+        if (order.getOrderStatus()<2){
+            throw new BaseException("鎵ф硶鍗曡繕鏈鎵癸紒");
+        }
+        if (order.getOrderStatus()>2){
+            throw new BaseException("鎵ф硶鍗曞凡纭鎵ф硶锛�");
+        }
         order.setOrderStatus(3);
-        SysUser user = SecurityUtils.getLoginUser().getUser();
+        SysUser user = userService.selectUserById(SecurityUtils.getUserId());
         order.setExecuteId(user.getUserId());
         order.setExecuteUser(user.getNickName());
-        order.setExecutePhone(user.getRecommendPhone());
+        order.setExecutePhone(user.getPhonenumber());
         order.setExecuteDeptId(user.getDeptId());
         order.setExecuteDeptName(deptService.getDeptAllName(user.getDeptId()));
         order.setInTime(DateUtils.getNowDate());
@@ -318,7 +336,6 @@
         if (StringUtils.isEmpty(resultBo.getRegionReason())){
             throw new BaseException("璇峰~鍐欐墽娉曠粨鏋滆鏄�");
         }
-
         return this.update(lu()
                 .set(resultBo.getRegionStatus()!=null, EnforceOrder::getRegionStatus, resultBo.getRegionStatus())
                 .set(StringUtils.isNotEmpty(resultBo.getRegionReason()), EnforceOrder::getRegionReason, resultBo.getRegionReason())
@@ -326,6 +343,7 @@
                 .set(StringUtils.isNotEmpty(resultBo.getRegionVideos()), EnforceOrder::getRegionVideos, resultBo.getRegionVideos())
                 .set( EnforceOrder::getOrderStatus, 4)
                 .set( EnforceOrder::getExecuteTime, DateUtils.getNowDate())
+                .eq( EnforceOrder::getOrderId, resultBo.getOrderId())
         );
     }
 
@@ -343,6 +361,9 @@
             throw new BaseException("璇峰~鍐欐姇璇夊唴瀹癸紒");
         }
         EnforceOrder order = this.getById(bo.getOrderId());
+        if (order.getOrderStatus()!=4){
+            throw new BaseException("鎵ф硶鍗曟湭涓婃姤鎵ф硶缁撴灉锛�");
+        }
         //娣诲姞鎶曡瘔璁板綍
         EnforceComplaintLogBo complaintLogBo = Convert.convert(EnforceComplaintLogBo.class, order);
         complaintLogBo.setComplaintType(bo.getComplaintType());
@@ -462,24 +483,19 @@
      * @param checkLevel  瀹℃壒绾у埆锛氶粯璁�0
      * @param deptId  鐢宠閮ㄩ棬id
      */
-    private List<String> getCheckPhones(Integer checkLevel, Long deptId, int current)
+    private List<String> getCheckPhonesSimple(Integer checkLevel, Long deptId)
     {
         if (checkLevel==3){
-            if (current==1){
-                return null;
-            }
-            checkLevel = 0;
-            deptId = deptService.selectDeptById(deptId).getParentId();
-            current++;
-            getCheckPhones(checkLevel, deptId, current);
+            return null;
         }
-        checkLevel++;
         String checkKey = "check_enforce_";
         List<String> phones = userService.getPhonesByRoleKey(checkKey + checkLevel, deptId);
         if (StringUtils.isNotEmpty(phones)){
+            phones.add(0,checkLevel.toString());
             return phones;
         }
-        return getCheckPhones(checkLevel, deptId, current);
+        checkLevel ++;
+        return getCheckPhonesSimple(checkLevel, deptId);
     }
 
 

--
Gitblit v1.9.1