From 5978bf12f908c76e18dd229293bdedd729e1183c Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期三, 31 七月 2024 14:38:39 +0800
Subject: [PATCH] zjh 2024/07/31-1

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java |  167 +++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 123 insertions(+), 44 deletions(-)

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 9b12ca8..ab97ccf 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
@@ -1,12 +1,18 @@
 package com.ltkj.web.controller.system;
 
 import java.io.*;
+import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.stream.Collectors;
 
 import cn.hutool.core.date.DateUtil;
+import cn.hutool.json.JSONArray;
+import cn.hutool.json.JSONObject;
+import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.base.Joiner;
@@ -24,9 +30,11 @@
 import com.ltkj.system.domain.SysPost;
 import com.ltkj.system.domain.SysUserPost;
 import com.ltkj.system.service.*;
+import com.ltkj.web.controller.his.HisApiGetMethodService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.ArrayUtils;
 import org.apache.ibatis.jdbc.Null;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -57,6 +65,7 @@
 @RestController
 @RequestMapping("/system/dept")
 @Api(tags = "绉戝閮ㄩ棬淇℃伅")
+@Slf4j
 public class SysDeptController extends BaseController implements Serializable {
     @Resource
     private ISysDeptService deptService;
@@ -102,6 +111,12 @@
     private TestMapper testMapper;
     @Autowired
     private ISysConfigService configService;
+    @Autowired
+    private ITjFlowingWaterService tjFlowingWaterService;
+    @Autowired
+    private HisApiGetMethodService hisApiGetMethodService;
+    @Autowired
+    private LtkjJianchajianyanTreeService ltkjJianchajianyanTreeService;
 
     /**
      * 璇ヤ綋妫�绉戝涓嬪鎴峰垪琛ㄦ樉绀烘帴鍙�
@@ -1387,6 +1402,7 @@
      * @param tjNumber
      * @return
      */
+//    @Transactional
     @GetMapping("/getParentList")
     @ApiOperation(value = "鍖荤敓鐐瑰嚮浣撴淇℃伅璇︽儏(鍙樉绀虹埗椤圭洰鍒楄〃)")
     public AjaxResult getParentList(@ApiParam(value = "瀹㈡埛浣撴鍙�") @RequestParam String tjNumber) {
@@ -1400,7 +1416,48 @@
             }
             ksId = Math.toIntExact(sysUser.getDeptId());
         }
+        String configByKey = configService.selectConfigByKey("sfkqdyhis");
+        if (configByKey.equals("Y")){
+            // 鍒ゆ柇鏄惁鏀惰垂 璇锋眰鎺ュ彛
+            LambdaQueryWrapper<TjOrder> tjOrderLambdaQueryWrapper = new LambdaQueryWrapper<>();
+            tjOrderLambdaQueryWrapper.eq(TjOrder::getTjNumber,tjNumber);
+            TjOrder tjOrder = orderService.getOne(tjOrderLambdaQueryWrapper);
+            LambdaQueryWrapper<TjFlowingWater> tjFlowingWaterLambdaQueryWrapper = new LambdaQueryWrapper<>();
+            tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getOrderId,tjOrder.getOrderId());
+            tjFlowingWaterLambdaQueryWrapper.ne(TjFlowingWater::getPayStasus,2);
+            tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getIsAddition,"N");
+            TjFlowingWater tjFlowingWater = tjFlowingWaterService.getOne(tjFlowingWaterLambdaQueryWrapper);
 
+                HashMap<String, Object> hisRequestParams = new HashMap<>();
+                // 涓嶅湪闇�瑕佽韩浠借瘉鍙�
+                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");
+//                    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){
+                        log.error("璺嘲绉戞妧---  "+DateUtil.date()+" 瀛樺湪鏈即璐归」鐩殑 灏卞崟鏁�  "+sfsf);
+                        log.error("璺嘲绉戞妧---  "+DateUtil.date()+" 瀛樺湪鏈即璐归」鐩殑 灏辫瘖鍙�  "+tjOrder.getCardId()+" 浣撴鍙� "+tjOrder.getTjNumber());
+                        return AjaxResult.error("瀛樺湪鏈即璐归」鐩�");
+                    }
+
+                    extracted(tjOrder, tjFlowingWater);
+                }else {
+                    log.error("璺嘲绉戞妧--- "+DateUtil.date()+" 鏈煡璇㈠埌缂磋垂璁板綍鐨� 灏辫瘖鍙�  "+tjOrder.getCardId()+" 浣撴鍙� "+tjOrder.getTjNumber());
+                    return AjaxResult.error("鏈煡璇㈠埌缂磋垂璁板綍");
+                }
+//            }
+        }
         String config = configService.selectConfigByKey("qt_open_xdt");
         String byKey = configService.selectConfigByKey("qt_kjksid");
         List<Integer> split = new ArrayList<>(); // 瀛樻斁杞崲鍚庣殑integer绫诲瀷缁撴灉
