From 0ac41ddb2dc383d0076da6dfa85ddae9944218cc Mon Sep 17 00:00:00 2001
From: 赵文轩 <1652863494@qq.com>
Date: 星期三, 15 一月 2025 15:08:29 +0800
Subject: [PATCH] 20250115

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java |  162 +++++++++++++++++++++++++++++------------------------
 1 files changed, 89 insertions(+), 73 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 26aedf9..3e79835 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
@@ -435,6 +435,8 @@
 
     public void addCaiYangDengJi(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser,String jxbz) {
         String lis_tmh_prefix = sysConfigService.selectConfigByKey("make_lis_tmh_prefix");
+        String config = configService.selectConfigByKey("sfkqdyhis");
+        Boolean lisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order);
         if (null != detailList && detailList1) {
             String format = DateUtil.format(new Date(), "yyMMddHHmmssSSS");
             for (TjOrderDetail detail : detailList) {
@@ -442,29 +444,39 @@
                 if (null == projectService.getById(detail.getProId())) continue;
                 TjProject project = projectService.getById(detail.getProId());
                 Long proParentId = project.getProParentId();
+                String dictLabel = sysDictDataService.selectDictLabel("sys_dict_specimen", project.getSpecimenType());
                 if (null != proParentId && proParentId == 0) {
                     sampling.setJyxh(idUtils.generateLisID(lis_tmh_prefix));
-                    LtkjJyxmzd jyxmzd = lisApiMethod.getJyxmzd(project);
-                    if (jyxmzd != null) {
-                        sampling.setSpecimenTypeCode(jyxmzd.getJybbdm());
-                        LambdaQueryWrapper<LtkjJybbzd> wrapper = new LambdaQueryWrapper<>();
-                        wrapper.eq(LtkjJybbzd::getJybbdm,jyxmzd.getJybbdm());
-                        LtkjJybbzd jybbzd = jybbzdService.getOne(wrapper);
-                        sampling.setSpecimenType(jybbzd.getJybbmc());
-                        sampling.setJyxmdm(jyxmzd.getJyxmdm());
-                    }
+//                    LtkjJyxmzd jyxmzd = lisApiMethod.getJyxmzd(project);
+//                    if (jyxmzd != null) {
+                    if (config.equals("Y") && lisAndPacsRegister)
+                        sampling.setJyxmdm(project.getLisXmbm());
+                    else sampling.setJyxmdm(String.valueOf(project.getProId()));
+                    sampling.setSpecimenTypeCode(project.getSpecimenType());
+                    sampling.setSpecimenType(dictLabel);
+//                        LambdaQueryWrapper<LtkjJybbzd> wrapper = new LambdaQueryWrapper<>();
+//                        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);
                     sampling.setJyxh(idUtils.generateLisID(lis_tmh_prefix));
-                    LtkjJyxmzd jyxmzd = lisApiMethod.getJyxmzd(project1);
-                    if (jyxmzd != null) {
-                        sampling.setSpecimenTypeCode(jyxmzd.getJybbdm());
-                        LambdaQueryWrapper<LtkjJybbzd> wrapper = new LambdaQueryWrapper<>();
-                        wrapper.eq(LtkjJybbzd::getJybbdm,jyxmzd.getJybbdm());
-                        LtkjJybbzd jybbzd = jybbzdService.getOne(wrapper);
-                        sampling.setSpecimenType(jybbzd.getJybbmc());
-                        sampling.setJyxmdm(jyxmzd.getJyxmdm());
-                    }
+                    sampling.setSpecimenTypeCode(project1.getSpecimenType());
+                    sampling.setSpecimenType(dictLabel);
+                    if (config.equals("Y") && lisAndPacsRegister)
+                        sampling.setJyxmdm(project1.getLisXmbm());
+                    else sampling.setJyxmdm(String.valueOf(project1.getProId()));
+//                    LtkjJyxmzd jyxmzd = lisApiMethod.getJyxmzd(project1);
+//                    if (jyxmzd != null) {
+//                        sampling.setSpecimenTypeCode(jyxmzd.getJybbdm());
+//                        LambdaQueryWrapper<LtkjJybbzd> wrapper = new LambdaQueryWrapper<>();
+//                        wrapper.eq(LtkjJybbzd::getJybbdm,jyxmzd.getJybbdm());
+//                        LtkjJybbzd jybbzd = jybbzdService.getOne(wrapper);
+//                        sampling.setSpecimenType(jybbzd.getJybbmc());
+//                        sampling.setJyxmdm(jyxmzd.getJyxmdm());
+//                    }
                 }
                 sampling.setSamplingNumber(format);
                 sampling.setTjNum(order.getTjNumber());
@@ -486,7 +498,6 @@
                 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")){
@@ -752,10 +763,10 @@
 
             // TODO 鍜岀鍒扮櫥璁颁竴鏍� 鍙湁閰嶇疆涓殑浠ュ強鏀惰垂绫诲瀷涓轰綋妫�绁ㄦ椂鎵嶅鍔犲埌閲囨牱绠$悊琛�
             if(config.equalsIgnoreCase("Y")){
-                if (lisApiMethod.isUseLisAndPacsRegister(order) && tjFlowingWater.getPayType() == 6L) {
+//                if (lisApiMethod.isUseLisAndPacsRegister(order) && tjFlowingWater.getPayType() == 6L) {
                     List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(), jxbz);
                     addCaiYangDengJi(detailLists, !detailLists.isEmpty(), order, sysUser, jxbz);
-                }
+//                }
                  AjaxResult result = tijianbulushenqing(customer, date, order.getCardId(), jxbz, jianChaProjects, tjFlowingWater.getPayType() == 6L);
                  if (!result.get("code").toString().equals("200"))
                      return false;
@@ -1349,7 +1360,7 @@
                                 wrapper.eq(TjProject::getProParentId,project.getProId());
                                 List<TjProject> list = projectService.list(wrapper);
                                 for (TjProject tjProject : list) {
-                                    if (null != project.getHisXmbm()) {
+                                    if (StrUtil.isNotBlank(tjProject.getHisXmbm()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) {
                                         OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto();
                                         detailsDto.setMxfyxmbm(tjProject.getHisXmbm());
                                         if (tjProject.getSfzhfy().equals("Y")) {
@@ -1462,7 +1473,7 @@
                                 wrapper.eq(TjProject::getProParentId,project.getProId());
                                 List<TjProject> list = projectService.list(wrapper);
                                 for (TjProject tjProject : list) {
-                                    if (null != tjProject.getHisXmbm()) {
+                                    if (StrUtil.isNotBlank(tjProject.getHisXmbm()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) {
                                         OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto();
                                         detailsDto.setMxfyxmbm(tjProject.getHisXmbm());
                                         if (tjProject.getSfzhfy().equals("Y")) {
@@ -1557,7 +1568,6 @@
                 dao.setCzyksbm(dept);
                 dao.setSfjz("0");
 //        List<TbTransition> details = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId);
-                List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>();
                 if (null != detailList && !detailList.isEmpty()) {
                     LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>();
                     wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList()));
@@ -1565,18 +1575,24 @@
                     List<TjProject> projects = projectService.list(wq);
                     if (null != projects && !projects.isEmpty()) {
                         for (TjProject project : projects) {
+                            List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>();
                             if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) {
-                                if (null != project.getHisXmbm()) {
-                                    OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto();
-                                    detailsDto.setMxfyxmbm(project.getHisXmbm());
-                                    if (project.getSfzhfy().equals("Y")) {
-                                        detailsDto.setSfzhfy("1");
-                                    } else {
-                                        detailsDto.setSfzhfy("0");
+                                LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>();
+                                wrapper.eq(TjProject::getProParentId,project.getProId());
+                                List<TjProject> list = projectService.list(wrapper);
+                                for (TjProject tjProject : list) {
+                                    if (StrUtil.isNotBlank(tjProject.getHisXmbm()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) {
+                                        OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto();
+                                        detailsDto.setMxfyxmbm(tjProject.getHisXmbm());
+                                        if (tjProject.getSfzhfy().equals("Y")) {
+                                            detailsDto.setSfzhfy("1");
+                                        } else {
+                                            detailsDto.setSfzhfy("0");
+                                        }
+                                        detailsDto.setSl(tjProject.getSl());
+                                        detailsDto.setProjg(tjProject.getProPrice());
+                                        detailDtos.add(detailsDto);
                                     }
-                                    detailsDto.setSl(project.getSl());
-                                    detailsDto.setProjg(project.getProPrice());
-                                    detailDtos.add(detailsDto);
                                 }
                                 if(project.getProId()==1740177341251154377L){
                                     OutpinmedicapplyDetilsDto detilsDto=new OutpinmedicapplyDetilsDto();
@@ -1604,46 +1620,46 @@
                                     outpinmedicapplyDetilsDtos.add(detilsDto);
                                 }
                             }
-                        }
-                    }
-                }
-                if (!detailDtos.isEmpty()) {
-                    dao.setDetails(detailDtos);
-                    AjaxResult mzylyzsq1 = controller.Outpintreatapply(dao);
-                    String mzylyzsq2 = getAjaxResult(mzylyzsq1);
-                    JSONObject mzylyzsq3 = getJSONObject(mzylyzsq2);
-                    String code5 = mzylyzsq3.getStr("ResultCode");
-                    if (code5.equals("0")) {
-                        List<OutpintestapplyDetailsDto> details1 = dao.getDetails();
-                        for (OutpintestapplyDetailsDto detail : details1) {
-                            LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree();
-                            tree.setJxbz(jxbz);
-                            tree.setCardId(dao.getHisRegistrationId());
-                            tree.setPationid(customer.getPationId());
-                            JSONObject resultData = mzylyzsq3.getJSONObject("ResultData");
-                            tree.setSqdh(resultData.getStr("zlczh"));
-                            tree.setFyhj(resultData.getStr("fyhj"));
-                            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> wrapper2 = new LambdaQueryWrapper<>();
-                                wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm);
-                                LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2);
-                                LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>();
-                                wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm());
-                                LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3);
-                                tree.setXmfl(ejjfxmzd.getYjkmdm());
+                            if (!detailDtos.isEmpty()) {
+                                dao.setDetails(detailDtos);
+                                AjaxResult mzylyzsq1 = controller.Outpintreatapply(dao);
+                                String mzylyzsq2 = getAjaxResult(mzylyzsq1);
+                                JSONObject mzylyzsq3 = getJSONObject(mzylyzsq2);
+                                String code5 = mzylyzsq3.getStr("ResultCode");
+                                if (code5.equals("0")) {
+                                    List<OutpintestapplyDetailsDto> details1 = dao.getDetails();
+                                    for (OutpintestapplyDetailsDto detail : details1) {
+                                        LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree();
+                                        tree.setJxbz(jxbz);
+                                        tree.setCardId(dao.getHisRegistrationId());
+                                        tree.setPationid(customer.getPationId());
+                                        JSONObject resultData = mzylyzsq3.getJSONObject("ResultData");
+                                        tree.setSqdh(resultData.getStr("zlczh"));
+                                        tree.setFyhj(resultData.getStr("fyhj"));
+                                        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> wrapper2 = new LambdaQueryWrapper<>();
+                                            wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm);
+                                            LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2);
+                                            LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>();
+                                            wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm());
+                                            LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3);
+                                            tree.setXmfl(ejjfxmzd.getYjkmdm());
+                                        }
+                                        tree.setCreateTime(DateUtil.date());
+                                        ltkjJianchajianyanTreeService.save(tree);
+                                    }
+                                }
                             }
-                            tree.setCreateTime(DateUtil.date());
-                            ltkjJianchajianyanTreeService.save(tree);
                         }
                     }
                 }

--
Gitblit v1.8.0