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 |  385 ++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 252 insertions(+), 133 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 620b462..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;
@@ -10,11 +11,13 @@
 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.IdUtils;
 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.hisDto.*;
+import com.ltkj.hosp.pacsDto.SavePacsApply;
 import com.ltkj.hosp.service.*;
 import com.ltkj.hosp.vodomain.AddNewReservationConfirm;
 import com.ltkj.hosp.vodomain.LineChartsVo;
@@ -24,8 +27,13 @@
 import com.ltkj.system.service.ISysConfigService;
 import com.ltkj.system.service.ISysDeptService;
 import com.ltkj.system.service.ISysUserService;
+import com.ltkj.web.config.IdcardUtil.IdcardUtil;
 import com.ltkj.web.controller.his.HisApiGetMethodService;
 import com.ltkj.web.controller.his.HisApiMethodService;
+import com.ltkj.web.controller.lis.LisApiMethod;
+import com.ltkj.web.controller.pacs.PacsApiMethodService;
+import com.ltkj.web.controller.system.TjOrderController;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
@@ -48,6 +56,7 @@
  * @Date: 2023/9/15 15:57
  */
 
+@Slf4j
 @Service
 @Transactional
 public class TjSysAsyncServiceImpl implements TjAsyncService {
@@ -131,6 +140,17 @@
     private TjCfService cfService;
     @Resource
     private LtkjHysqdService hysqdService;
+    @Autowired
+    private PacsApiMethodService pacsApiMethodService;
+    @Autowired
+    private LisApiMethod lisApiMethod;
+    @Autowired
+    private IdUtils idUtils;
+    @Autowired
+    private LtkjJybbzdService jybbzdService;
+    @Autowired
+    private LisJyflhbService lisJyflhbService;
+
 
     @Override
     public void newSaveextracted(TjOrder tjOrder, TjCustomer tjCustomer, BigDecimal discount, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) {
@@ -393,25 +413,46 @@
             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);
-        addCaiYangDengJi(detailList, !detailList.isEmpty(), order, sysUser);
+//        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);
+        List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId());
+        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) {
                 TjSampling sampling = new TjSampling();
                 if (null == projectService.getById(detail.getProId())) continue;
-                Long proParentId = projectService.getById(detail.getProId()).getProParentId();
+                TjProject project = projectService.getById(detail.getProId());
+                Long proParentId = project.getProParentId();
                 if (null != proParentId && proParentId == 0) {
-                    sampling.setSpecimenType(projectService.getById(detail.getProId()).getSpecimenType());
+                    sampling.setJyxh(idUtils.generateLisID());
+                    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());
+                    }
                 } else {
-                    sampling.setSpecimenType(projectService.getById(projectService.getById(detail.getProId()).getProParentId()).getSpecimenType());
+                    TjProject project1 = projectService.getById(proParentId);
+                    sampling.setJyxh(idUtils.generateLisID());
+                    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());
@@ -429,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);
+                    }
+                }
+            }
+
         }
     }
 
@@ -544,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());
@@ -754,6 +825,7 @@
                 detail.setUpdateId(String.valueOf(sysUser.getUserId()));
                 detail.setJxbz(jxbz);
                 tjOrderDetailService.save(detail);
+                tjOrderDetails.add(detail);
 
             }
 
@@ -772,6 +844,15 @@
             }
 
         }
