From 11c3eed72663870f1140616c631bb3ad1cab2838 Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期一, 22 七月 2024 17:58:21 +0800
Subject: [PATCH] zjh 2024/07/22-1

---
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjJianchajianyanTreeServiceImpl.java |    5 +
 ltkj-hosp/src/main/java/com/ltkj/hosp/hisDto/OutpintestapplyDetailsDto.java               |    3 +
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java            |   42 ++++---------
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjJianchajianyanTreeService.java          |    2 
 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java            |   10 +++
 ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java                    |   73 ++++++++++++++++--------
 6 files changed, 82 insertions(+), 53 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java
index 572f5d9..37d39d1 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java
@@ -204,6 +204,7 @@
                                 detailsDto.setSfzhfy("0");
                             }
                             detailsDto.setSl(project.getSl());
+                            detailsDto.setProjg(project.getProPrice());
                             detailsDtos.add(detailsDto);
                         }
                         if(project.getProId()==1740177341251154377L){
@@ -253,14 +254,24 @@
                     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<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<TjProject> wrapper = new LambdaQueryWrapper<>();
+//                    wrapper.eq(TjProject::getHisXmbm, mxfyxmbm);
+//                    wrapper.eq(TjProject::getSl,1);
+//                    wrapper.groupBy(TjProject::getHisXmbm);
+//                    TjProject project = projectService.getOne(wrapper);
+//                    if(null !=project){
+//                        BigDecimal decimal = project.getProPrice().multiply(BigDecimal.valueOf(detail.getSl()));
+//                        tree.setTjPrice(String.valueOf(decimal));
+//                    }
+                    tree.setTjPrice(String.valueOf(detail.getProjg()));
                     LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>();
                     if (detail.getSfzhfy().equals("1"))
                         wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm);
@@ -357,6 +368,7 @@
                                 detailsDto.setSfzhfy("0");
                             }
                             detailsDto.setSl(project.getSl());
+                            detailsDto.setProjg(project.getProPrice());
                             detailsDtoss.add(detailsDto);
                         }
 
@@ -382,14 +394,24 @@
                     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<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<TjProject> wrapper = new LambdaQueryWrapper<>();
+//                    wrapper.eq(TjProject::getHisXmbm, mxfyxmbm);
+//                    wrapper.eq(TjProject::getSl,1);
+//                    wrapper.groupBy(TjProject::getHisXmbm);
+//                    TjProject project = projectService.getOne(wrapper);
+//                    if(null !=project){
+//                        BigDecimal decimal = project.getProPrice().multiply(BigDecimal.valueOf(detail.getSl()));
+//                        tree.setTjPrice(String.valueOf(decimal));
+//                    }
+                    tree.setTjPrice(String.valueOf(detail.getProjg()));
                     LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>();
                     if (detail.getSfzhfy().equals("1"))
                         wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm);
@@ -453,6 +475,7 @@
                                 detailsDto.setSfzhfy("0");
                             }
                             detailsDto.setSl(project.getSl());
+                            detailsDto.setProjg(project.getProPrice());
                             detailDtos.add(detailsDto);
                         }
                     }
@@ -477,14 +500,16 @@
                     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<TjProject> wrapper = new LambdaQueryWrapper<>();
+//                    wrapper.eq(TjProject::getHisXmbm, mxfyxmbm);
+//                    wrapper.eq(TjProject::getSl,1);
+//                    wrapper.groupBy(TjProject::getHisXmbm);
+//                    TjProject project = projectService.getOne(wrapper);
+//                    if(null !=project){
+//                     BigDecimal decimal = project.getProPrice().multiply(BigDecimal.valueOf(detail.getSl()));
+//                    tree.setTjPrice(String.valueOf(decimal));
+//                    }
+                    tree.setTjPrice(String.valueOf(detail.getProjg()));
                     LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>();
                     if (detail.getSfzhfy().equals("1"))
                         wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm);
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
index 7f20eda..ccf8bed 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
@@ -1425,40 +1425,24 @@
             tjFlowingWaterLambdaQueryWrapper.ne(TjFlowingWater::getPayStasus,2);
             tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getIsAddition,"N");
             TjFlowingWater tjFlowingWater = tjFlowingWaterService.getOne(tjFlowingWaterLambdaQueryWrapper);
-//            if (tjFlowingWater1.getPayStasus() != 1){
-//                LambdaQueryWrapper<TjCustomer> tjCustomerLambdaQueryWrapper = new LambdaQueryWrapper<>();
-//                tjCustomerLambdaQueryWrapper.eq(TjCustomer::getCusId,tjOrder.getUserId());
-//                TjCustomer tjCustomer = tjCustomerService.getOne(tjCustomerLambdaQueryWrapper);
+
                 HashMap<String, Object> hisRequestParams = new HashMap<>();
                 // 涓嶅湪闇�瑕佽韩浠借瘉鍙�
