From 77b51f625a13a8254eb2e8a9aa53bacf575f7274 Mon Sep 17 00:00:00 2001
From: lige <bestlige@outlook.com>
Date: 星期一, 04 十二月 2023 18:13:49 +0800
Subject: [PATCH] 1

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java |  397 +++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 363 insertions(+), 34 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 f241401..ac5be6f 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
@@ -6,10 +6,14 @@
 import com.ltkj.common.core.domain.AjaxResult;
 import com.ltkj.common.core.domain.entity.SysUser;
 import com.ltkj.common.core.redis.RedisCache;
+import com.ltkj.common.utils.SecurityUtils;
 import com.ltkj.common.utils.StringUtils;
+import com.ltkj.framework.config.MatchUtils;
 import com.ltkj.hosp.domain.*;
 import com.ltkj.hosp.service.*;
 import com.ltkj.hosp.vodomain.AddNewReservationConfirm;
+import com.ltkj.hosp.vodomain.LineChartsVo;
+import com.ltkj.hosp.vodomain.PieChartVo;
 import com.ltkj.hosp.vodomain.QjDomainVo;
 import com.ltkj.mall.mallOrderUtils.TjConstants;
 import com.ltkj.system.service.ISysUserService;
@@ -24,6 +28,7 @@
 import java.util.*;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
+import java.util.concurrent.TimeUnit;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
@@ -81,6 +86,16 @@
     private ITjAdviceService tjAdviceService;
     @Resource
     private ISysUserService userService;
+    @Resource
+    private IJimuOnlineReportService reportService;
+    @Resource
+    private ITjDwDeptService dwDeptService;
+    @Resource
+    private ITjPrintOrderService printOrderService;
+    @Resource
+    private IDictSfxmService dictSfxmService;
+    @Autowired
+    private ITjRulesService tjRulesService;
 
 
     @Override
@@ -264,6 +279,7 @@
     @Async("async")
     public void collectFees(TjOrder order, List<TjConsumables> list2, List<TbTransition> tbTransitionList, SysUser sysUser, String discount) {
         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);
@@ -313,6 +329,8 @@
                     tjOrderRemark.setCreateId(String.valueOf(sysUser.getUserId()));
                     tjOrderRemark.setUpdateId(String.valueOf(sysUser.getUserId()));
                     orderRemarkService.save(tjOrderRemark);
+                    Map<String, Object> map = getOrderDetailByProParentId(String.valueOf(parentProId), order.getTjNumber());
+                    redisCache.setCacheMapValue("getOrderDetailByProParentId"+order.getTjNumber(),String.valueOf(parentProId),map);
                 }
             }
         }
@@ -638,6 +656,7 @@
             wq2.eq(TjSampling::getTjNum,tjNum);
             wq2.eq(TjSampling::getProId,refundPro.getProId());
             samplingService.remove(wq2);
+            redisCache.deleteCacheMapValue("getOrderDetailByProParentId"+tjNum, String.valueOf(refundPro.getProId()));
         }
     }
 
@@ -670,6 +689,7 @@
                 td.setCreateId(String.valueOf(sysUser.getUserId()));
                 td.setUpdateId(String.valueOf(sysUser.getUserId()));
                 discardInspectionService.save(td);
+                redisCache.deleteCacheMapValue("getOrderDetailByProParentId"+domainVo.getTjNumber(),String.valueOf(remark.getProId()));
             }
 
             LambdaQueryWrapper<TjProject>wq1=new LambdaQueryWrapper<>();
@@ -869,7 +889,6 @@
     @Override
     @Async("async")
     public void saveNewReservationConfirm(List<TjReservation> rightList) {
-        long l = System.currentTimeMillis();
         if(null !=rightList && rightList.size()>0){
             //鍒涘缓绾跨▼姹�
             ExecutorService threadPool = Executors.newFixedThreadPool(rightList.size());
@@ -891,26 +910,238 @@
                 });
             }
         }
-        long ll = System.currentTimeMillis();
-
-        System.out.println("杩欐浠g爜鎵ц鏃堕棿涓�"+ (ll-l));
     }
 
     @Override
     @Async("async")
     public void updateCheckType(String tjNum) {
-//        AjaxResult ajaxResult = getAjaxResult(tjNum);
         redisCache.setCacheMapValue("updateCheckType"+tjNum,tjNum,getAjaxResult(tjNum));
+        redisCache.setHashKeyExpireTime("updateCheckType"+tjNum,7L, TimeUnit.DAYS);
     }
 
     @Override
     @Async("async")
