From ab550ebbfa4b579b373fdd7589e799bbb44362e7 Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期五, 05 七月 2024 18:37:03 +0800
Subject: [PATCH] zjh 2024/07/5-1

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java |   84 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 84 insertions(+), 0 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java
index aedb917..e1a46c6 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java
@@ -46,6 +46,7 @@
 import com.ltkj.framework.datasource.DynamicDataSourceContextHolder;
 import com.ltkj.hosp.domain.*;
 import com.ltkj.hosp.dto.QianDaoDto;
+import com.ltkj.hosp.dto.TjProBlDto;
 import com.ltkj.hosp.hisDto.OutpinimpapplyDto;
 import com.ltkj.hosp.mapper.TestMapper;
 import com.ltkj.hosp.service.*;
@@ -192,6 +193,10 @@
     private ISysDeptService sysDeptService;
     @Autowired
     private HisApiMethodService controller;
+    @Autowired
+    private TjProBlService blService;
+    @Autowired
+    private LtkjJianchajianyanTreeService ltkjJianchajianyanTreeService;
 
     /**
      * 鏌ヨ浣撴璁板綍鍒楄〃
@@ -2746,5 +2751,84 @@
         }
         return AjaxResult.success();
     }
+
+
+    @GetMapping("/getBlproByTjh")
+    @ApiOperation(value = "鏍规嵁浣撴鍙疯幏鍙栬ˉ褰曢」鐩褰�")
+    @Transactional
+    public AjaxResult getBlproByTjh(@RequestParam @ApiParam(value = "浣撴鍙�") String tjNum) {
+
+        TjOrder order = tjOrderService.getOrderByTjNum(tjNum);
+        if (null != order) {
+            LambdaQueryWrapper<TjProBl> wq=new LambdaQueryWrapper<>();
+            wq.eq(TjProBl::getTjh,tjNum);
+            List<TjProBl> blList = blService.list(wq);
+            if(null !=blList && blList.size()>0){
+                for (TjProBl bl : blList) {
+                    LambdaQueryWrapper<TjOrderRemark>wqr=new LambdaQueryWrapper<>();
+                    wqr.eq(TjOrderRemark::getJxbz,bl.getBldh());
+                    List<TjOrderRemark> remarkList = remarkService.list(wqr);
+                    if(null !=remarkList && remarkList.size()>0){
+                        List<Long> collect = remarkList.stream().map(TjOrderRemark::getProId).collect(Collectors.toList());
+                        LambdaQueryWrapper<TjProject> wqp=new LambdaQueryWrapper<>();
+                        wqp.in(TjProject::getProId,collect);
+                        List<TjProject> projectList = projectService.list(wqp);
+                        for (TjProject project : projectList) {
+                            project.setChildren(projectService.getTjProjectListBySoneId(String.valueOf(project.getProId())));
+                        }
+                        bl.setProjectList(projectList);
+                    }
+                }
+                return AjaxResult.success(blList);
+            }
+            return AjaxResult.success(null);
+        }
+        return AjaxResult.error("鏆傛棤浣撴璁板綍");
+    }
+
+
+
+    @PostMapping("/revokeBlProByBldhAndTjh")
+    @ApiOperation(value = "鏍规嵁琛ュ綍鍗曞彿鍜屼綋妫�鍙峰垹闄よ褰�")
+    @Transactional
+    public AjaxResult revokeBlProByBldhAndTjh(@RequestBody TjProBlDto dto) {
+
+        if(null ==dto.getBldhs() || dto.getBldhs().size()==0){
+            return AjaxResult.error("璇烽�夋嫨瑕佹挙閿�鐨勮ˉ褰曢」鐩�");
+        }
+
+        TjOrder order = tjOrderService.getOrderByTjNum(dto.getTjh());
+        if (null != order) {
+            String configByKey = configService.selectConfigByKey("sfkqdyhis");
+            if(null !=configByKey && configByKey.equals("Y")){
+                HashMap<String, Object> hisRequestParams = new HashMap<>();
+                hisRequestParams.put("patientId",order.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");
+                    BigDecimal cateFeeAll = BigDecimal.ZERO;
+                    List<String> advIds=new ArrayList<>();
+                    for (Map<String, String> datum : data) {
+                        String advId = datum.get("Adv_Id").split("_")[1];
+                        BigDecimal cateFee = new BigDecimal(datum.get("CateFee"));
+                        cateFeeAll = cateFeeAll.add(cateFee);
+                        advIds.add(advId);
+                    }
+                    if (advIds.containsAll(dto.getBldhs()) && cateFeeAll.compareTo(BigDecimal.ZERO)!=0 ){
+                        return AjaxResult.error("鏀归」鐩凡缂磋垂涓嶅彲鎾ら攢!!!");
+                    }
+                }
+            }
+            for (String bldh : dto.getBldhs()) {
+               remarkService.deleteTjOrderDetailByjxbz(bldh);
+                tjOrderDetailService.deleteTjOrderDetailByjxbz(bldh);
+                tjFlowingWaterService.deleteTjOrderDetailByjxbz(bldh);
+                transitionService.deleteTjOrderDetailByjxbz(bldh);
+                blService.remove(new LambdaQueryWrapper<TjProBl>().eq(TjProBl::getTjh,dto.getTjh()).eq(TjProBl::getBldh,bldh));
+            }
+            return AjaxResult.success();
+        }
+        return AjaxResult.error();
+    }
 }
 

--
Gitblit v1.8.0