From 1fae829b41db281b6d8b61d96cc4253ec9ed7a87 Mon Sep 17 00:00:00 2001
From: 赵文轩 <1652863494@qq.com>
Date: 星期四, 06 六月 2024 19:48:12 +0800
Subject: [PATCH] 不使用直接获取第一个对象改写成集合遍历

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java |  468 ++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 403 insertions(+), 65 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java
index fba5891..7bcfc79 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java
@@ -176,7 +176,6 @@
     public void ttextracted(TjOrder tjOrder, TjCustomer tjCustomer, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) {
 
         tjAskMedicalHistoryService.updateTjAskMedicalHistoryByCusId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjCustomer.getCusId()));
-
         boolean b = tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId()));
         if (!b) {
             List<TjGroupingPro> proList = groupingProService.list(new LambdaQueryWrapper<TjGroupingPro>().eq(TjGroupingPro::getGroupingId, tjOrder.getGroupId()));
@@ -239,7 +238,13 @@
             tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()),
                     sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber()));
         }
+        if (tjFlowingWater.getDiscount() == null) {
+            transitionService.updateTbTransitionPriceByCusId(tjCustomer.getCusIdcard(), new BigDecimal(10), tjOrder.getTjNumber());
+        } else {
+            transitionService.updateTbTransitionPriceByCusId(tjCustomer.getCusIdcard(), BigDecimal.valueOf(Long.parseLong(tjFlowingWater.getDiscount())), tjOrder.getTjNumber());
+        }
 
+        tjOrderDetailService.saveTjPureToneTesByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()));
 //        List<TjOrderDetail> list = tjOrderDetailService.getTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()));
 //        if (list != null) {
 //            for (TjOrderDetail tjOrderDetail : list) {
