From 41f99a843fb2c0424426e006f29c1e78192eae01 Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期三, 06 十二月 2023 08:37:55 +0800
Subject: [PATCH] zjh 2023/12/06--1

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java |  273 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 263 insertions(+), 10 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
index 39a0fb8..f8286e1 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
@@ -155,6 +155,15 @@
                 wqs.in(TjOrderRemark::getType, 0,3);
                 List<TjOrderRemark> lists = remarkService.list(wqs);
                 TjCustomer customer = customerService.getById(order.getUserId());
+
+                //閬嶅巻椤圭洰 鍒ゆ柇鏄惁鏈夐噸澶ч槼鎬�  鏍囪
+                for (TjOrderDetail tjOrderDetail11 : list) {
+                    customer.setIsPositive(tjOrderDetail11.getIsPositive());
+                    if (tjOrderDetail11.getIsPositive()==1){
+                        break;
+                    }
+                }
+
                 customer.setCusName(MatchUtils.hideCusName(customer.getCusName()));
                 customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone()));
                 customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard()));
@@ -182,6 +191,9 @@
                 }
                 customer.setTjTime(order.getCreateTime());
                 customer.setTjNumber(order.getTjNumber());
+                customer.setOrderId(order.getOrderId());
+                customer.setIsHz(order.getIsHz());
+
                 customerLis.add(customer);
 
             }
@@ -215,6 +227,13 @@
                             if (list111.size() == 0) {
                                 continue;
                             }
+                            //閬嶅巻椤圭洰 鍒ゆ柇鏄惁鏈夐噸澶ч槼鎬�  鏍囪
+                            for (TjOrderDetail tjOrderDetail11 : list111) {
+                                customer.setIsPositive(tjOrderDetail11.getIsPositive());
+                                if (tjOrderDetail11.getIsPositive()==1){
+                                    break;
+                                }
+                            }
                             List<TjOrderRemark> lists = remarkService.getTjOrderRemarkListByYjNum(order.getTjNumber());
                             if (null != lists && lists.size() > 0) {
                                 StringBuilder stringBuilder = new StringBuilder();
@@ -240,6 +259,8 @@
                             }
                             customer.setTjTime(order.getCreateTime());
                             customer.setTjNumber(order.getTjNumber());
+                            customer.setOrderId(order.getOrderId());
+                            customer.setIsHz(order.getIsHz());
                             list11111.add(customer);
                         }
                     }
@@ -279,6 +300,215 @@
         }
     }
 