@@ -1491,6 +1548,23 @@
         return AjaxResult.error();
     }
 
+    @Transactional
+    private void extracted(TjOrder tjOrder, TjFlowingWater tjFlowingWater) {
+        tjFlowingWater.setPayStasus(1L);
+        tjFlowingWater.setPayType(0L);
+        tjFlowingWater.setTollCollectorId("148");
+        tjFlowingWaterService.updateById(tjFlowingWater);
+        Long tjSerialNumber = tjFlowingWater.getTjSerialNumber();
+        LambdaQueryWrapper<TjOrderDetail> tjOrderDetailLambdaQueryWrapper = new LambdaQueryWrapper<>();
+        tjOrderDetailLambdaQueryWrapper.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId());
+        List<TjOrderDetail> tjOrderDetails = detailService.list(tjOrderDetailLambdaQueryWrapper);
+        List<Long> detailIds = tjOrderDetails.stream().map(TjOrderDetail::getOrderDetailId).collect(Collectors.toList());
+        LambdaUpdateWrapper<TjOrderDetail> tjOrderDetailLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
+        tjOrderDetailLambdaUpdateWrapper.set(TjOrderDetail::getFlowingWaterId,tjSerialNumber);
+        tjOrderDetailLambdaUpdateWrapper.in(TjOrderDetail::getOrderDetailId,detailIds);
+        detailService.update(tjOrderDetailLambdaUpdateWrapper);
+    }
+
     /**
      * 鐐瑰嚮鐖堕」鐩樉绀哄瓙椤圭洰璇︽儏
      *
@@ -1510,7 +1584,10 @@
 //        }
 
         TjOrderRemark remark = remarkService.getTjOrderRemarkByTjNumAndProParentId(tjNumber, proParentId);
-        List<TjProject> proParentList = projectService.getTjProjectListBySoneId(proParentId);
+
+//        List<TjProject> proParentList = projectService.getTjProjectListBySoneId(proParentId);
+        List<TjProject> proParentList = projectService.getTjProjectListByTbTransition(proParentId,tjNumber);
+
         if (null == proParentList || proParentList.size()==0) {
             Map<String, Object> map = new HashMap<>();
             map.put("xiaoJieIds", null);
@@ -1525,6 +1602,7 @@
             return AjaxResult.success("璇ョ敤鎴锋殏鏃舵病鏈変綋妫�鏁版嵁");
         }
         List<TjOrderDetail> tjOrderDetails = detailService.getTjOrderDetailListInProParentIdList(String.valueOf(one.getOrderId()), proParentIdList);
+        List<TjOrderDetail> tjOrderDetailList=new ArrayList<>();
         TjCustomer customer = tjCustomerService.getById(one.getUserId());
         if (null != tjOrderDetails && tjOrderDetails.size() > 0) {
             for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
@@ -1547,50 +1625,50 @@
                 tjOrderDetail.setRulesList(rulesList);
 
                 //鏌ユ爣鍑嗗拰鍗曚綅----start
-                List<TjStandard> list26 = tjStandardService.getTjStandardListByProId(String.valueOf(tjOrderDetail.getProId()));
-                if (list26.size() == 0) {
-                    project.setProMetering("/");
-                    project.setProScope("/");
-                } else if (list26.size() == 1) {
-                    project.setProMetering(list26.get(0).getCompany() == null ? " " : list26.get(0).getCompany());
-                    project.setProScope((list26.get(0).getTjStandardLtValue() == null ? " " : list26.get(0).getTjStandardLtValue()) + "-" + (list26.get(0).getTjStandardGtValue() == null ? " " : list26.get(0).getTjStandardGtValue()));
-                } else {
-                    Long cusSex = customer.getCusSex();
-                    Date cusBrithday = customer.getCusBrithday();
-                    int age = DateUtil.ageOfNow(cusBrithday);
-                    for (TjStandard tjStandard : list26) {
-                        LambdaQueryWrapper<TjStandard> wq8 = new LambdaQueryWrapper<>();
-                        if (tjStandard.getTjSex() != null) {
-                            wq8.eq(TjStandard::getTjSex, cusSex);
-                        }
-                        if (tjStandard.getTjType() != null) {
-                            wq8.eq(TjStandard::getTjType, StringUtils.getAgeType(age));
-                        }
-                        TjStandard standard = tjStandardService.getOne(wq8);
-                        project.setProMetering(standard.getCompany());
-                        project.setProScope((standard.getTjStandardLtValue() == null ? " " : standard.getTjStandardLtValue()) + "-" + (standard.getTjStandardGtValue() == null ? " " : standard.getTjStandardGtValue()));
-                    }
-                }
+//                List<TjStandard> list26 = tjStandardService.getTjStandardListByProId(String.valueOf(tjOrderDetail.getProId()));
+//                if (list26.size() == 0) {
+//                    project.setProMetering("/");
+//                    project.setProScope("/");
+//                } else if (list26.size() == 1) {
+//                    project.setProMetering(list26.get(0).getCompany() == null ? " " : list26.get(0).getCompany());
+//                    project.setProScope((list26.get(0).getTjStandardLtValue() == null ? " " : list26.get(0).getTjStandardLtValue()) + "-" + (list26.get(0).getTjStandardGtValue() == null ? " " : list26.get(0).getTjStandardGtValue()));
+//                } else {
+//                    Long cusSex = customer.getCusSex();
+//                    Date cusBrithday = customer.getCusBrithday();
+//                    int age = DateUtil.ageOfNow(cusBrithday);
+//                    for (TjStandard tjStandard : list26) {
+//                        LambdaQueryWrapper<TjStandard> wq8 = new LambdaQueryWrapper<>();
+//                        if (tjStandard.getTjSex() != null) {
+//                            wq8.eq(TjStandard::getTjSex, cusSex);
+//                        }
+//                        if (tjStandard.getTjType() != null) {
+//                            wq8.eq(TjStandard::getTjType, StringUtils.getAgeType(age));
+//                        }
+//                        TjStandard standard = tjStandardService.getOne(wq8);
+//                        project.setProMetering(standard.getCompany());
+//                        project.setProScope((standard.getTjStandardLtValue() == null ? " " : standard.getTjStandardLtValue()) + "-" + (standard.getTjStandardGtValue() == null ? " " : standard.getTjStandardGtValue()));
+//                    }
+//                }
                 //鏌ユ爣鍑嗗拰鍗曚綅-----end
                 tjOrderDetail.setProject(project);
-                List<TjStandard> list2 = tjStandardService.getTjStandardListByProId(String.valueOf(project.getProId()));
-                if (list2.size() == 0) {
-                    tjOrderDetail.setStandard(null);
-                } else if (list2.size() == 1) {
-                    tjOrderDetail.setStandard(list2.get(0));
-                } else {
-                    for (TjStandard tjStandard : list2) {
-                        LambdaQueryWrapper<TjStandard> wq8 = new LambdaQueryWrapper<>();
-                        if (tjStandard.getTjSex() != null) {
-                            wq8.eq(TjStandard::getTjSex, customer.getCusSex());
-                        }
-                        if (tjStandard.getTjType() != null) {
-                            wq8.eq(TjStandard::getTjType, StringUtils.getAgeType(DateUtil.ageOfNow(customer.getCusBrithday())));
-                        }
-                        TjStandard standard = tjStandardService.getOne(wq8);
-                        tjOrderDetail.setStandard(standard);
-                    }
-                }
+//                List<TjStandard> list2 = tjStandardService.getTjStandardListByProId(String.valueOf(project.getProId()));
+//                if (list2.size() == 0) {
+//                    tjOrderDetail.setStandard(null);
+//                } else if (list2.size() == 1) {
+//                    tjOrderDetail.setStandard(list2.get(0));
+//                } else {
+//                    for (TjStandard tjStandard : list2) {
+//                        LambdaQueryWrapper<TjStandard> wq8 = new LambdaQueryWrapper<>();
+//                        if (tjStandard.getTjSex() != null) {
+//                            wq8.eq(TjStandard::getTjSex, customer.getCusSex());
+//                        }
+//                        if (tjStandard.getTjType() != null) {
+//                            wq8.eq(TjStandard::getTjType, StringUtils.getAgeType(DateUtil.ageOfNow(customer.getCusBrithday())));
+//                        }
+//                        TjStandard standard = tjStandardService.getOne(wq8);
+//                        tjOrderDetail.setStandard(standard);
+//                    }
+//                }
                 if (null != remark.getDoctorName()) {
                     //lg0412
                     SysUser byId = userService.getById(remark.getDoctorName());
@@ -1600,6 +1678,7 @@
                 } else {
                     tjOrderDetail.setDoctorName(null);
                 }
+                tjOrderDetailList.add(tjOrderDetail);
             }
         }
         Map<String, Object> map = new HashMap<>();
@@ -1619,7 +1698,7 @@
         } else {
             map.put("xiaoJieIds", null);
         }
-        map.put("sons", tjOrderDetails);
+        map.put("sons", tjOrderDetailList);
         map.put("xiaoJie", adviceList);
         map.put("remark", remark.getRemark());
 

--
Gitblit v1.8.0