From e12b37ce15c67b522e94f399e3b8c18c2c0e7289 Mon Sep 17 00:00:00 2001
From: zjh <zjh@888>
Date: 星期一, 25 十二月 2023 10:31:13 +0800
Subject: [PATCH] zjh 本地 2023/12/25 -2

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java |  451 +++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 380 insertions(+), 71 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..1bf7915 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
@@ -26,7 +26,13 @@
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import org.apache.commons.lang3.ArrayUtils;
+import org.apache.ibatis.jdbc.Null;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.ConvertingCursor;
+import org.springframework.data.redis.core.Cursor;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.core.ScanOptions;
+import org.springframework.data.redis.serializer.RedisSerializer;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.annotation.Validated;
@@ -89,7 +95,8 @@
 
     @Autowired
     private ITjRulesService tjRulesService;
-
+    @Autowired
+    public RedisTemplate<Object,Object> redisTemplate;
 
 
     /**
@@ -98,6 +105,320 @@
     @GetMapping("/getProList")
     @ApiOperation("璇ヤ綋妫�绉戝涓嬪鎴峰垪琛ㄦ樉绀烘帴鍙�")
     public AjaxResult getProList(@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==name) name="";
+        if(null==tjNumber) tjNumber="";
+
+//        //鏍规嵁浣撴鍙锋煡
+//        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());
+//                customer.setTjCategory(order.getTjCategory());
+//                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());
+//                            customer.setTjCategory(order.getTjCategory());
+//                            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<>();
+
+//        String key="*";
+//        if(sysUser.isAdmin()){
+//            key="ks"+":*";
+//        }else {
+//            key="ks:"+ksId+":*";
+//        }
+//        ScanOptions options = ScanOptions.scanOptions()
+//                //杩欓噷鎸囧畾姣忔鎵弿key鐨勬暟閲�(寰堝鍗氬鐬庤瑕佹寚瀹欼nteger.MAX_VALUE锛岃繖鏍风殑璇濊窡        keys鏈変粈涔堝尯鍒紵)
+//                .count(10000)
+//                .match(key).build();
+//        RedisSerializer<String> redisSerializer = (RedisSerializer<String>) redisTemplate.getKeySerializer();
+//        0鏈,1宸叉
+        Map<String,Object> map=null;
+        if (type == 0) {
+//            Cursor cursor = redisTemplate.executeWithStickyConnection(redisConnection -> new ConvertingCursor<>(redisConnection.scan(options), redisSerializer::deserialize));
+//            List<TjCustomer> customers = new ArrayList<>();
+//            while(cursor.hasNext()){
+//                String s = cursor.next().toString();
+//                TjCustomer wj = redisCache.getCacheMapValue(s,"0");
+//                if(null !=wj){
+//                    customers.add(wj);
+//                }
+//            }
+////            //鍒囪杩欓噷涓�瀹氳鍏抽棴锛屽惁鍒欎細鑰楀敖杩炴帴鏁般�傛姤Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisException: Could not get a
+//            cursor.close();
+//            customerLists = redisCache.getCacheMapValue(ksId + "ks", "wj");
+            map = deptService.getSysDeptYjWjCustomerList13(String.valueOf(ksId), name, tjNumber, 0, page, pageSize);
+//            customerLists = customers;
+        }
+        if (type == 1) {
+//            Cursor cursor = redisTemplate.executeWithStickyConnection(redisConnection -> new ConvertingCursor<>(redisConnection.scan(options), redisSerializer::deserialize));
+//            List<TjCustomer> customers = new ArrayList<>();
+//            while(cursor.hasNext()){
+//                String s = cursor.next().toString();
+//                TjCustomer wj = redisCache.getCacheMapValue(s,"1");
+//                if(null !=wj){
+//                    customers.add(wj);
+//                }
+//            }
+////            //鍒囪杩欓噷涓�瀹氳鍏抽棴锛屽惁鍒欎細鑰楀敖杩炴帴鏁般�傛姤Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisException: Could not get a
+//            cursor.close();
+//            customerLists = redisCache.getCacheMapValue(ksId + "ks", "yj");
+            map = deptService.getSysDeptYjWjCustomerList13(String.valueOf(ksId), name, tjNumber, 1, page, pageSize);
+//            customerLists = customers;
+        }
+        return AjaxResult.success(map);
+//        asyncService.dockerSetCustomerLisByRedis(ksproList, String.valueOf(ksId));
+//        if (null !=customerLists && 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);
+        wq1.in(TjOrderDetail::getProId, ksproList);
+        wq1.isNotNull(TjOrderDetail::getFlowingWaterId);
+        wq1.orderByDesc(TjOrderDetail::getCreateTime);
+        List<TjOrderDetail> detailList = detailService.list(wq1);
+        if (null != detailList && detailList.size() > 0) {
+            //鏀堕泦orderId骞跺幓閲�
+            List<Long> orderIds = detailList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(
+                    () -> new TreeSet<>(Comparator.comparing(TjOrderDetail::getOrderId))
+            ), ArrayList::new)).stream().map(TjOrderDetail::getOrderId).collect(Collectors.toList());
+            for (Long orderId : orderIds) {
+                if (null != orderId) {
+                    TjOrder order = orderService.getById(orderId);
+                    if(null ==order){
+                        continue;
+                    }
+                    if (type == 1) {
+                        List<TjOrderDetail> list = detailService.getTjOrderDetailListByOrderIdAndStatus(String.valueOf(orderId));
+                        if (null != list && list.size() > 0) {
+                            continue;
+                        }
+                    }
+                    TjCustomer customer = customerService.getById(order.getUserId());
+                    if (null != customer) {
+                        if (order.getTjType().equals("1")) {
+                            customer.setTjType("鍥綋");
+                        }
+                        if (order.getTjType().equals("2")) {
+                            customer.setTjType("涓汉");
+                        }
+                        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) {
+                            StringBuilder stringBuilder = new StringBuilder();
+                            for (TjOrderRemark remark : list) {
+                                TjProject byId = projectService.getById(remark.getProId());
+                                stringBuilder.append(byId.getProName()).append(";");
+                            }
+                            customer.setNotCheckeds(String.valueOf(stringBuilder));
+                            if (null == customer.getNotCheckeds()) customer.setNotCheckeds("鍏ㄩ儴宸叉");
+                        }
+                        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);
+            }
+        }
+        return null;
+    }
+
+    /**
+     * 鍖栭獙妫�鏌ラ〉闈㈠垪琛�
+     */
+    @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,
@@ -155,6 +476,13 @@
                 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 +510,8 @@
                 }
                 customer.setTjTime(order.getCreateTime());
                 customer.setTjNumber(order.getTjNumber());