+
+
+    /**
+     * 鍖栭獙妫�鏌ラ〉闈㈠垪琛�
+     */
+    @GetMapping("/huaYangetProList")
+    @ApiOperation("褰卞儚/鍖栭獙妫�鏌ラ〉闈㈠垪琛�")
+    public AjaxResult huaYangetProList(@ApiParam(value = "浣撴鍗曞彿") @RequestParam(required = false) String tjNumber,
+                                 @ApiParam(value = "0鏈,1宸叉") @RequestParam(defaultValue = "0") Integer type,
+                                 @ApiParam(value = "濮撳悕)") @RequestParam(required = false) String name,
+                                 @ApiParam(value = "椤电爜鏁�(榛樿1)") @RequestParam(defaultValue = "1") Integer page,
+                                 @ApiParam(value = "鏄剧ず鏉℃暟(榛樿10)") @RequestParam(defaultValue = "10") Integer pageSize) {
+        String userId = SecurityUtils.getLoginUser().getUserId();
+        Integer ksId = null;
+        SysUser sysUser = null;
+        if (null != userId) {
+            sysUser = userService.getById(Long.valueOf(userId));
+            if (null != sysUser) {
+                ksId = Math.toIntExact(sysUser.getDeptId());
+            }
+        }
+        if (ksId == null) {
+            return AjaxResult.error("璇疯緭鍏ョ瀹d");
+        }
+        //鏍规嵁褰撳墠鐧婚檰鐨勪汉鐨勭瀹d锛岃幏鍙栬绉戝涓嬬殑鎵�鏈夐」鐩�
+        // TODO: 2023/3/24  缁欒秴绾х鐞嗗憳璧嬪尰鐢熸鏌ユ潈闄�
+        List<Long> postIds = sysUser.getPostIds();
+        List<Long> ksproList = null;
+        if (postIds != null) {
+            for (Long postId : postIds) {
+                LambdaQueryWrapper<SysUserPost> wq111 = new LambdaQueryWrapper<>();
+                wq111.eq(SysUserPost::getPostId, postId);
+                SysUserPost one = userPostService.getOne(wq111);
+                if (one != null) {
+                    SysPost byId = postService.getById(one.getPostId());
+                    if (byId.getPostName().equals("褰曞叆鍛�")) {
+                        ksproList = projectService.getKsTjProjectIdListBydeptId(String.valueOf(ksId));
+                    }
+                }
+            }
+        } else {
+            ksproList = projectService.getKsTjProjectIdList();
+        }
+
+        if (ksproList == null || ksproList.size() == 0) {
+            return AjaxResult.error("璇峰畬鍠勭瀹ら」鐩俊鎭�");
+        }
+        List<TjCustomer> customerLis = new ArrayList<>();
+
+        //鏍规嵁浣撴鍙锋煡
+        if (null != tjNumber) {
+            List<TjOrder> orderList = orderService.getOrderListByLikeTjNum(tjNumber);
+            if (null == orderList) {
+                return AjaxResult.success("鏆傛椂娌℃湁鏁版嵁");
+            }
+            for (TjOrder order : orderList) {
+                List<TjOrderDetail> list = Optional.ofNullable(detailService.getTjOrderDetailListByOrderId(String.valueOf(order.getOrderId()))).get();
+                if (list.size() == 0) {
+                    continue;
+                }
+                LambdaQueryWrapper<TjOrderRemark> wqs = new LambdaQueryWrapper<>();
+                wqs.eq(TjOrderRemark::getTjNumber, order.getTjNumber());
+                wqs.in(TjOrderRemark::getType, 0,3);
+                List<TjOrderRemark> lists = remarkService.list(wqs);
+                TjCustomer customer = customerService.getById(order.getUserId());
+                //閬嶅巻椤圭洰 鍒ゆ柇鏄惁鏈夐噸澶ч槼鎬�  鏍囪
+                for (TjOrderDetail tjOrderDetail11 : list) {
+                    customer.setIsPositive(tjOrderDetail11.getIsPositive());
+                    if (tjOrderDetail11.getIsPositive()==1){
+                        break;
+                    }
+                }
+                customer.setCusName(MatchUtils.hideCusName(customer.getCusName()));
+                customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone()));
+                customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard()));
+                if (null != lists && lists.size() > 0) {
+                    StringBuilder stringBuilder = new StringBuilder();
+                    for (TjOrderRemark remark : lists) {
+                        TjProject byId = projectService.selectTjProjectByProId(remark.getProId());
+                        TjOrderDetail one = detailService.getTjOrderDetailByOrderId(String.valueOf(order.getOrderId()), String.valueOf(byId.getProId()));
+                        if (one.getFlowingWaterId() != null) {
+                            stringBuilder.append(byId.getProName()).append(";");
+                        }
+
+                    }
+                    customer.setNotCheckeds(String.valueOf(stringBuilder));
+                    customer.setTjStatus(0L);
+                } else {
+                    customer.setTjStatus(1L);
+                    customer.setNotCheckeds("鏃�");
+                }
+                if (order.getTjType().equals("1")) {
+                    customer.setTjType("鍥綋");
+                }
+                if (order.getTjType().equals("2")) {
+                    customer.setTjType("涓汉");
+                }
+                customer.setTjTime(order.getCreateTime());
+                customer.setTjNumber(order.getTjNumber());
+                customer.setOrderId(order.getOrderId());
+                customer.setIsHz(order.getIsHz());
+                customerLis.add(customer);
+
+            }
+            if (customerLis.size() > 0) {
+                List<TjCustomer> customerList = customerLis.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
+                Collections.reverse(customerList);
+                Map<String, Object> map = new HashMap<>();
+                map.put("date", customerList);
+                map.put("total", customerLis.size());
+                return AjaxResult.success(map);
+            } else {
+                return AjaxResult.success("鏆傛棤鏁版嵁");
+            }
+        }
+
+        //鏍规嵁濮撳悕鏌ヨ
+        if (null != name && !"".equals(name)) {
+            LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>();
+            wq.like(TjCustomer::getCusName, name);
+            List<TjCustomer> list = customerService.list(wq);
+            List<TjCustomer> list11111 = new ArrayList<>();
+            if (null != list && list.size() > 0) {
+                for (TjCustomer customer : list) {
+                    customer.setCusName(MatchUtils.hideCusName(customer.getCusName()));
+                    customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone()));
+                    customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard()));
+                    List<TjOrder> orderList = orderService.getOrderListByCusId(String.valueOf(customer.getCusId()));
+                    if (null != orderList && orderList.size() > 0) {
+                        for (TjOrder order : orderList) {
+                            List<TjOrderDetail> list111 = Optional.ofNullable(detailService.getTjOrderDetailListByOrderId(String.valueOf(order.getOrderId()))).get();
+                            if (list111.size() == 0) {
+                                continue;
+                            }
+                            //閬嶅巻椤圭洰 鍒ゆ柇鏄惁鏈夐噸澶ч槼鎬�  鏍囪
+                            for (TjOrderDetail tjOrderDetail11 : list111) {
+                                customer.setIsPositive(tjOrderDetail11.getIsPositive());
+                                if (tjOrderDetail11.getIsPositive()==1){
+                                    break;
+                                }
+                            }
+                            List<TjOrderRemark> lists = remarkService.getTjOrderRemarkListByYjNum(order.getTjNumber());
+                            if (null != lists && lists.size() > 0) {
+                                StringBuilder stringBuilder = new StringBuilder();
+                                for (TjOrderRemark remark : lists) {
+                                    TjProject byId = projectService.selectTjProjectByProId(remark.getProId());
+                                    TjOrderDetail one = detailService.getTjOrderDetailByOrderId(String.valueOf(order.getOrderId()), String.valueOf(byId.getProId()));
+                                    if (one.getFlowingWaterId() != null) {
+                                        stringBuilder.append(byId.getProName()).append(";");
+                                    }
+                                }
+                                customer.setNotCheckeds(String.valueOf(stringBuilder));
+                                if (null == customer.getNotCheckeds()) customer.setNotCheckeds("鍏ㄩ儴宸叉");
+                                customer.setTjStatus(0L);
+                            } else {
+                                customer.setNotCheckeds("鏃�");
+                                customer.setTjStatus(1L);
+                            }
+                            if (order.getTjType().equals("1")) {
+                                customer.setTjType("鍥綋");
+                            }
+                            if (order.getTjType().equals("2")) {
+                                customer.setTjType("涓汉");
+                            }
+                            customer.setTjTime(order.getCreateTime());
+                            customer.setTjNumber(order.getTjNumber());
+                            customer.setOrderId(order.getOrderId());
+                            customer.setIsHz(order.getIsHz());
+                            list11111.add(customer);
+                        }
+                    }
+                }
+                if (list11111.size() == 0) {
+                    return AjaxResult.success("鏆傛棤鏁版嵁");
+                }
+                Map<String, Object> map = new HashMap<>();
+                List<TjCustomer> customers = list11111.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
+                Collections.reverse(customers);
+                map.put("customers", customers);
+                map.put("total", list11111.size());
+                return AjaxResult.success(map);
+            } else {
+                return AjaxResult.success("鏆傛棤鏁版嵁");
+            }
+        }
+        List<TjCustomer> customerLists = new ArrayList<>();
+        if (type == 0) {
+            customerLists = redisCache.getCacheMapValue(ksId + "ks", "wj");
+        }
+        if (type == 1) {
+            customerLists = redisCache.getCacheMapValue(ksId + "ks", "yj");
+        }
+        asyncService.dockerSetCustomerLisByRedis(ksproList, String.valueOf(ksId));
+        if (customerLists != null && customerLists.size() > 0) {
+            Collections.reverse(customerLists);
+            List<TjCustomer> customerList = customerLists.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
+            Map<String, Object> map = new HashMap<>();
+            map.put("date", customerList);
+            map.put("total", customerLists.size());
+            return AjaxResult.success(map);
+        } else {
+            AjaxResult map = getAjaxResult(type, page, pageSize, ksproList, customerLis);
+            if (map != null) return map;
+            return AjaxResult.success("鏆傛椂娌℃湁鏁版嵁");
+        }
+    }
+
+
+
     private AjaxResult getAjaxResult(Integer type, Integer page, Integer pageSize, List<Long> ksproList, List<TjCustomer> customerLis) {
         LambdaQueryWrapper<TjOrderDetail> wq1 = new LambdaQueryWrapper<>();
         wq1.eq(TjOrderDetail::getTjStatus, type);
@@ -313,6 +543,8 @@
                         }
                         customer.setTjTime(order.getCreateTime());
                         customer.setTjNumber(order.getTjNumber());