-    public void addRedis(List<TjCustomer> customers) {
-        for (TjCustomer customer : customers) {
-            redisCache.setCacheMapValue("updateCheckType"+customer.getTjNumber(),customer.getTjNumber(),getAjaxResult(customer.getTjNumber()));
-        }
+    public void getPrintOrderList(List<TjOrder> list) {
+
+        redisCache.setCacheMapValue("getPrintOrderList","0",extracted(0, list));
+        redisCache.setCacheMapValue("getPrintOrderList","1",extracted(1, list));
+
     }
 
+    @Override
+    @Async("async")
+    public void getDictSfxms() {
+        List<DictSfxm> dictSfxm = getDictSfxm();
+        redisCache.setCacheObject("getDictSfxms",dictSfxm);
+    }
+
+    @Override
+    @Async("async")
+    public void getOrderDetailByProParentId(String tjNumber,Map<String, Object> map,String proParentId) {
+        if(null !=map && !map.isEmpty()){
+            redisCache.setCacheMapValue("getOrderDetailByProParentId"+tjNumber,proParentId,map);
+        }else {
+            redisCache.setCacheMapValue("getOrderDetailByProParentId"+tjNumber,proParentId,getOrderDetailByProParentId(proParentId,tjNumber));
+        }
+        redisCache.setHashKeyExpireTime("getOrderDetailByProParentId"+tjNumber,7L,TimeUnit.DAYS);
+
+    }
+
+    @Override
+    @Async("async")
+    public void getLineChart() {
+        redisCache.setCacheObject("getLineChart",getLineCharts());
+    }
+
+    @Override
+    @Async("async")
+    public void getPieChart() {
+        redisCache.setCacheObject("getPieChart",getPieCharts());
+    }
+
+    //棣栭〉楗肩姸鍥剧櫥璁颁汉鏁版帴鍙�
+    private AjaxResult getPieCharts() {
+        Map<String, Object> map = new HashMap<>();
+
+        //鑾峰彇浣撴鐧昏鏁�
+        LambdaQueryWrapper<TjOrder> wq0 = new LambdaQueryWrapper<>();
+        wq0.between(TjOrder::getCreateTime, DateUtil.lastMonth(), DateUtil.now());
+        List<TjOrder> orderCountList = orderService.list(wq0);
+        if (null != orderCountList && orderCountList.size() > 0) {
+            List<PieChartVo> pieChartVoList = getTjorderCountMap(orderCountList);
+            map.put("tjdj", pieChartVoList);
+        } else {
+            map.put("tjdj", 0);
+        }
+        //鑾峰彇浣撴寮傚父鏁�
+        LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>();
+        wq1.between(TjOrder::getFinishTime, DateUtil.lastMonth(), DateUtil.now());
+        wq1.eq(TjOrder::getCheckStatus, 1);
+        List<TjOrder> orderAbnormalCountList = orderService.list(wq1);
+        if (null != orderAbnormalCountList && orderAbnormalCountList.size() > 0) {
+            List<PieChartVo> pieChartVoList = getTjorderAbnormalCountMap(orderAbnormalCountList);
+            map.put("tjyc", pieChartVoList);
+        } else {
+            map.put("tjyc", 0);
+        }
+
+        return AjaxResult.success(map);
+    }
+
+    //棣栭〉鎶樼嚎鍥炬暟鎹�
+    private AjaxResult getLineCharts() {
+//        List<Map<Object, Object>> line = orderService.getLine();
+        List<LineChartsVo> line = orderService.getLine();
+        Collections.reverse(line);
+        return AjaxResult.success("鎶樼嚎鍥炬暟鎹�", line);
+    }
+
+
+    //鑾峰彇浣撴鐧昏鏁�
+    private List<PieChartVo> getTjorderCountMap(List<TjOrder> orderList) {
+        int a = 0;
+        int b = 0;
+        int c = 0;
+        int d = 0;
+        int e = 0;
+        Map<String, Object> map = null;
+        for (TjOrder tjOrder : orderList) {
+            map = new HashMap<>();
+            TjCustomer customer = tjCustomerService.getById(tjOrder.getUserId());
+            if (null != customer) {
+                int age = DateUtil.ageOfNow(customer.getCusBrithday());
+                if (age >= 0 && age <= 3) {
+                    a += 1;
+                } else if (age > 3 && age <= 16) {
+                    b += 1;
+                } else if (age > 16 && age <= 40) {
+                    c += 1;
+                } else if (age > 40 && age <= 60) {
+                    d += 1;
+                } else {
+                    e += 1;
+                }
+            }
+            map.put("0-3宀�", a);
+            map.put("3-16宀�", b);
+            map.put("16-40宀�", c);
+            map.put("40-60宀�", d);
+            map.put("60宀佷互涓�", e);
+        }
+        List<PieChartVo> pieChartVoList = new ArrayList<>();
+        assert map != null;
+        for (Map.Entry<String, Object> entry : map.entrySet()) {
+            PieChartVo pieChartVo = new PieChartVo();
+            pieChartVo.setName(entry.getKey());
+            pieChartVo.setCount((Integer) entry.getValue());
+            pieChartVoList.add(pieChartVo);
+        }
+        return pieChartVoList;
+    }
+
+    //鑾峰彇浣撴寮傚父鏁�
+    private List<PieChartVo> getTjorderAbnormalCountMap(List<TjOrder> orderList) {
+        int a = 0;
+        int b = 0;
+        int c = 0;
+        int d = 0;
+        int e = 0;
+        Map<String, Object> map = null;
+        for (TjOrder tjOrder : orderList) {
+            map = new HashMap<>();
+            LambdaQueryWrapper<TjOrderDetail> wq = new LambdaQueryWrapper<>();
+            wq.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId());
+            wq.eq(TjOrderDetail::getExceptionDesc, 1);
+            List<TjOrderDetail> list = tjOrderDetailService.list(wq);
+            if (null != list && list.size() > 0) {
+                TjCustomer customer = tjCustomerService.getById(tjOrder.getUserId());
+                if (null != customer) {
+                    int age = DateUtil.ageOfNow(customer.getCusBrithday());
+                    if (age >= 0 && age <= 3) {
+                        a += 1;
+                    } else if (age > 3 && age <= 16) {
+                        b += 1;
+                    } else if (age > 16 && age <= 40) {
+                        c += 1;
+                    } else if (age > 40 && age <= 60) {
+                        d += 1;
+                    } else {
+                        e += 1;
+                    }
+                }
+                map.put("0-3宀�", a);
+                map.put("3-16宀�", b);
+                map.put("16-40宀�", c);
+                map.put("40-60宀�", d);
+                map.put("60宀佷互涓�", e);
+            }
+        }
+        List<PieChartVo> pieChartVoList = new ArrayList<>();
+        assert map != null;
+        for (Map.Entry<String, Object> entry : map.entrySet()) {
+            PieChartVo pieChartVo = new PieChartVo();
+            pieChartVo.setName(entry.getKey());
+            pieChartVo.setCount((Integer) entry.getValue());
+            pieChartVoList.add(pieChartVo);
+        }
+        return pieChartVoList;
+    }
+
+    private List<DictSfxm> getDictSfxm() {
+        List<DictSfxm> dictSfxms = dictSfxmService.getYjDictSfxmList();
+        if (null != dictSfxms && dictSfxms.size() > 0) {
+            for (DictSfxm dictSfxm : dictSfxms) {
+                List<DictSfxm> sfxms = dictSfxmService.getEjDictSfxmList(dictSfxm.getId());
+                if (null != sfxms && sfxms.size() > 0) {
+                    for (DictSfxm sfxm : sfxms) {
+                        List<DictSfxm> sfx = dictSfxmService.getSjDictSfxmList(dictSfxm.getId());
+                        sfxm.setDictSfxms(sfx);
+                    }
+                }
+                dictSfxm.setDictSfxms(sfxms);
+            }
+        }
+        return dictSfxms;
+    }
+    private List<TjOrder> extracted(Integer type, List<TjOrder> list) {
+        List<TjOrder> list1=new ArrayList<>();
+        for (TjOrder order : list) {
+            TjCustomer tjCustomer = tjCustomerService.selectTjCustomerByCusId(order.getUserId());
+            if (null != tjCustomer) {
+                order.setTjCustomerSex(tjCustomer.getCusSex());
+                order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday()));
+                order.setGrMoBanId(reportService.getGrMoBanIds());
+                order.setTjCustomerName(MatchUtils.hideCusName(tjCustomer.getCusName()));
+                if(null!=tjCustomer.getCusPhone())order.setTjCustomerPhone(MatchUtils.hidePhoneNum(tjCustomer.getCusPhone()));
+                if(null!=tjCustomer.getCusIdcard())order.setTjCusIdCard(MatchUtils.hideIdCardNum(tjCustomer.getCusIdcard()));
+            }
+            String firmId = order.getFirmId();
+            if (firmId != null && null != compService.selectDictCompByDrugManufacturerId(String.valueOf(order.getFirmId()))) {
+                order.setDictCompName(compService.selectDictCompByDrugManufacturerId(String.valueOf(order.getFirmId())).getCnName());
+            }
+            if (null != order.getPacId()) {
+                if (null != tjPackageService.getById(order.getPacId())) {
+                    order.setPacName(tjPackageService.getById(order.getPacId()).getPacName());
+                }
+                if (null != dwDeptService.getById(order.getPacId())) {
+                    order.setPacName(dwDeptService.getById(order.getPacId()).getDwDeptName());
+                }
+            }
+            //浠庢墦鍗拌褰曟煡鍑烘渶鏂版墦鍗版椂闂�
+            TjPrintOrder one = printOrderService.getTjPrintOrderByTjNum(order.getTjNumber());
+            if (null != type && type == 1 && one != null) {
+                order.setPrintTime(one.getCreateTime());
+                order.setPrintName(one.getCreateBy());
+                order.setType(1);
+                list1.add(order);
+            }
+            if (null != type && type == 0 && one == null) {
+                order.setType(0);
+                list1.add(order);
+            }
+        }
+        return list1;
+    }
     private void getTjPackageListsByMan(List<TjPackage> tjPackageList) {
         if (null != tjPackageList && tjPackageList.size() > 0) {
             for (TjPackage aPackage : tjPackageList) {
@@ -1028,8 +1259,6 @@
             redisCache.setCacheMapValue("getTjPackageListBySex","getTjPackageListByManAndWoMan",tjPackageList);
         }
     }
-
-
     //宸叉
     public List<TjCustomer> getYjAjaxResult(List<Long> ksproList) {
         List<TjCustomer> customerLis = new ArrayList<>();
@@ -1073,6 +1302,8 @@
                         customer.setTjTime(order.getCreateTime());
                         customer.setTjNumber(order.getTjNumber());
                         customer.setTjStatus(1L);
+                        customer.setOrderId(order.getOrderId());
+                        customer.setIsHz(order.getIsHz());
                         LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>();
                         wq.eq(TjOrderRemark::getTjNumber, order.getTjNumber());
                         wq.in(TjOrderRemark::getType, 0,3);
@@ -1093,7 +1324,6 @@
         }
         return customerLis;
     }