@@ -281,8 +286,8 @@
         orderRemarkService.deletedOrderRemarkByTjNum(order.getTjNumber());
         redisCache.deleteObject("getOrderDetailByProParentId" + order.getTjNumber());
         for (TbTransition transition : tbTransitionList) {
-            transition.setNowPrice(transition.getOrdPrice().multiply(BigDecimal.valueOf(Double.parseDouble(discount)).divide(BigDecimal.valueOf(10))));
-            transitionService.updateById(transition);
+//            transition.setNowPrice(transition.getOrdPrice().multiply(BigDecimal.valueOf(Double.parseDouble(discount)).divide(BigDecimal.valueOf(10))));
+//            transitionService.updateById(transition);
             TjProject tjProject = projectService.selectTjProjectByProId(transition.getProId());
             //瀛愰」
             if (null != tjProject) {
@@ -398,16 +403,20 @@
             wq1.eq(TjProject::getProId, tjOrderDetail.getProId());
             TjProject one = projectService.getOne(wq1);
             if (one != null) {
-                if (one.getProParentId() != 0) {
-                    tjOrderDetail.setTjStatus(2L);
-                    tjOrderDetail.setProResult("寮冩");
-                    tjOrderDetail.setUpdateTime(new DateTime());
-                    tjOrderDetailService.updateById(tjOrderDetail);
-                } else {
-                    tjOrderDetail.setTjStatus(1L);
-                    tjOrderDetail.setUpdateTime(new DateTime());
-                    tjOrderDetailService.updateById(tjOrderDetail);
-                }
+//                if (one.getProParentId() != 0) {
+                tjOrderDetail.setTjStatus(2L);
+                tjOrderDetail.setProResult("寮冩");
+                tjOrderDetail.setUpdateTime(new DateTime());
+                tjOrderDetailService.updateById(tjOrderDetail);
+//                } else {
+//                    tjOrderDetail.setTjStatus(1L);
+//                    tjOrderDetail.setUpdateTime(new DateTime());
+//                    tjOrderDetailService.updateById(tjOrderDetail);
+//                }
+//               LambdaQueryWrapper<TjOrderRemark> wq=new LambdaQueryWrapper<>();
+//               wq.eq(TjOrderRemark::getTjNumber,tjNumber);
+//               wq.eq(TjOrderRemark::getProId,tjOrderDetail.getProId());
+                orderRemarkService.updateTjOrderRemark(tjNumber, String.valueOf(tjOrderDetail.getProId()));
                 //缁欏純妫�琛ㄦ坊鍔犺褰�
                 TjDiscardInspection td = new TjDiscardInspection();
                 td.setProId(String.valueOf(one.getProId()));
@@ -444,43 +453,114 @@
 
     @Override
     @Async("async")
+    public void updateOrdeltile2(TjOrderDetail detail, SysUser sysUser) {
+//        for (TjOrderDetail detail : tjOrderDetailList) {
+        detail.setTjStatus(1L);
+        LambdaQueryWrapper<TjStandard> wq0 = new LambdaQueryWrapper<>();
+        wq0.eq(TjStandard::getProId, detail.getProId());
+        detail.setUpdateBy(sysUser.getNickName());
+        detail.setUpdateTime(new Date());
+        detail.setCreateId(String.valueOf(sysUser.getUserId()));
+        detail.setUpdateId(String.valueOf(sysUser.getUserId()));
+        tjOrderDetailService.updateById(detail);
+//        }
+    }
+
+    @Override
+    @Async("async")
     public void iundividualCharges(TjFlowingWater tjFlowingWater, TjOrder order, TjCustomer customer, SysUser sysUser) {
         List<TjConsumables> list2 = new ArrayList<>();
         String[] tjProIds = tjFlowingWater.getTjProIds();
         for (String tjProId : tjProIds) {
+            LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>();
+            wqq.eq(TbTransition::getCusId, customer.getCusIdcard());
             TjProject project = projectService.selectTjProjectByProId(Long.valueOf(tjProId));
-            TjOrderRemark tjOrderRemark = new TjOrderRemark();
-            tjOrderRemark.setProId(Long.valueOf(tjProId));
-            tjOrderRemark.setProName(project.getProName());
-            tjOrderRemark.setDeptId(project.getDeptId());
-            tjOrderRemark.setTjNumber(order.getTjNumber());
-            tjOrderRemark.setCreateBy(sysUser.getNickName());
-            tjOrderRemark.setCreateTime(new Date());
-            tjOrderRemark.setUpdateBy(sysUser.getNickName());
-            tjOrderRemark.setUpdateTime(new Date());
-            tjOrderRemark.setCreateId(String.valueOf(sysUser.getUserId()));
-            tjOrderRemark.setUpdateId(String.valueOf(sysUser.getUserId()));
-            orderRemarkService.save(tjOrderRemark);
-            List<Long> proIds = projectService.getTjProjectListBySoneId(tjProId).stream().map(TjProject::getProId).collect(Collectors.toList());
-            TjOrderDetail detail = new TjOrderDetail();
-            detail.setTjStatus(0L);
-            detail.setOrderId(tjFlowingWater.getOrderId());
-            detail.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber()));
-            detail.setProId(Long.valueOf(tjProId));
-            detail.setIsAddition("Y");
-            detail.setCreateBy(sysUser.getNickName());
-            detail.setCreateTime(new Date());
-            detail.setUpdateBy(sysUser.getNickName());
-            detail.setUpdateTime(new Date());
-            detail.setCreateId(String.valueOf(sysUser.getUserId()));
-            detail.setUpdateId(String.valueOf(sysUser.getUserId()));
-            tjOrderDetailService.save(detail);
-            for (Long proId : proIds) {
+            if (null != project && project.getProParentId() == 0) {
+                TjOrderRemark tjOrderRemark = new TjOrderRemark();
+                tjOrderRemark.setProId(Long.valueOf(tjProId));
+                tjOrderRemark.setProName(project.getProName());
+                tjOrderRemark.setDeptId(project.getDeptId());
+                tjOrderRemark.setTjNumber(order.getTjNumber());
+                tjOrderRemark.setCreateBy(sysUser.getNickName());
+                tjOrderRemark.setCreateTime(new Date());
+                tjOrderRemark.setUpdateBy(sysUser.getNickName());
+                tjOrderRemark.setUpdateTime(new Date());
+                tjOrderRemark.setCreateId(String.valueOf(sysUser.getUserId()));
+                tjOrderRemark.setUpdateId(String.valueOf(sysUser.getUserId()));
+                orderRemarkService.save(tjOrderRemark);
+
+                List<Long> proIds = projectService.getTjProjectListBySoneId(tjProId).stream().map(TjProject::getProId).collect(Collectors.toList());
+                TjOrderDetail detail = new TjOrderDetail();
+                detail.setTjStatus(0L);
+                detail.setOrderId(tjFlowingWater.getOrderId());
+                detail.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber()));
+                detail.setProId(Long.valueOf(tjProId));
+                detail.setIsAddition("Y");
+                detail.setCreateBy(sysUser.getNickName());
+                detail.setCreateTime(new Date());
+                detail.setUpdateBy(sysUser.getNickName());
+                detail.setUpdateTime(new Date());
+                detail.setCreateId(String.valueOf(sysUser.getUserId()));
+                detail.setUpdateId(String.valueOf(sysUser.getUserId()));
+                tjOrderDetailService.save(detail);
+                for (Long proId : proIds) {
+                    TjOrderDetail detail1 = new TjOrderDetail();
+                    detail1.setTjStatus(0L);
+                    detail1.setOrderId(tjFlowingWater.getOrderId());
+                    detail1.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber()));
+                    detail1.setProId(proId);
+                    detail1.setIsAddition("Y");
+                    detail.setCreateBy(sysUser.getNickName());
+                    detail.setCreateTime(new Date());
+                    detail.setUpdateBy(sysUser.getNickName());
+                    detail.setUpdateTime(new Date());
+                    detail.setCreateId(String.valueOf(sysUser.getUserId()));
+                    detail.setUpdateId(String.valueOf(sysUser.getUserId()));
+                    tjOrderDetailService.save(detail1);
+                }
+                wqq.in(TbTransition::getProId, proIds);
+            } else {
+
+                wqq.in(TbTransition::getProId, Arrays.asList(tjProIds));
+
+                TjProject projects = projectService.selectTjProjectByProId(Long.valueOf(tjProId));
+                if (null != projects) {
+                    TjProject projectss = projectService.selectTjProjectByProId(projects.getProParentId());
+                    if (null != projectss) {
+                        TjOrderRemark tjOrderRemark = new TjOrderRemark();
+                        tjOrderRemark.setProId(Long.valueOf(tjProId));
+                        tjOrderRemark.setProName(projectss.getProName());
+                        tjOrderRemark.setDeptId(projectss.getDeptId());
+                        tjOrderRemark.setTjNumber(order.getTjNumber());
+                        tjOrderRemark.setCreateBy(sysUser.getNickName());
+                        tjOrderRemark.setCreateTime(new Date());
+                        tjOrderRemark.setUpdateBy(sysUser.getNickName());
+                        tjOrderRemark.setUpdateTime(new Date());
+                        tjOrderRemark.setCreateId(String.valueOf(sysUser.getUserId()));
+                        tjOrderRemark.setUpdateId(String.valueOf(sysUser.getUserId()));
+                        orderRemarkService.save(tjOrderRemark);
+                    }
+                }
+//                List<Long> proIds = projectService.getTjProjectListBySoneId(tjProId).stream().map(TjProject::getProId).collect(Collectors.toList());
+                TjOrderDetail detail = new TjOrderDetail();
+                detail.setTjStatus(0L);
+                detail.setOrderId(tjFlowingWater.getOrderId());
+                detail.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber()));
+                detail.setProId(Long.valueOf(tjProId));
+                detail.setIsAddition("Y");
+                detail.setCreateBy(sysUser.getNickName());
+                detail.setCreateTime(new Date());
+                detail.setUpdateBy(sysUser.getNickName());
+                detail.setUpdateTime(new Date());
+                detail.setCreateId(String.valueOf(sysUser.getUserId()));
+                detail.setUpdateId(String.valueOf(sysUser.getUserId()));
+                tjOrderDetailService.save(detail);
+//                for (Long proId : proIds) {
                 TjOrderDetail detail1 = new TjOrderDetail();
                 detail1.setTjStatus(0L);
                 detail1.setOrderId(tjFlowingWater.getOrderId());
                 detail1.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber()));