+                        customer.setOrderId(orderId);
+                        customer.setIsHz(order.getIsHz());
                         customer.setTjStatus(Long.valueOf(type));
                         List<TjOrderRemark> list = remarkService.getTjOrderRemarkListByYjNum(order.getTjNumber());
                         if (null != list && list.size() > 0) {
@@ -540,7 +772,8 @@
             return AjaxResult.success("鎿嶄綔澶辫触");
         }
         for (TjOrderRemark orderRemark : remarklList) {
-            if (null != orderRemark.getSummaryList() && orderRemark.getSummaryList().size()>0 ) {
+            List<String> summaryList = orderRemark.getSummaryList();
+            if (null != summaryList && summaryList.size()>0 && !summaryList.contains(null) ) {
                 orderRemark.setSummary(Joiner.on(";").join(orderRemark.getSummaryList()));
             }
             LambdaQueryWrapper<TjOrder> qw = new LambdaQueryWrapper<>();
@@ -581,7 +814,6 @@
                         }
                     }
                 }
-                //-----------------------------------end
                 asyncService.updateOrdeltile(tjOrderDetailList, sysUser, order);
                 LambdaQueryWrapper<TjOrderDetail> qww = new LambdaQueryWrapper<>();
                 qww.eq(TjOrderDetail::getOrderId, order.getOrderId());