-
     //鏈
     public List<TjCustomer> getWjAjaxResult(List<Long> ksproList) {
         List<TjCustomer> customerLis = new ArrayList<>();
@@ -1128,6 +1358,8 @@
                         }
                         customer.setTjTime(order.getCreateTime());
                         customer.setTjNumber(order.getTjNumber());
+                        customer.setOrderId(order.getOrderId());
+                        customer.setIsHz(order.getIsHz());
                         customer.setTjStatus(0L);
                         LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>();
                         wq.eq(TjOrderRemark::getTjNumber, order.getTjNumber());
@@ -1149,7 +1381,6 @@
         }
         return customerLis;
     }
-
     //宸插
     private List<TjCustomer> getYsResult(String config) {
         List<TjOrder> orderList = null;
@@ -1189,7 +1420,6 @@
         }
         return customerList;
     }
-
     //鏈
     private List<TjCustomer> getWsResult(String config) {
         List<TjOrder> orderList = null;
@@ -1229,16 +1459,13 @@
         }
         return customerList;
     }
-
     //鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏
-    private AjaxResult getAjaxResult(String tjNumber) {
+    private List<Map<String, Object>> getAjaxResult(String tjNumber) {
         List<Map<String, Object>> list = new ArrayList<>();
         TjOrder one = orderService.getOrderByTjNum(tjNumber);
-
         if (one == null) {
-            return AjaxResult.error("鏆傛棤鏁版嵁锛侊紒");
+            return list;
         }
-
         TjCustomer customer = tjCustomerService.getById(one.getUserId());
         List<TjOrderRemark> remarkList = orderRemarkService.getRemarkListByTjNumAndType(tjNumber);
 
@@ -1255,7 +1482,11 @@
                 if (null != tjOrderDetails && tjOrderDetails.size() > 0) {
                     for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
                         final TjProject byId = projectService.selectTjProjectByProId(tjOrderDetail.getProId());
+                         if(null==byId){
+                             tjOrderDetailService.removeById(tjOrderDetail.getOrderDetailId());
+                        }else {
                         tjOrderDetail.setProject(byId);
+                        }
                         List<TjStandard> list2 = tjStandardService.getTjStandardListByProId(String.valueOf(tjOrderDetail.getProId()));
                         if (list2.size() == 0) {
                             tjOrderDetail.setStandard(new TjStandard());
@@ -1270,7 +1501,14 @@
                     String summary = remark.getSummary();
                     if (null != summary) {
                         String[] split = summary.split(";");
-                        parent.put("parentAdvice", tjAdviceService.getAdviceStringByIds(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(longList));
+                        parent.put("parentAdvice", tjAdviceService.getAdviceStringsByIds(Arrays.asList(split)));
 
                     } else {
                         parent.put("parentAdvice", null);
@@ -1281,16 +1519,11 @@
                         parent.put("doctorName", userService.getById(remark.getDoctorName()).getNickName());
                     }
                     list.add(parent);
-                } else {
-                    return AjaxResult.success("璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁");
                 }
-//                }
             }
-            return AjaxResult.success(list);
         }
-        return AjaxResult.success("璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁锛�");
+        return list;
     }
-
     //宸茬鏀�/鏈鏀�
     private List<Map<String, Object>>  getYWqsResult(int a) {
         LambdaQueryWrapper<TjSampling>wq=new LambdaQueryWrapper<>();
@@ -1328,8 +1561,6 @@
         }
         return arrayList;
     }