-                detail1.setProId(proId);
+                detail1.setProId(Long.valueOf(tjProId));
                 detail1.setIsAddition("Y");
                 detail.setCreateBy(sysUser.getNickName());
                 detail.setCreateTime(new Date());
@@ -489,10 +569,9 @@
                 detail.setCreateId(String.valueOf(sysUser.getUserId()));
                 detail.setUpdateId(String.valueOf(sysUser.getUserId()));
                 tjOrderDetailService.save(detail1);
+//                }
             }
-            LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>();
-            wqq.eq(TbTransition::getCusId, customer.getCusIdcard());
-            wqq.in(TbTransition::getProId, proIds);
+
             List<TbTransition> tbTransitionList = transitionService.list(wqq);
             if (null != tbTransitionList && tbTransitionList.size() > 0) {
                 for (TbTransition transition : tbTransitionList) {
@@ -516,8 +595,9 @@
                     }
                 }
                 //鐖堕」
-                TjProject parentProject = projectService.getById(tjProId);
-                if (null != parentProject) {
+
+                TjProject parentProject = projectService.selectTjProjectByProId(Long.valueOf(tjProId));
+                if (null != parentProject && parentProject.getProParentId() == 0) {
                     LambdaQueryWrapper<TjProConsumables> wqqq = new LambdaQueryWrapper<>();
                     wqqq.eq(TjProConsumables::getProId, parentProject.getProId());
                     List<TjProConsumables> proConsumables = proConsumablesService.list(wqqq);
@@ -525,6 +605,20 @@
                         for (TjProConsumables tjProConsumables : proConsumables) {
                             TjConsumables tjConsumables = consumablesService.selectTjConsumablesById(tjProConsumables.getConsumablesId());
                             list2.add(tjConsumables);
+                        }
+                    }
+
+                } else {
+                    TjProject parentProjects = projectService.getById(tjProId);
+                    if (null != parentProjects) {
+                        LambdaQueryWrapper<TjProConsumables> wqqq = new LambdaQueryWrapper<>();
+                        wqqq.eq(TjProConsumables::getProId, parentProjects.getProId());
+                        List<TjProConsumables> proConsumables = proConsumablesService.list(wqqq);
+                        if (null != proConsumables && proConsumables.size() > 0) {
+                            for (TjProConsumables tjProConsumables : proConsumables) {
+                                TjConsumables tjConsumables = consumablesService.selectTjConsumablesById(tjProConsumables.getConsumablesId());
+                                list2.add(tjConsumables);
+                            }
                         }
                     }
                 }