+                customer.setOrderId(order.getOrderId());
+                customer.setIsHz(order.getIsHz());
                 customerLis.add(customer);
 
             }
@@ -215,6 +545,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 +577,8 @@
                             }
                             customer.setTjTime(order.getCreateTime());
                             customer.setTjNumber(order.getTjNumber());
+                            customer.setOrderId(order.getOrderId());
+                            customer.setIsHz(order.getIsHz());
                             list11111.add(customer);
                         }
                     }
@@ -279,66 +618,9 @@
         }
     }
 
-    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);
-        wq1.in(TjOrderDetail::getProId, ksproList);
-        wq1.isNotNull(TjOrderDetail::getFlowingWaterId);
-        wq1.orderByDesc(TjOrderDetail::getCreateTime);
-        List<TjOrderDetail> detailList = detailService.list(wq1);
-        if (null != detailList && detailList.size() > 0) {
-            //鏀堕泦orderId骞跺幓閲�
-            List<Long> orderIds = detailList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(
-                    () -> new TreeSet<>(Comparator.comparing(TjOrderDetail::getOrderId))
-            ), ArrayList::new)).stream().map(TjOrderDetail::getOrderId).collect(Collectors.toList());
-            for (Long orderId : orderIds) {
-                if (null != orderId) {
-                    TjOrder order = orderService.getById(orderId);
-                    if(null ==order){
-                        continue;
-                    }
-                    if (type == 1) {
-                        List<TjOrderDetail> list = detailService.getTjOrderDetailListByOrderIdAndStatus(String.valueOf(orderId));
-                        if (null != list && list.size() > 0) {
-                            continue;
-                        }
-                    }
-                    TjCustomer customer = customerService.getById(order.getUserId());
-                    if (null != customer) {
-                        if (order.getTjType().equals("1")) {
-                            customer.setTjType("鍥綋");
-                        }
-                        if (order.getTjType().equals("2")) {
-                            customer.setTjType("涓汉");
-                        }
-                        customer.setTjTime(order.getCreateTime());
-                        customer.setTjNumber(order.getTjNumber());
-                        customer.setTjStatus(Long.valueOf(type));
-                        List<TjOrderRemark> list = remarkService.getTjOrderRemarkListByYjNum(order.getTjNumber());
-                        if (null != list && list.size() > 0) {
-                            StringBuilder stringBuilder = new StringBuilder();
-                            for (TjOrderRemark remark : list) {
-                                TjProject byId = projectService.getById(remark.getProId());
-                                stringBuilder.append(byId.getProName()).append(";");
-                            }
-                            customer.setNotCheckeds(String.valueOf(stringBuilder));
-                            if (null == customer.getNotCheckeds()) customer.setNotCheckeds("鍏ㄩ儴宸叉");
-                        }
-                        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);
-            }
-        }
-        return null;
-    }
+
+
+
 
     /**
      * 鏌ヨ瀹㈡埛浣撴鍘嗗彶璁板綍
@@ -540,7 +822,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 +864,6 @@
                         }
                     }
                 }
-                //-----------------------------------end
                 asyncService.updateOrdeltile(tjOrderDetailList, sysUser, order);
                 LambdaQueryWrapper<TjOrderDetail> qww = new LambdaQueryWrapper<>();
                 qww.eq(TjOrderDetail::getOrderId, order.getOrderId());
@@ -600,7 +882,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());
@@ -657,6 +939,8 @@
         if (null != sysUser && !sysUser.getUserName().equals("10001")) {
             wq2.eq(TjProject::getDeptId, ksId);
         }
+        //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛�
+        wq2.eq(TjProject::getNeedReport,"Y");
         List<TjProject> Deptlist = projectService.list(wq2);
         List<Long> proIdList = Deptlist.stream().map(TjProject::getProId).collect(Collectors.toList());
         if (Deptlist.size() == 0 || proIdList.size() == 0) {
@@ -679,7 +963,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 +991,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);
@@ -727,6 +1016,10 @@
         if (null != tjOrderDetails && tjOrderDetails.size() > 0) {
             for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
                 TjProject project = projectService.getById(tjOrderDetail.getProId());
+                //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛�
+                if ("N".equals(project.getNeedReport())){
+                    continue;
+                }
                 //鐥呯鍥炴樉
 //                LambdaQueryWrapper<TjOrderDetailRules> wq=new LambdaQueryWrapper<>();
 //                wq.eq(TjOrderDetailRules::getProId,project.getProId());
@@ -877,4 +1170,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