From 936e2c79cd741472a6acfe28d730eb644b082cf7 Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期一, 21 十月 2024 14:22:19 +0800
Subject: [PATCH] 修改体检类型

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java |   66 +++++++++++++++++++++++++++++----
 1 files changed, 58 insertions(+), 8 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 1cb7102..4ff949f 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
@@ -3,6 +3,7 @@
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.IdUtil;
 import cn.hutool.json.JSONArray;
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
@@ -147,6 +148,8 @@
     private IdUtils idUtils;
     @Autowired
     private LtkjJybbzdService jybbzdService;
+    @Autowired
+    private LisJyflhbService lisJyflhbService;
 
 
     @Override
@@ -416,10 +419,10 @@
 //        wq.eq(TjOrderDetail::getIsSampling, 0);
 //        List<TjOrderDetail> detailList = tjOrderDetailService.list(wq);
         List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId());
-        addCaiYangDengJi(detailList, !detailList.isEmpty(), order, sysUser);
+        addCaiYangDengJi(detailList, !detailList.isEmpty(), order, sysUser,null);
     }
 
-    public void addCaiYangDengJi(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser) {
+    public void addCaiYangDengJi(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser,String jxbz) {
         if (null != detailList && detailList1) {
             String format = DateUtil.format(new Date(), "yyMMddHHmmssSSS");
             for (TjOrderDetail detail : detailList) {
@@ -436,6 +439,7 @@
                         wrapper.eq(LtkjJybbzd::getJybbdm,jyxmzd.getJybbdm());
                         LtkjJybbzd jybbzd = jybbzdService.getOne(wrapper);
                         sampling.setSpecimenType(jybbzd.getJybbmc());
+                        sampling.setJyxmdm(jyxmzd.getJyxmdm());
                     }
                 } else {
                     TjProject project1 = projectService.getById(proParentId);
@@ -447,6 +451,7 @@
                         wrapper.eq(LtkjJybbzd::getJybbdm,jyxmzd.getJybbdm());
                         LtkjJybbzd jybbzd = jybbzdService.getOne(wrapper);
                         sampling.setSpecimenType(jybbzd.getJybbmc());
+                        sampling.setJyxmdm(jyxmzd.getJyxmdm());
                     }
                 }
                 sampling.setSamplingNumber(format);
@@ -465,8 +470,37 @@
                 sampling.setUpdateTime(new Date());
                 sampling.setCreateId(String.valueOf(sysUser.getUserId()));
                 sampling.setUpdateId(String.valueOf(sysUser.getUserId()));
+                sampling.setJxbz(jxbz);
                 samplingService.save(sampling);
             }
+        }
+        String config = configService.selectConfigByKey("sfkqdyhis");
+        if (lisApiMethod.isUseLisAndPacsRegister(order) && (null != config && config.equals("Y"))){
+            AjaxResult ajaxResult = lisApiMethod.getJyFlHb();
+            if (ajaxResult.get("code").toString().equals("200")){
+                String str = ajaxResult.get("data").toString();
+                str = str.replace("=", ":");
+                JSONArray array = JSONUtil.parseArray(str);
+                for (Object o : array) {
+                    JSONObject object = (JSONObject) o;
+                    LisJyflhb lisJyflhb = new LisJyflhb();
+                    lisJyflhb.setHbhxm(object.getStr("hbhxm"));
+                    lisJyflhb.setFlmc(object.getStr("flmc"));
+                    lisJyflhb.setMc(object.getStr("mc"));
+                    lisJyflhb.setFlbm(object.getStr("flbm"));
+                    LambdaQueryWrapper<LisJyflhb> wrapper = new LambdaQueryWrapper<>();
+                    wrapper.eq(LisJyflhb::getFlbm,lisJyflhb.getFlbm());
+                    LisJyflhb jyflhb = lisJyflhbService.getOne(wrapper);
+                    if (jyflhb == null) {
+                        lisJyflhb.setId(IdUtil.getSnowflake().nextId());
+                        lisJyflhbService.save(lisJyflhb);
+                    }else {
+                        lisJyflhb.setId(jyflhb.getId());
+                        lisJyflhbService.updateById(lisJyflhb);
+                    }
+                }
+            }
+
         }
     }
 
@@ -580,6 +614,7 @@
 
         List<TjProject>  projectList=new ArrayList<>();
 
+        ArrayList<TjOrderDetail> tjOrderDetails = new ArrayList<>();
         for (String tjProId : tjProIds) {
 //            LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>();
 //            wqq.eq(TbTransition::getCusId, customer.getCusIdcard());
@@ -790,6 +825,7 @@
                 detail.setUpdateId(String.valueOf(sysUser.getUserId()));
                 detail.setJxbz(jxbz);
                 tjOrderDetailService.save(detail);
+                tjOrderDetails.add(detail);
 
             }
 
@@ -808,6 +844,12 @@
             }
 
         }
+        List<TjOrderDetail> collect = tjOrderDetails.stream().filter(item -> {
+            TjProject project = projectService.getById(item.getProId());
+            return project != null && project.getProParentId() == 0;
+        }).collect(Collectors.toList());
+//        addCaiYangDengJi(collect, !collect.isEmpty(), order, sysUser,jxbz);
+        tjOrderDetails = new ArrayList<>();
 
         ArrayList<TjProject> jianChaProjects = new ArrayList<>();
         ArrayList<TjProject> jianYanProjects = new ArrayList<>();
@@ -842,6 +884,7 @@
                 detail1.setUpdateId(String.valueOf(sysUser.getUserId()));
                 detail1.setJxbz(jxbz);
                 tjOrderDetailService.save(detail1);
+                tjOrderDetails.add(detail1);
                 if(null !=config && config.equals("Y")){
                     //妫�楠�
 //                    if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0 && (project.getDeptId() == 241L || project.getDeptId() == 317L)) {
@@ -979,14 +1022,17 @@
                     }
                 }
             }
+            collect = tjOrderDetails.stream().filter(item -> {
+                TjProject project = projectService.getById(item.getProId());
+                return project != null && project.getProParentId() == 0;
+            }).collect(Collectors.toList());
+//            addCaiYangDengJi(collect, !collect.isEmpty(), order, sysUser,jxbz);
         }
 
+        Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order);
         if(null !=config && config.equals("Y")){
-            if (lisApiMethod.isUseLisAndPacsRegister(order)) {
-                List<TjProject> projectList2 = jianYanProjects.stream().distinct().collect(Collectors.toList());
-                List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId());
-                addCaiYangDengJi(detailList, !detailList.isEmpty(), order, sysUser);
-
+            if (useLisAndPacsRegister) {
+//                List<TjProject> projectList2 = jianYanProjects.stream().distinct().collect(Collectors.toList());
                 // 妫�鏌ョ敵璇�
                 pacsReg(order, customer, jianChaProjects);
             }else {
@@ -1050,6 +1096,10 @@
                             tree.setCreateTime(dates);
                             ltkjJianchajianyanTreeService.save(tree);
                         }
+
+                        List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId());
+
+                        addCaiYangDengJi(detailList,!detailList.isEmpty(), order, sysUser,jxbz);
 
                     }
                 }
@@ -1766,7 +1816,7 @@
         }
 
         List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId());
-        addCaiYangDengJi(detailList, detailList.size() > 0, order, sysUser);
+        addCaiYangDengJi(detailList, detailList.size() > 0, order, sysUser,null);
     }
 
     //棣栭〉楗肩姸鍥剧櫥璁颁汉鏁版帴鍙�

--
Gitblit v1.8.0