@@ -553,10 +647,26 @@
     @Override
     @Async("async")
     public void dockerSetCustomerLisByRedis(List<Long> ksproList, String ksId) {
+
         List<TjCustomer> yjAjaxResult = getYjAjaxResult(ksproList);
         List<TjCustomer> wjAjaxResult = getWjAjaxResult(ksproList);
         redisCache.setCacheMapValue(ksId + "ks", "wj", wjAjaxResult);
         redisCache.setCacheMapValue(ksId + "ks", "yj", yjAjaxResult);
+    }
+
+    @Override
+    @Async("async")
+    public void dockerSetYjCustomerByRedis(Long orderId, Long ksId) {
+        //宸叉(鍗曚釜瀛樺叆)0鏈,1宸叉
+        getDgYjAjaxResult(orderId, ksId);
+    }
+
+    @Override
+    @Async("async")
+    public void dockerSetWjCustomerByRedis(Long orderId, Long ksId) {
+
+        //鏈(鍗曚釜瀛樺叆)0鏈,1宸叉
+        getDgWjAjaxResult(orderId, ksId);
     }
 
     @Override
@@ -671,7 +781,9 @@
     @Override
     @Async("async")
     public void tjGoutAsync(List<QjDomainVo> domainVos, SysUser sysUser, Set<String> list) {
+        Integer day = 0;
         for (QjDomainVo domainVo : domainVos) {
+            day = domainVo.getDay();
             TjOrderRemark remark = orderRemarkService.getById(domainVo.getRemarkId());
             TjOrder order = orderService.getOrderByTjNum(domainVo.getTjNumber());
             //缁欏純妫�琛ㄦ坊鍔犺褰�
@@ -695,6 +807,7 @@
 
             LambdaQueryWrapper<TjProject> wq1 = new LambdaQueryWrapper<>();
             wq1.eq(TjProject::getProParentId, remark.getProId());
+            wq1.eq(TjProject::getNeedReport, "Y");
             List<TjProject> projectList = projectService.list(wq1);
             if (null != projectList && projectList.size() > 0) {
                 List<Long> collect = projectList.stream().map(TjProject::getProId).collect(Collectors.toList());
@@ -713,13 +826,14 @@
             }
         }
         if (list.size() > 0) {
+            Date date = new Date();
             for (String s : list) {
                 TjOrder tjOrder = orderService.getOrderByTjNum(s);
                 if (null != tjOrder) {
                     tjOrder.setStatus(TjConstants.TJ_DELAY);
                     tjOrder.setFinishTime(null);
                     tjOrder.setUpdateBy(sysUser.getNickName());
-                    tjOrder.setUpdateTime(new DateTime());
+                    tjOrder.setUpdateTime(date);
                     tjOrder.setUpdateId(String.valueOf(sysUser.getUserId()));
                     orderService.updateById(tjOrder);
                     TjCustomer customer = tjCustomerService.selectTjCustomerByCusId(tjOrder.getUserId());
@@ -729,15 +843,15 @@
                     yqOrder.setSex(String.valueOf(customer.getCusSex()));
                     yqOrder.setAge(customer.getAge());
                     yqOrder.setPhone(customer.getCusPhone());
-                    yqOrder.setYqTime(new Date());
+                    yqOrder.setYqTime(DateUtil.offsetDay(date, day));
                     yqOrder.setOrderTime(tjOrder.getCreateTime());
                     yqOrder.setProIds(orderRemarkService.getTjOrderRemarkProIdList(s));
                     yqOrder.setEmilSend("0");
                     yqOrder.setMsgSend("0");
                     yqOrder.setCreateBy(sysUser.getNickName());
-                    yqOrder.setCreateTime(new DateTime());
+                    yqOrder.setCreateTime(date);
                     yqOrder.setUpdateBy(sysUser.getNickName());
-                    yqOrder.setUpdateTime(new DateTime());
+                    yqOrder.setUpdateTime(date);
                     yqOrder.setCreateId(String.valueOf(sysUser.getUserId()));
                     yqOrder.setUpdateId(String.valueOf(sysUser.getUserId()));
                     yqOrderService.save(yqOrder);
@@ -958,6 +1072,108 @@
     @Async("async")
     public void getPieChart() {
         redisCache.setCacheObject("getPieChart", getPieCharts());
+    }
+
+    @Override
+    public void addTjChargingStandard(TjOrder order, List<TbTransition> tbTransitionList, SysUser sysUser) {
+        List<TjConsumables> list2 = new ArrayList<>();
+        for (TbTransition transition : tbTransitionList) {
+
+            if (transition.getNowPrice().compareTo(BigDecimal.valueOf(0)) == 0) {
+                continue;
+            }
+
+            TjProject tjProject = projectService.selectTjProjectByProId(transition.getProId());
+            //瀛愰」
+            if (null != tjProject) {
+                TjChargingStandard tjChargingStandard = new TjChargingStandard();
+                tjChargingStandard.setTjNum(order.getTjNumber());
+                tjChargingStandard.setProId(transition.getProId());
+                tjChargingStandard.setPrice(transition.getNowPrice());
+                tjChargingStandard.setProName(tjProject.getProName());
+                tjChargingStandard.setCreateBy(sysUser.getNickName());
+                tjChargingStandard.setCreateTime(new Date());
+                tjChargingStandard.setUpdateBy(sysUser.getNickName());
+                tjChargingStandard.setUpdateTime(new Date());
+                tjChargingStandard.setCreateId(String.valueOf(sysUser.getUserId()));
+                tjChargingStandard.setUpdateId(String.valueOf(sysUser.getUserId()));
+                chargingStandardService.save(tjChargingStandard);
+            }
+        }
+
+        //鐖堕」
+        ArrayList<TbTransition> collect1 = tbTransitionList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(TbTransition::getParentProId))), ArrayList::new));
+        List<Long> parentProIds = collect1.stream().map(TbTransition::getParentProId).collect(Collectors.toList());
+        if (parentProIds.size() > 0) {
+            for (Long parentProId : parentProIds) {
+                TjProject parentProject = projectService.selectTjProjectByProId(parentProId);
+                if (null != parentProject) {
+                    LambdaQueryWrapper<TjProConsumables> wqqq = new LambdaQueryWrapper<>();
+                    wqqq.eq(TjProConsumables::getProId, parentProject.getProId());
+                    List<TjProConsumables> proConsumables = proConsumablesService.list(wqqq);
+                    if (null != proConsumables && proConsumables.size() > 0) {
+                        for (TjProConsumables tjProConsumables : proConsumables) {
+                            TjConsumables tjConsumables = consumablesService.selectTjConsumablesById(tjProConsumables.getConsumablesId());
+                            list2.add(tjConsumables);
+                        }
+                    }
+                }
+            }
+        }
+
+        ArrayList<TjConsumables> collect = list2.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(TjConsumables::getId))), ArrayList::new));
+        for (TjConsumables tjConsumables : collect) {
+            TjChargingStandard tjChargingStandard = new TjChargingStandard();
+            tjChargingStandard.setTjNum(order.getTjNumber());
+            tjChargingStandard.setConsumablesId(tjConsumables.getId());
+            tjChargingStandard.setPrice(tjConsumables.getPrice());
+            tjChargingStandard.setProName(tjConsumables.getMakings());
+            tjChargingStandard.setConsumablesName(tjConsumables.getMakings());
+            tjChargingStandard.setCompany(tjConsumables.getSpecifications());
+            tjChargingStandard.setCreateBy(sysUser.getNickName());
+            tjChargingStandard.setCreateTime(new Date());
+            tjChargingStandard.setUpdateBy(sysUser.getNickName());
+            tjChargingStandard.setUpdateTime(new Date());
+            tjChargingStandard.setCreateId(String.valueOf(sysUser.getUserId()));
+            tjChargingStandard.setUpdateId(String.valueOf(sysUser.getUserId()));
+            chargingStandardService.save(tjChargingStandard);
+        }
+
+        LambdaQueryWrapper<TjOrderDetail> wq = new LambdaQueryWrapper<>();
+        wq.eq(TjOrderDetail::getOrderId, order.getOrderId());
+        wq.isNotNull(TjOrderDetail::getFlowingWaterId);
+        wq.eq(TjOrderDetail::getIsSampling, 0);
+        List<TjOrderDetail> detailList = tjOrderDetailService.list(wq);
+        if (null != detailList && detailList.size() > 0) {
+            String format = DateUtil.format(new Date(), "yyMMddHHmmssSSS");
+            for (TjOrderDetail detail : detailList) {
+                TjSampling sampling = new TjSampling();
+                if (null == projectService.getById(detail.getProId())) continue;
+                Long proParentId = projectService.getById(detail.getProId()).getProParentId();
+                if (null != proParentId && proParentId == 0) {
+                    sampling.setSpecimenType(projectService.getById(detail.getProId()).getSpecimenType());
+                } else {
+                    sampling.setSpecimenType(projectService.getById(projectService.getById(detail.getProId()).getProParentId()).getSpecimenType());
+                }
+                sampling.setSamplingNumber(format);
+                sampling.setTjNum(order.getTjNumber());
+                sampling.setCusId(String.valueOf(order.getUserId()));
+                if (tjCustomerService.getById(String.valueOf(order.getUserId())) != null) {
+                    sampling.setCusName(tjCustomerService.getById(String.valueOf(order.getUserId())).getCusName());
+                }
+                sampling.setApplicationTime(new Date());
+                sampling.setTjTime(order.getCreateTime());
+                sampling.setProId(String.valueOf(detail.getProId()));
+                sampling.setProName(projectService.getById(detail.getProId()).getProName());
+                sampling.setCreateBy(sysUser.getNickName());
+                sampling.setCreateTime(new Date());
+                sampling.setUpdateBy(sysUser.getNickName());
+                sampling.setUpdateTime(new Date());
+                sampling.setCreateId(String.valueOf(sysUser.getUserId()));
+                sampling.setUpdateId(String.valueOf(sysUser.getUserId()));
+                samplingService.save(sampling);
+            }
+        }
     }
 
     //棣栭〉楗肩姸鍥剧櫥璁颁汉鏁版帴鍙�
@@ -1267,7 +1483,7 @@
         }
     }
 
-    //宸叉
+    //宸叉(鏁翠綋瀛樺叆)
     public List<TjCustomer> getYjAjaxResult(List<Long> ksproList) {
         List<TjCustomer> customerLis = new ArrayList<>();
         LambdaQueryWrapper<TjOrderDetail> wq1 = new LambdaQueryWrapper<>();
@@ -1282,6 +1498,7 @@
                     () -> 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) {
@@ -1289,10 +1506,10 @@
                     }
                     LambdaQueryWrapper<TjOrderDetail> qww = new LambdaQueryWrapper<>();
                     qww.eq(TjOrderDetail::getOrderId, order.getOrderId());
-                    qww.eq(TjOrderDetail::getTjStatus,0);
+                    qww.eq(TjOrderDetail::getTjStatus, 0);
                     qww.isNotNull(TjOrderDetail::getFlowingWaterId);
                     List<TjOrderDetail> lists = tjOrderDetailService.list(qww);
-                    if (null != lists&&lists.size()>0) {
+                    if (null != lists && lists.size() > 0) {
                         continue;
                     }
 
@@ -1301,7 +1518,7 @@
                         //閬嶅巻椤圭洰 鍒ゆ柇鏄惁鏈夐噸澶ч槼鎬�  鏍囪
                         for (TjOrderDetail tjOrderDetail11 : lists) {
                             customer.setIsPositive(tjOrderDetail11.getIsPositive());
-                            if (tjOrderDetail11.getIsPositive()==1){
+                            if (tjOrderDetail11.getIsPositive() == 1) {
                                 break;
                             }
                         }
@@ -1342,7 +1559,7 @@
         return customerLis;
     }
 
-    //鏈
+    //鏈(鏁翠綋瀛樺叆)
     public List<TjCustomer> getWjAjaxResult(List<Long> ksproList) {
         List<TjCustomer> customerLis = new ArrayList<>();
         LambdaQueryWrapper<TjOrderDetail> wq1 = new LambdaQueryWrapper<>();
@@ -1357,6 +1574,9 @@
                     () -> new TreeSet<>(Comparator.comparing(TjOrderDetail::getOrderId))
             ), ArrayList::new)).stream().map(TjOrderDetail::getOrderId).collect(Collectors.toList());
             for (Long orderId : orderIds) {
+//                for (Long aLong : ksproList) {
+//                    getDgWjAjaxResult(orderId,aLong);
+//                }
                 if (null != orderId) {
                     TjOrder order = orderService.getById(orderId);
                     if (null == order) {
@@ -1374,7 +1594,7 @@
                             //閬嶅巻椤圭洰 鍒ゆ柇鏄惁鏈夐噸澶ч槼鎬�  鏍囪
                             for (TjOrderDetail tjOrderDetail11 : lists) {
                                 customer.setIsPositive(tjOrderDetail11.getIsPositive());
-                                if (tjOrderDetail11.getIsPositive()==1){
+                                if (tjOrderDetail11.getIsPositive() == 1) {
                                     break;
                                 }
                             }
@@ -1404,11 +1624,15 @@
                             StringBuilder stringBuilder = new StringBuilder();
                             for (TjOrderRemark remark : list) {
                                 TjProject byId = projectService.getById(remark.getProId());
-                                stringBuilder.append(byId.getProName()).append(";");
+                                if (null != byId) {
+                                    stringBuilder.append(byId.getProName()).append(";");
+                                }
+
                             }
                             customer.setNotCheckeds(String.valueOf(stringBuilder));
                             if (null == customer.getNotCheckeds()) customer.setNotCheckeds("鍏ㄩ儴宸叉");
                         }
+
                         customerLis.add(customer);
                     }
                 }
@@ -1416,6 +1640,122 @@
         }
         return customerLis;
     }