-
-
     /**
      * 闅愯棌鎵嬫満鍙�
      *
@@ -1337,6 +1568,9 @@
      * @return
      */
     public static String hidePhoneNum(String phoneNum){
+        if(null==phoneNum){
+            return "";
+        }
         if(phoneNum.contains("*")){
             return phoneNum;
         }
@@ -1355,7 +1589,6 @@
         }
         return sb.toString();
     }
-
     /**
      * 闅愯棌韬唤璇佸彿鐮�
      *
@@ -1363,6 +1596,9 @@
      * @return
      */
     public static String hideIdCardNum(String idCardNum){
+        if(null==idCardNum){
+            return "";
+        }
         if(idCardNum.contains("*")){
             return idCardNum;
         }
@@ -1384,8 +1620,6 @@
         }
         return sb.toString();
     }
-
-
     /**
      * 闅愯棌鐢ㄦ埛濮撳悕
      *
@@ -1393,6 +1627,9 @@
      * @return
      */
     public static String hideCusName(String cusName){
+        if(null==cusName){
+            return "";
+        }
         if(!cusName.contains("*")){
             String realname=null;
             char[] r =  cusName.toCharArray();
@@ -1409,15 +1646,107 @@
         }
         return cusName;
     }
-
-
     //涓存椂琛ㄦ坊鍔犲崟椤�
     public void saveRedisTransitionByProId(String cusId, List<Long> proIds) {
         for (Long proId : proIds) {
-            if (null != transitionService.getTbTransitionListByCusIdAndPacIdAndProId(cusId, String.valueOf(proId)) && transitionService.getTbTransitionListByCusIdAndPacIdAndProId(cusId, String.valueOf(proId)).size() > 0) {
+            List<TbTransition> transitionList = transitionService.getTbTransitionListByCusIdAndPacIdAndProId(cusId, String.valueOf(proId));
+            if (null != transitionList && transitionList.size() > 0) {
                 continue;
             }
             transitionService.saveRedisTransitionByProId(cusId,proId);
         }
     }
+    //鍚戠紦瀛樹腑娣诲姞 鐖堕」鐩殑瀛愰」鐩鎯�
+    private Map<String, Object> getOrderDetailByProParentId(String proParentId, String tjNumber) {
+        TjOrderRemark remark = orderRemarkService.getTjOrderRemarkByTjNumAndProParentId(tjNumber, proParentId);
+        List<TjProject> proParentList = projectService.getTjProjectListBySoneId(proParentId);
+        if (null == proParentList) {
+            return AjaxResult.error("璇ラ」鐩笅鏆傛椂娌℃暟鎹�");
+        }
+        List<Long> proParentIdList = proParentList.stream().map(TjProject::getProId).collect(Collectors.toList());
+        TjOrder one = orderService.getOrderByTjNum(tjNumber);
+        if (null == one) {
+            return AjaxResult.success("璇ョ敤鎴锋殏鏃舵病鏈変綋妫�鏁版嵁");
+        }
+        List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.getTjOrderDetailListInProParentIdList(String.valueOf(one.getOrderId()), proParentIdList);
+        TjCustomer customer = tjCustomerService.getById(one.getUserId());
+        if (null != tjOrderDetails && tjOrderDetails.size() > 0) {
+            for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
+                TjProject project = projectService.getById(tjOrderDetail.getProId());
+                List<TjRules> rulesList = tjRulesService.getTjRulesListByTjNumAndProId(tjNumber, tjOrderDetail.getProId());
+                tjOrderDetail.setRulesList(rulesList);
+
+                //鏌ユ爣鍑嗗拰鍗曚綅----start
+                List<TjStandard> list26 = tjStandardService.getTjStandardListByProId(String.valueOf(tjOrderDetail.getProId()));
+                if (list26.size() == 0) {
+                    project.setProMetering("/");
+                    project.setProScope("/");
+                } else if (list26.size() == 1) {
+                    project.setProMetering(list26.get(0).getCompany() == null ? " " : list26.get(0).getCompany());
+                    project.setProScope((list26.get(0).getTjStandardLtValue() == null ? " " : list26.get(0).getTjStandardLtValue()) + "-" + (list26.get(0).getTjStandardGtValue() == null ? " " : list26.get(0).getTjStandardGtValue()));
+                } else {
+                    Long cusSex = customer.getCusSex();
+                    Date cusBrithday = customer.getCusBrithday();
+                    int age = DateUtil.ageOfNow(cusBrithday);
+                    for (TjStandard tjStandard : list26) {
+                        LambdaQueryWrapper<TjStandard> wq8 = new LambdaQueryWrapper<>();
+                        if (tjStandard.getTjSex() != null) {
+                            wq8.eq(TjStandard::getTjSex, cusSex);
+                        }
+                        if (tjStandard.getTjType() != null) {
+                            wq8.eq(TjStandard::getTjType, StringUtils.getAgeType(age));
+                        }
+                        TjStandard standard = tjStandardService.getOne(wq8);
+                        project.setProMetering(standard.getCompany());
+                        project.setProScope((standard.getTjStandardLtValue() == null ? " " : standard.getTjStandardLtValue()) + "-" + (standard.getTjStandardGtValue() == null ? " " : standard.getTjStandardGtValue()));
+                    }
+                }
+                //鏌ユ爣鍑嗗拰鍗曚綅-----end
+                tjOrderDetail.setProject(project);
+                List<TjStandard> list2 = tjStandardService.getTjStandardListByProId(String.valueOf(project.getProId()));
+                if (list2.size() == 0) {
+                    tjOrderDetail.setStandard(null);
+                } else if (list2.size() == 1) {
+                    tjOrderDetail.setStandard(list2.get(0));
+                } else {
+                    for (TjStandard tjStandard : list2) {
+                        LambdaQueryWrapper<TjStandard> wq8 = new LambdaQueryWrapper<>();
+                        if (tjStandard.getTjSex() != null) {
+                            wq8.eq(TjStandard::getTjSex, customer.getCusSex());
+                        }
+                        if (tjStandard.getTjType() != null) {
+                            wq8.eq(TjStandard::getTjType, StringUtils.getAgeType(DateUtil.ageOfNow(customer.getCusBrithday())));
+                        }
+                        TjStandard standard = tjStandardService.getOne(wq8);
+                        tjOrderDetail.setStandard(standard);
+                    }
+                }
+                if (null != remark.getDoctorName()) {
+                    //lg0412
+                    SysUser byId = userService.getById(remark.getDoctorName());
+                    if (byId != null) {
+                        tjOrderDetail.setDoctorName(userService.getById(remark.getDoctorName()).getNickName());
+                    }
+                } else {
+                    tjOrderDetail.setDoctorName(null);
+                }
+            }
+        }
+        Map<String, Object> map = new HashMap<>();
+        List<TjAdvice> adviceList = new ArrayList<>();
+        if (null != remark) {
+            String[] strings = StringUtils.split(remark.getSummary(), ";");
+            if(null !=strings && strings.length>0){
+                List<TjAdvice> list = tjAdviceService.getAdviceStringByIds(strings);
+                adviceList.addAll(list);
+            }
+            map.put("xiaoJieIds", StringUtils.split(remark.getSummary(), ";"));
+        } else {
+            map.put("xiaoJieIds", null);
+        }
+        map.put("sons", tjOrderDetails);
+        map.put("xiaoJie", adviceList);
+        map.put("remark", remark.getRemark());
+        return map;
+    }
 }

--
Gitblit v1.8.0