@@ -600,7 +832,7 @@
                     remarkService.save(remark);
                 } else {
                     one.setRemark(orderRemark.getRemark());
-                    if (orderRemark.getSummaryList() != null) {
+                    if (null != summaryList && summaryList.size()>0 && !summaryList.contains(null)) {
                         one.setSummary(Joiner.on(";").join(orderRemark.getSummaryList()));
                     }
                     one.setDeptId(orderRemark.getDeptId());
@@ -679,7 +911,7 @@
                 wq.ne("type", 2);
                 List<TjOrderRemark> list = remarkService.list(wq);
                 if (list.size() == 0) {
-                    return AjaxResult.error("璇ョ瀹や笅鏃犻」鐩紒");
+                    return AjaxResult.success("璇ョ瀹や笅鏃犻」鐩紒");
                 }
                 for (TjOrderRemark tjOrderRemark : list) {
                     TjProject tjProject = projectService.getById(tjOrderRemark.getProId());
@@ -707,15 +939,20 @@
             return AjaxResult.error("鑾峰彇鐢ㄦ埛淇℃伅閿欒");
         }
 
-        if(redisCache.hasHKey("getOrderDetailByProParentId"+tjNumber,proParentId)){
-            Map<String, Object> mapValue = redisCache.getCacheMapValue("getOrderDetailByProParentId" + tjNumber, proParentId);
-            return AjaxResult.success(mapValue);
-        }
+//        if(redisCache.hasHKey("getOrderDetailByProParentId"+tjNumber,proParentId)){
+//            Map<String, Object> mapValue = redisCache.getCacheMapValue("getOrderDetailByProParentId" + tjNumber, proParentId);
+//            return AjaxResult.success(mapValue);
+//        }
 
         TjOrderRemark remark = remarkService.getTjOrderRemarkByTjNumAndProParentId(tjNumber, proParentId);
         List<TjProject> proParentList = projectService.getTjProjectListBySoneId(proParentId);
-        if (null == proParentList) {
-            return AjaxResult.error("璇ラ」鐩笅鏆傛椂娌℃暟鎹�");
+        if (null == proParentList || proParentList.size()==0) {
+            Map<String, Object> map = new HashMap<>();
+            map.put("xiaoJieIds", null);
+            map.put("sons", projectService.list(new LambdaQueryWrapper<TjProject>().eq(TjProject::getProId,proParentId)));
+            map.put("xiaoJie", null);
+            map.put("remark", remark.getRemark());
+            return AjaxResult.success(map);
         }
         List<Long> proParentIdList = proParentList.stream().map(TjProject::getProId).collect(Collectors.toList());
         TjOrder one = orderService.getOrderByTjNum(tjNumber);
@@ -877,4 +1114,20 @@
         return success(deptService.selectDeptTreeList(dept));
     }
 
+
+    /**
+     * 鑾峰彇瀛愮瀹ら儴闂ㄥ垪琛�
+     */
+    @GetMapping("/getChildList")
+    @ApiOperation(value = "鑾峰彇瀛愮瀹ら儴闂ㄥ垪琛�")
+    public AjaxResult getChildList(String deptName) {
+        LambdaQueryWrapper<SysDept> wq=new LambdaQueryWrapper<>();
+        wq.ne(SysDept::getParentId,0);
+        if (deptName!=null){
+            wq.like(SysDept::getDeptName,deptName);
+        }
+        List<SysDept> depts = deptService.list(wq);
+        return success(depts);
+    }
+
 }

--
Gitblit v1.8.0