+
+    //宸叉(鍗曚釜瀛樺叆)0鏈,1宸叉
+    public void getDgYjAjaxResult(Long orderId, Long ksId) {
+        if (null != orderId) {
+            TjOrder order = orderService.getById(orderId);
+            if (null != order) {
+                LambdaQueryWrapper<TjOrderDetail> qww = new LambdaQueryWrapper<>();
+                qww.eq(TjOrderDetail::getOrderId, order.getOrderId());
+                qww.eq(TjOrderDetail::getTjStatus, 0);
+                qww.isNotNull(TjOrderDetail::getFlowingWaterId);
+                TjCustomer customer = tjCustomerService.getById(order.getUserId());
+                List<TjOrderDetail> lists = tjOrderDetailService.list(qww);
+                if (null == lists || lists.size() == 0) {
+                    redisCache.deleteCacheMapValue("ks" + ksId + customer.getCusId(), "1");
+                    redisCache.setCacheMapValue("ks:" + ksId + ":" + customer.getCusId(), "0", customer);
+                }
+                if (null != customer) {
+                    //閬嶅巻椤圭洰 鍒ゆ柇鏄惁鏈夐噸澶ч槼鎬�  鏍囪
+                    for (TjOrderDetail tjOrderDetail11 : lists) {
+                        customer.setIsPositive(tjOrderDetail11.getIsPositive());
+                        if (tjOrderDetail11.getIsPositive() == 1) {
+                            break;
+                        }
+                    }
+                    customer.setCusName(hideCusName(customer.getCusName()));
+                    customer.setCusPhone(hidePhoneNum(customer.getCusPhone()));
+                    customer.setCusIdcard(hideIdCardNum(customer.getCusIdcard()));
+                    if (order.getTjType().equals("1")) {
+                        customer.setTjType("鍥綋");
+                    }
+                    if (order.getTjType().equals("2")) {
+                        customer.setTjType("涓汉");
+                    }
+                    customer.setTjTime(order.getCreateTime());
+                    customer.setTjNumber(order.getTjNumber());
+                    customer.setTjStatus(1L);
+                    customer.setOrderId(order.getOrderId());
+                    customer.setIsHz(order.getIsHz());
+                    customer.setTjCategory(order.getTjCategory());
+                    LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>();
+                    wq.eq(TjOrderRemark::getTjNumber, order.getTjNumber());
+                    wq.in(TjOrderRemark::getType, 0, 3);
+                    List<TjOrderRemark> list = orderRemarkService.list(wq);
+                    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("鍏ㄩ儴宸叉");
+                    }
+                    redisCache.setCacheMapValue("ks:" + ksId + ":" + customer.getCusId(), "1", customer);
+                }
+            }
+        }
+    }
+
+
+    //鏈(鍗曚釜瀛樺叆)0鏈,1宸叉
+    public void getDgWjAjaxResult(Long orderId, Long ksId) {
+        if (null != orderId) {
+            TjOrder order = orderService.getById(orderId);
+            if (null == order) {
+                TjCustomer customer = tjCustomerService.getById(order.getUserId());
+                if (null != customer) {
+                    LambdaQueryWrapper<TjOrderDetail> qww = new LambdaQueryWrapper<>();
+                    qww.eq(TjOrderDetail::getOrderId, order.getOrderId());
+                    qww.isNotNull(TjOrderDetail::getFlowingWaterId);
+                    List<TjOrderDetail> lists = tjOrderDetailService.list(qww);
+                    if (null != lists) {
+                        //閬嶅巻椤圭洰 鍒ゆ柇鏄惁鏈夐噸澶ч槼鎬�  鏍囪
+                        for (TjOrderDetail tjOrderDetail11 : lists) {
+                            customer.setIsPositive(tjOrderDetail11.getIsPositive());
+                            if (tjOrderDetail11.getIsPositive() == 1) {
+                                break;
+                            }
+                        }
+                    }
+
+                    customer.setCusName(hideCusName(customer.getCusName()));
+                    customer.setCusPhone(hidePhoneNum(customer.getCusPhone()));
+                    customer.setCusIdcard(hideIdCardNum(customer.getCusIdcard()));
+
+                    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());
+                    customer.setTjStatus(0L);
+                    LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>();
+                    wq.eq(TjOrderRemark::getTjNumber, order.getTjNumber());
+                    wq.in(TjOrderRemark::getType, 0, 3);
+                    List<TjOrderRemark> list = orderRemarkService.list(wq);
+                    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("鍏ㄩ儴宸叉");
+                    }
+//                        redisCache.setCacheMapValue("ks"+ksId+":"+customer.getCusId(),"1",customer);
+                    redisCache.setCacheMapValue("ks" + ksId + ":" + customer.getCusId(), "0", customer);
+                }
+            }
+        }
+    }
+
 
     //宸插
     private List<TjCustomer> getYsResult(String config) {
@@ -1542,14 +1882,12 @@
                     String summary = remark.getSummary();
                     if (null != summary) {
                         String[] split = summary.split(";");
-                        List<Long> longList = new ArrayList<>();
-                        for (String str : split) {
-                            if(!"".equals(str)){
-                                longList.add(Long.valueOf(str));
-                            }
-                        }
-//                        parent.put("parentAdvice", tjAdviceService.getAdviceStringByIds(longList));
-                        //parent.put("parentAdvice", tjAdviceService.getAdviceStringsByIds(Arrays.asList(split)));
+//                        List<Long> longList = new ArrayList<>();
+//                        for (String str : split) {
+//                            if(!"".equals(str)){
+//                                longList.add(Long.valueOf(str));
+//                            }
+//                        }
                         parent.put("parentAdvice", tjAdviceService.getAdviceStringByIds(split));
                     } else {
                         parent.put("parentAdvice", null);

--
Gitblit v1.8.0