+        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<>();
 
         if(!projectList.isEmpty()){
             List<TjProject> list = projectList.stream().distinct().collect(Collectors.toList());
@@ -803,11 +884,13 @@
                 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)) {
                     if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0 && deptService.getJyDeptIds().contains(project.getDeptId().toString())) {
                         if (null != project.getHisXmbm()) {
+                            jianYanProjects.add(project);
                             OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto();
 
                             detailsDto.setMxfyxmbm(project.getHisXmbm());
@@ -855,6 +938,7 @@
 //                                    project.getDeptId() == 275L || project.getDeptId() == 298L)) {
                         if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0 && deptService.getJcDeptIds().contains(project.getDeptId().toString())) {
                         if (null != project.getHisXmbm()) {
+                            jianChaProjects.add(project);
                             OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto();
                             detailsDto.setMxfyxmbm(project.getHisXmbm());
                             if (project.getSfzhfy().equals("Y")) {
@@ -938,134 +1022,150 @@
                     }
                 }
             }
+            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 (useLisAndPacsRegister) {
+//                List<TjProject> projectList2 = jianYanProjects.stream().distinct().collect(Collectors.toList());
+                // 妫�鏌ョ敵璇�
+                pacsReg(order, customer, jianChaProjects);
+            }else {
+                //妫�楠岀敵璇�
+                if(!detailsDtos.isEmpty()){
+                    OutpintestapplyDto dto = new OutpintestapplyDto();
+                    dto.setHisRegistrationId(order.getCardId());
+                    dto.setSfzh(customer.getCusIdcard());
+                    dto.setSqysbm("00029");
+                    dto.setMzksbm("0101");
+                    dto.setSjrq(date);
+                    dto.setCzybm("00029");
+                    dto.setCzyksbm("0101");
+                    dto.setSfjz("0");
+                    dto.setDetails(detailsDtos.stream().distinct().collect(Collectors.toList()));
+                    AjaxResult ajaxResult1 = controller.Outpintestapply(dto);
+                    String result5 = getAjaxResult(ajaxResult1);
+                    JSONObject object3 = getJSONObject(result5);
+                    String code3 = object3.getStr("ResultCode");
+                    if (code3.equals("0")) {
+                        List<OutpintestapplyDetailsDto> details = dto.getDetails();
+                        for (OutpintestapplyDetailsDto detail : details) {
+                            LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree();
+                            tree.setSfjx("Y");
+                            tree.setJxbz(jxbz);
+                            tree.setCardId(dto.getHisRegistrationId());
+                            LambdaQueryWrapper<TjCustomer> wrapper4 = new LambdaQueryWrapper<>();
+                            wrapper4.eq(TjCustomer::getCardId, tree.getCardId());
+                            TjCustomer tjCustomer = tjCustomerService.getOne(wrapper4);
+                            tree.setPationid(tjCustomer.getPationId());
+                            JSONObject resultData = object3.getJSONObject("ResultData");
+                            tree.setSqdh(resultData.getStr("jysqdh"));
+                            tree.setFyhj(resultData.getStr("fyhj"));
+                            String mxfyxmbm = detail.getMxfyxmbm();
+                            tree.setHisXmdm(mxfyxmbm);
+                            tree.setType("妫�楠�");
+                            LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>();
+                            wrapper.eq(TjProject::getHisXmbm, mxfyxmbm);
+                            wrapper.eq(TjProject::getProParentId,0);
+                            List<TjProject> list = projectService.list(wrapper);
+                            String tj_price = "";
+                            for (TjProject project : list) {
+                                tj_price += project.getProPrice() + "銆�";
+                            }
+                            tree.setTjPrice(tj_price.substring(0, tj_price.length() - 1));
+                            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(dates);
+                            ltkjJianchajianyanTreeService.save(tree);
+                        }
 
-            //妫�楠岀敵璇�
-            if(!detailsDtos.isEmpty()){
-                OutpintestapplyDto dto = new OutpintestapplyDto();
-                dto.setHisRegistrationId(order.getCardId());
-                dto.setSfzh(customer.getCusIdcard());
-                dto.setSqysbm("00029");
-                dto.setMzksbm("0101");
-                dto.setSjrq(date);
-                dto.setCzybm("00029");
-                dto.setCzyksbm("0101");
-                dto.setSfjz("0");
-                dto.setDetails(detailsDtos.stream().distinct().collect(Collectors.toList()));
-                AjaxResult ajaxResult1 = controller.Outpintestapply(dto);
-                String result5 = getAjaxResult(ajaxResult1);
-                JSONObject object3 = getJSONObject(result5);
-                String code3 = object3.getStr("ResultCode");
-                if (code3.equals("0")) {
-                    List<OutpintestapplyDetailsDto> details = dto.getDetails();
-                    for (OutpintestapplyDetailsDto detail : details) {
-                        LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree();
-                        tree.setSfjx("Y");
-                        tree.setJxbz(jxbz);
-                        tree.setCardId(dto.getHisRegistrationId());
-                        LambdaQueryWrapper<TjCustomer> wrapper4 = new LambdaQueryWrapper<>();
-                        wrapper4.eq(TjCustomer::getCardId, tree.getCardId());
-                        TjCustomer tjCustomer = tjCustomerService.getOne(wrapper4);
-                        tree.setPationid(tjCustomer.getPationId());
-                        JSONObject resultData = object3.getJSONObject("ResultData");
-                        tree.setSqdh(resultData.getStr("jysqdh"));
-                        tree.setFyhj(resultData.getStr("fyhj"));
-                        String mxfyxmbm = detail.getMxfyxmbm();
-                        tree.setHisXmdm(mxfyxmbm);
-                        tree.setType("妫�楠�");
-                        LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>();
-                        wrapper.eq(TjProject::getHisXmbm, mxfyxmbm);
-                        List<TjProject> list = projectService.list(wrapper);
-                        String tj_price = "";
-                        for (TjProject project : list) {
-                            tj_price += project.getProPrice() + "銆�";
-                        }
-                        tree.setTjPrice(tj_price.substring(0, tj_price.length() - 1));
-                        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(dates);
-                        ltkjJianchajianyanTreeService.save(tree);
+                        List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId());
+
+                        addCaiYangDengJi(detailList,!detailList.isEmpty(), order, sysUser,jxbz);
+
                     }
-
                 }
-            }
 
-            //闂ㄨ瘖妫�鏌ョ敵璇�
-            if(!detailsDtoss.isEmpty()){
-                OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto();
-                outpinexamapplyDto.setHisRegistrationId(order.getCardId());
-                outpinexamapplyDto.setSfzh(customer.getCusIdcard());
-                outpinexamapplyDto.setSqysbm("00029");
-                outpinexamapplyDto.setMzksbm("0101");
-                outpinexamapplyDto.setCzybm("00029");
-                outpinexamapplyDto.setCzyksbm("0101");
-                outpinexamapplyDto.setSfjz("0");
-                outpinexamapplyDto.setDetails(detailsDtoss.stream().distinct().collect(Collectors.toList()));
-                AjaxResult ajaxResult2 = controller.Outpinexamapply(outpinexamapplyDto);
-                String result6 = getAjaxResult(ajaxResult2);
-                JSONObject object5 = getJSONObject(result6);
-                String code4 = object5.getStr("ResultCode");
-                if (code4.equals("0")) {
-                    List<OutpintestapplyDetailsDto> details = outpinexamapplyDto.getDetails();
-                    for (OutpintestapplyDetailsDto detail : details) {
-                        LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree();
-                        tree.setSfjx("Y");
-                        tree.setJxbz(jxbz);
-                        tree.setCardId(outpinexamapplyDto.getHisRegistrationId());
-                        LambdaQueryWrapper<TjCustomer> wrapper4 = new LambdaQueryWrapper<>();
-                        wrapper4.eq(TjCustomer::getCardId, tree.getCardId());
-                        TjCustomer tjCustomer = tjCustomerService.getOne(wrapper4);
-                        tree.setPationid(tjCustomer.getPationId());
-                        JSONObject resultData = object5.getJSONObject("ResultData");
-                        tree.setSqdh(resultData.getStr("jcsqdh"));
-                        tree.setFyhj(resultData.getStr("fyhj"));
-                        String mxfyxmbm = detail.getMxfyxmbm();
-                        tree.setHisXmdm(mxfyxmbm);
-                        tree.setType("妫�鏌�");
-                        LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>();
-                        wrapper.eq(TjProject::getHisXmbm, mxfyxmbm);
-                        List<TjProject> list = projectService.list(wrapper);
-                        String tj_price = "";
-                        for (TjProject project : list) {
-                            tj_price += project.getProPrice() + "銆�";
+                //闂ㄨ瘖妫�鏌ョ敵璇�
+                if(!detailsDtoss.isEmpty()){
+                    OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto();
+                    outpinexamapplyDto.setHisRegistrationId(order.getCardId());
+                    outpinexamapplyDto.setSfzh(customer.getCusIdcard());
+                    outpinexamapplyDto.setSqysbm("00029");
+                    outpinexamapplyDto.setMzksbm("0101");
+                    outpinexamapplyDto.setCzybm("00029");
+                    outpinexamapplyDto.setCzyksbm("0101");
+                    outpinexamapplyDto.setSfjz("0");
+                    outpinexamapplyDto.setDetails(detailsDtoss.stream().distinct().collect(Collectors.toList()));
+                    AjaxResult ajaxResult2 = controller.Outpinexamapply(outpinexamapplyDto);
+                    String result6 = getAjaxResult(ajaxResult2);
+                    JSONObject object5 = getJSONObject(result6);
+                    String code4 = object5.getStr("ResultCode");
+                    if (code4.equals("0")) {
+                        List<OutpintestapplyDetailsDto> details = outpinexamapplyDto.getDetails();
+                        for (OutpintestapplyDetailsDto detail : details) {
+                            LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree();
+                            tree.setSfjx("Y");
+                            tree.setJxbz(jxbz);
+                            tree.setCardId(outpinexamapplyDto.getHisRegistrationId());
+                            LambdaQueryWrapper<TjCustomer> wrapper4 = new LambdaQueryWrapper<>();
+                            wrapper4.eq(TjCustomer::getCardId, tree.getCardId());
+                            TjCustomer tjCustomer = tjCustomerService.getOne(wrapper4);
+                            tree.setPationid(tjCustomer.getPationId());
+                            JSONObject resultData = object5.getJSONObject("ResultData");
+                            tree.setSqdh(resultData.getStr("jcsqdh"));
+                            tree.setFyhj(resultData.getStr("fyhj"));
+                            String mxfyxmbm = detail.getMxfyxmbm();
+                            tree.setHisXmdm(mxfyxmbm);
+                            tree.setType("妫�鏌�");
+                            LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>();
+                            wrapper.eq(TjProject::getHisXmbm, mxfyxmbm);
+                            wrapper.eq(TjProject::getProParentId,0);
+                            List<TjProject> list = projectService.list(wrapper);
+                            String tj_price = "";
+                            for (TjProject project : list) {
+                                tj_price += project.getProPrice() + "銆�";
+                            }
+                            tree.setTjPrice(tj_price.substring(0, tj_price.length() - 1));
+                            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(dates);
+                            ltkjJianchajianyanTreeService.save(tree);
                         }
-                        tree.setTjPrice(tj_price.substring(0, tj_price.length() - 1));
-                        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(dates);
-                        ltkjJianchajianyanTreeService.save(tree);
                     }
                 }
             }
-
             //鑽搧鐢宠
             if(!outpinmedicapplyDetilsDtos.isEmpty()){
                 OutpinmedicapplyDto dto1=new OutpinmedicapplyDto();
@@ -1149,6 +1249,7 @@
                         tree.setType("澶勭疆");
                         LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>();
                         wrapper.eq(TjProject::getHisXmbm, mxfyxmbm);
+                        wrapper.eq(TjProject::getProParentId,0);
                         List<TjProject> list = projectService.list(wrapper);
                         String tj_price = "";
                         for (TjProject project : list) {
@@ -1195,6 +1296,28 @@
 //            tjChargingStandard.setUpdateId(String.valueOf(sysUser.getUserId()));
 //            chargingStandardService.save(tjChargingStandard);
 //        }
+    }
+
+    private void pacsReg(TjOrder order, TjCustomer customer, ArrayList<TjProject> jianChaProjects) {
+        List<TjProject> projectList1 = jianChaProjects.stream().distinct().collect(Collectors.toList());
+        JSONArray array = JSONUtil.createArray();
+        ArrayList<SavePacsApply> successPacsList = new ArrayList<>();
+        ArrayList<SavePacsApply> errorPacsList = new ArrayList<>();
+        int allTotal = 0;
+        try {
+            allTotal = pacsApiMethodService.saveProjects(order, customer, projectList1, array, successPacsList, errorPacsList);
+        } catch (Exception e) {
+            log.error(e.getMessage());
+            for (Object object : array) {
+                JSONObject jsonObject = (JSONObject) object;
+                pacsApiMethodService.updatePacsApply(jsonObject.getStr("regNo"), jsonObject.getStr("cardId"), jsonObject.getStr("name"));
+            }
+        }
+        log.info("妫�鏌ユ�昏 ->{}涓�", allTotal);
+        if (!errorPacsList.isEmpty()) {
+            log.info("鎴愬姛 ->{}", successPacsList);
+            log.error("澶辫触 ->{}", errorPacsList);
+        }
     }
 
     @Override
@@ -1692,12 +1815,8 @@
             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);
-        addCaiYangDengJi(detailList, detailList.size() > 0, order, sysUser);
+        List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId());
+        addCaiYangDengJi(detailList, detailList.size() > 0, order, sysUser,null);
     }
 
     //棣栭〉楗肩姸鍥剧櫥璁颁汉鏁版帴鍙�

--
Gitblit v1.8.0