-//                hisRequestParams.put("card_no",tjCustomer.getCusIdcard());
                 hisRequestParams.put("patientId",tjOrder.getCardId());
                 AjaxResult queryPay = hisApiGetMethodService.getHISDataNew("QueryPay", hisRequestParams);
                 if (Integer.parseInt(queryPay.get("code").toString()) == 200) {
-                    List<Map<String, String>> data = (List<Map<String, String>>) queryPay.get("data");
-//                    ArrayList<String> sqdhs = new ArrayList<>();
-//                    ArrayList<String> xmfls = new ArrayList<>();
-                    BigDecimal cateFeeAll = BigDecimal.ZERO;
-                    for (Map<String, String> datum : data) {
-//                        String advId = datum.get("Adv_Id").split("_")[1];
-                        BigDecimal cateFee = new BigDecimal(datum.get("CateFee"));
-//                        String cateCode = datum.get("CateCode");
-                        cateFeeAll = cateFeeAll.add(cateFee);
-//                        sqdhs.add(advId);
-//                        xmfls.add(cateCode);
-                    }
-       /*             LambdaQueryWrapper<LtkjJianchajianyanTree> queryWrapper = new LambdaQueryWrapper<>();
-                    queryWrapper.in(LtkjJianchajianyanTree::getSqdh, sqdhs)
-                            .in(LtkjJianchajianyanTree::getXmfl, xmfls)
-                            .eq(LtkjJianchajianyanTree::getCardId,tjOrder.getCardId())
-                            .groupBy(LtkjJianchajianyanTree::getType)
-                            .select(LtkjJianchajianyanTree::getFyhj);
-                    List<LtkjJianchajianyanTree> results = ltkjJianchajianyanTreeService.list(queryWrapper);
-                    BigDecimal total = results.stream()
-                            .map(item -> new BigDecimal(item.getFyhj()))
-                            .reduce(BigDecimal.ZERO, BigDecimal::add);*/
-                    BigDecimal fyhj = ltkjJianchajianyanTreeService.getLtkjJianchajianyanTreeFyhjByCardId(tjOrder.getCardId());
-                    if (cateFeeAll.compareTo(fyhj) != 0){
+//                    List<Map<String, String>> data = (List<Map<String, String>>) queryPay.get("data");
+//                    BigDecimal cateFeeAll = BigDecimal.ZERO;
+//                    for (Map<String, String> datum : data) {
+//                        BigDecimal cateFee = new BigDecimal(datum.get("CateFee"));
+//                        cateFeeAll = cateFeeAll.add(cateFee);
+//                    }
+//                    BigDecimal fyhj = ltkjJianchajianyanTreeService.getLtkjJianchajianyanTreeFyhjByCardId(tjOrder.getCardId());
+//                    if (cateFeeAll.compareTo(fyhj) != 0){
+//                        return AjaxResult.error("瀛樺湪鏈即璐归」鐩�");
+//                    }
+                    int sfsf = ltkjJianchajianyanTreeService.getSfsfByCardId(tjOrder.getCardId());
+                    if (sfsf > 0){
                         return AjaxResult.error("瀛樺湪鏈即璐归」鐩�");
                     }
 
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/hisDto/OutpintestapplyDetailsDto.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/hisDto/OutpintestapplyDetailsDto.java
index 422b4d2..b780b87 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/hisDto/OutpintestapplyDetailsDto.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/hisDto/OutpintestapplyDetailsDto.java
@@ -2,9 +2,12 @@
 
 import lombok.Data;
 
+import java.math.BigDecimal;
+
 @Data
 public class OutpintestapplyDetailsDto {
     private String mxfyxmbm;
     private String sfzhfy;
     private Integer sl;
+    private BigDecimal projg;
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java
index 75ee29e..fbcd1bd 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java
@@ -17,6 +17,16 @@
     @Select("SELECT SUM(aa.fyhj) FROM (" +
             "SELECT a.fyhj FROM ltkj_jianchajianyan_tree a WHERE a.card_id=#{cardId} GROUP BY a.sqdh,a.type)aa;")
     BigDecimal getLtkjJianchajianyanTreeFyhjByCardId(String cardId);
+
+
+
+    @Select("SELECT COUNT(zb.sqdh) sfjf FROM (\n" +
+            "SELECT aa.sqdh,SUM(aa.fyhj) hj FROM (\n" +
+            "SELECT DISTINCT a.sqdh,  a.fyhj FROM ltkj_jianchajianyan_tree a WHERE a.card_id=#{cardId}) aa  GROUP BY aa.sqdh) zb\n" +
+            "LEFT JOIN   ( SELECT a.adv_id ,SUM(a.catefee) hj FROM ltkj_querypay a WHERE a.ghxh=#{cardId} GROUP BY a.adv_id) cb ON\n" +
+            "\t\tzb.sqdh=(case when cb.adv_id is not null and LOCATE('_',cb.adv_id)>0 then SUBSTRING_INDEX(cb.adv_id,'_',-1) else cb.adv_id end) \n" +
+            "WHERE  zb.hj <> cb.hj or cb.adv_id is null;")
+    int getSfsfByCardId(String cardId);
 }
 
 
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjJianchajianyanTreeService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjJianchajianyanTreeService.java
index 9340569..fd28f58 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjJianchajianyanTreeService.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjJianchajianyanTreeService.java
@@ -15,4 +15,6 @@
 
     BigDecimal getLtkjJianchajianyanTreeFyhjByCardId(String cardId);
 
+    int getSfsfByCardId(String cardId);
+
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjJianchajianyanTreeServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjJianchajianyanTreeServiceImpl.java
index 48c7b53..39ac243 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjJianchajianyanTreeServiceImpl.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjJianchajianyanTreeServiceImpl.java
@@ -25,6 +25,11 @@
     public BigDecimal getLtkjJianchajianyanTreeFyhjByCardId(String cardId) {
         return mapper.getLtkjJianchajianyanTreeFyhjByCardId(cardId);
     }
+
+    @Override
+    public int getSfsfByCardId(String cardId) {
+        return mapper.getSfsfByCardId(cardId);
+    }
 }
 
 

--
Gitblit v1.8.0