From 3419517251ebdaa5e0ade07352fb9fc831fed982 Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期三, 16 十月 2024 15:30:14 +0800
Subject: [PATCH] 2024-10-16

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/lis/LisApiMethod.java |  116 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 115 insertions(+), 1 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/lis/LisApiMethod.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/lis/LisApiMethod.java
index 1353b3c..3bb8720 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/lis/LisApiMethod.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/lis/LisApiMethod.java
@@ -65,7 +65,9 @@
      * @param tjCustomer
      * @param detailList
      * @return
+     * @deprecated 淇敼 涓嶄娇鐢↙ist<TbTransition>浼犲弬鏁�
      */
+    @Deprecated
     public Boolean save(TjOrder tjOrder, TjCustomer tjCustomer, List<TbTransition> detailList){
         if (detailList != null && !detailList.isEmpty()) {
             LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>();
@@ -179,6 +181,118 @@
         }
         return true;
     }
+    public Boolean save(TjOrder tjOrder, TjCustomer tjCustomer, List<TjProject> projects,List<TbTransition> detailList) {
+//            LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>();
+//            wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList()));
+//            wq.in(TjProject::getDeptId,deptService.getJyDeptIds());
+//            List<TjProject> projects = projectService.list(wq);
+
+        if (projects != null && !projects.isEmpty()) {
+            // 鏍规嵁project琛ㄧ殑his_xmbm鏌ョ粍鍚堝叧鑱旇〃 ltkj_jfzhgljyxmzd 鏍规嵁瀛楁`zhxmdm`
+            // - 鏌ュ埌 浣跨敤瀛楁`jyxmdm`鏌ユ楠岄」鐩瓧鍏歌〃 ltkj_jyxmzd 鏍规嵁瀛楁`jyxmdm`
+            // - 鏈煡鍒� 鏌ラ」鐩叧鑱旇〃ltkj_jfxmgljyxmzd 鏍规嵁瀛楁`xmdm`
+            AtomicInteger xh = new AtomicInteger();
+            for (TjProject project : projects) {
+                if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) {
+                    if (null != project.getHisXmbm()) {
+                        LtkjJyxmzd jyxmzd = getJyxmzd(project);
+                        if (jyxmzd != null) {
+                            LisSaveSqdxxDto lisSaveSqdxxDto = new LisSaveSqdxxDto();
+                            String jyxh = idUtils.generateLisID();
+                            lisSaveSqdxxDto.setJyxh(jyxh);
+                            lisSaveSqdxxDto.setBah(tjOrder.getCardId());
+                            lisSaveSqdxxDto.setBrxm(tjCustomer.getCusName());
+                            lisSaveSqdxxDto.setBrdm(PinyinUtil.getFirstLetter(tjCustomer.getCusName(), ""));
+                            lisSaveSqdxxDto.setXb(tjCustomer.getCusSex() == 1 ? "2" : "1");
+                            lisSaveSqdxxDto.setCsrq(DateFormatUtils.format(tjCustomer.getCusBrithday(), "yyyy-MM-dd"));
+                            AgeResult ageResult = DateUtils.calculateAge(tjCustomer.getCusBrithday());
+                            lisSaveSqdxxDto.setNl(String.valueOf(ageResult.getAge()));
+                            lisSaveSqdxxDto.setNldw(String.valueOf(ageResult.getUnit()));
+                            lisSaveSqdxxDto.setSfzh(tjCustomer.getCusIdcard());
+                            lisSaveSqdxxDto.setLxdh(tjCustomer.getCusPhone());
+                            lisSaveSqdxxDto.setJtzz("");
+                            Date date = new Date();
+                            lisSaveSqdxxDto.setSqrq(DateFormatUtils.format(date, "yyyy-MM-dd HH:mm:ss"));
+                            lisSaveSqdxxDto.setCyrq("");
+                            lisSaveSqdxxDto.setLczd("");
+                            lisSaveSqdxxDto.setBz("");
+                            lisSaveSqdxxDto.setKsbm("0101");
+                            lisSaveSqdxxDto.setSqys("00029");
+                            lisSaveSqdxxDto.setKfbz("1");
+                            List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>();
+                            ArrayList<LisSaveSqdxxJyxmlistDto> dtos = new ArrayList<>();
+                            BigDecimal allPrice = new BigDecimal("0");
+                            for (TbTransition transition : detailList.stream().filter(item -> Objects.equals(item.getParentProId(), project.getProId()))
+                                    .collect(Collectors.toList())) {
+                                allPrice = allPrice.add(transition.getNowPrice());
+                            }
+                            lisSaveSqdxxDto.setFyje(allPrice.toString());
+                            lisSaveSqdxxDto.setYbbm(jyxmzd.getJybbdm());
+                            LisSaveSqdxxJyxmlistDto dto = new LisSaveSqdxxJyxmlistDto();
+                            dto.setXh(String.valueOf(xh.getAndIncrement() + 1));
+                            dto.setJyxm(jyxmzd.getJyxmdm());
+                            dto.setXmmc(jyxmzd.getJyxmmc());
+                            dtos.add(dto);
+
+                            OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto();
+                            detailsDto.setMxfyxmbm(project.getHisXmbm());
+                            if (project.getSfzhfy().equals("Y")) {
+                                detailsDto.setSfzhfy("1");
+                            } else {
+                                detailsDto.setSfzhfy("0");
+                            }
+                            detailsDto.setSl(project.getSl());
+                            detailsDto.setProjg(project.getProPrice());
+                            detailsDtos.add(detailsDto);
+
+                            lisSaveSqdxxDto.setJyxmlist(dtos);
+                            log.info("妫�楠岀敵璇峰弬鏁� ->{}", JSONUtil.toJsonStr(lisSaveSqdxxDto));
+                            AjaxResult ajaxResult = lisApiMethodService.saveSqdxx(lisSaveSqdxxDto);
+                            // Lis璇锋眰杩斿洖 ->{"msg":"鎿嶄綔澶辫触","code":500,"result":{"Response":{"ResultContent":"鎴愬姛","ResultData":null,"ResultCode":"1"}}}
+                            // {"msg":"鎿嶄綔鎴愬姛","code":200,"data":{"ResultContent":"鎴愬姛","ResultData":null,"ResultCode":"1"}}
+                            log.info("Lis璇锋眰杩斿洖 ->{}", JSONUtil.toJsonStr(ajaxResult));
+                            String result = ajaxResult.get("data").toString();
+                            JSONObject object = JSONUtil.parseObj(result);
+                            String code = object.getStr("ResultCode");
+                            if (code.equals("1")) {
+                                for (OutpintestapplyDetailsDto detail : detailsDtos) {
+                                    LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree();
+                                    tree.setCardId(tjOrder.getCardId());
+                                    tree.setPationid(tjCustomer.getPationId());
+                                    tree.setSqdh(jyxh);
+                                    tree.setFyhj(allPrice.toString());
+                                    String mxfyxmbm = detail.getMxfyxmbm();
+                                    tree.setHisXmdm(mxfyxmbm);
+                                    tree.setType("妫�楠�");
+                                    tree.setTjPrice(String.valueOf(detail.getProjg()));
+                                    LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>();
+                                    if (detail.getSfzhfy().equals("1"))
+                                        wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm);
+                                    else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm);
+                                    List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1);
+                                    if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) {
+                                        String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm();
+                                        LambdaQueryWrapper<LtkjMxjfxmzd> wrapper3 = new LambdaQueryWrapper<>();
+                                        wrapper3.eq(LtkjMxjfxmzd::getXmdm, xmdm);
+                                        LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper3);
+                                        LambdaQueryWrapper<LtkjEjjfxmzd> wrapper4 = new LambdaQueryWrapper<>();
+                                        wrapper4.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm());
+                                        LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper4);
+                                        tree.setXmfl(ejjfxmzd.getYjkmdm());
+                                    }
+                                    tree.setCreateTime(DateUtil.date());
+                                    ltkjJianchajianyanTreeService.save(tree);
+                                }
+                            } else {
+                                log.error("璇锋眰澶辫触 ->{}", lisSaveSqdxxDto);
+                            }
+                        }
+                    }
+                }
+            }
+        }
+        return true;
+    }
 
     /**
      * 鑾峰彇妫�楠岀粨鏋�
@@ -202,7 +316,7 @@
 
 
 
-    private LtkjJyxmzd getJyxmzd(TjProject project) {
+    public LtkjJyxmzd getJyxmzd(TjProject project) {
         String jyxmdm = "";
         if (project.getSfzhfy().equals("Y")){
             LambdaQueryWrapper<LtkjJfzhgljyxmzd> wrapper = new LambdaQueryWrapper<>();

--
Gitblit v1.8.0