From 9b6f602df09c5e39481f03e22d99fffe825b9393 Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期二, 31 十二月 2024 19:13:17 +0800
Subject: [PATCH] zjh202412031

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjDwGroupingController.java |   70 +++-
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjDwGroupingServiceImpl.java     |    7 
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITbTransitionService.java             |    4 
 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjDwGroupingMapper.java                |    7 
 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjCustomerMapper.java                  |   17 +
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java      |  645 ++++++++++++++++++++++++++----------------
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjCustomerService.java               |    5 
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java   |   36 ++
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjDwGroupingService.java             |    3 
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TbTransitionServiceImpl.java     |   10 
 ltkj-hosp/src/main/resources/mapper/TjCustomerMapper.xml                            |   35 ++
 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TbTransitionMapper.java                |   46 +++
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjCustomerServiceImpl.java       |   12 
 13 files changed, 629 insertions(+), 268 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java
index 31009db..c474214 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java
@@ -121,13 +121,23 @@
 //            }
 //        }
         List<String> strings = tjOrderService.selectTjOrderByCardId1();
-        if (null != strings && strings.size() > 0) {
+        if (null != strings && !strings.isEmpty()) {
             List<Map<String, Object>> collect = maps.stream()
                     .filter(item -> !strings.contains(item.get("pacCode").toString())).collect(Collectors.toList());
             return AjaxResult.success(collect);
         }
         return AjaxResult.success(maps);
 //        return AjaxResult.success(maps);
+    }
+
+
+    @GetMapping("/vcustomerlist")
+    @ApiOperation(value = "绛惧埌鐧昏椤甸潰濮撳悕鏍忓脊妗嗘帴鍙�")
+    public AjaxResult vcustomerlist(@RequestParam(required = false) String name,
+                                  @RequestParam(required = false) String sjh,
+                                  @RequestParam(required = false) String sfzh) {
+        List<Map<String, Object>> maps = tjCustomerService.vcustomerlist(name, sjh, sfzh);
+        return AjaxResult.success(maps);
     }
 
 
@@ -372,6 +382,27 @@
     }
 
 
+    @GetMapping("/getcusList")
+    @ApiOperation(value = "妗f绠$悊鎺ュ彛")
+    public TableDataInfo getcusList(TjCustomer tjCustomer) {
+        startPage();
+        List<TjCustomer> list = tjCustomerService.getcusList(tjCustomer);
+        if (null != list && !list.isEmpty()) {
+            for (TjCustomer customer : list) {
+                customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone()));
+                customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard()));
+                TjCustomerBlack tjCustomerBlack = blackService.isTjCustomerBlack(String.valueOf(customer.getCusId()));
+                if (null != tjCustomerBlack) {
+                    customer.setIsBlack("Y");
+                } else {
+                    customer.setIsBlack("N");
+                }
+            }
+        }
+        return getDataTable(list);
+    }
+
+
     /**
      * 鏌ヨ瀹㈡埛淇℃伅鍒楄〃
      */
@@ -381,9 +412,8 @@
     public TableDataInfo list(TjCustomer tjCustomer) {
         startPage();
         List<TjCustomer> list = tjCustomerService.selectTjCustomerList(tjCustomer);
-        if (null != list && list.size() > 0) {
+        if (null != list && !list.isEmpty()) {
             for (TjCustomer customer : list) {
-//                customer.setCusName(MatchUtils.hideCusName(customer.getCusName()));
                 customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone()));
                 customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard()));
                 TjCustomerBlack tjCustomerBlack = blackService.isTjCustomerBlack(String.valueOf(customer.getCusId()));
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjDwGroupingController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjDwGroupingController.java
index 00aedcb..9cde62d 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjDwGroupingController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjDwGroupingController.java
@@ -16,6 +16,7 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
+import jodd.util.StringUtil;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
@@ -54,6 +55,32 @@
 
     @Resource
     private IDictCompService compService;
+
+
+    @GetMapping("/huoqutuantitaocanxiangmu")
+    @ApiOperation(value = "绛惧埌鐧昏鑾峰彇鍥綋濂楅椤圭洰")
+    public AjaxResult huoqutuantitaocanxiangmu(@RequestParam String dwId,@RequestParam Long sex) {
+      List<TjPackage> list=  tjDwGroupingService.huoqutuantitaocanxiangmu(dwId,sex);
+        if (null !=list && !list.isEmpty()){
+            for (TjPackage tjPackage : list) {
+                List<TjProject> res=new ArrayList<>();
+                LambdaQueryWrapper<TjGroupingPro> wqq=new LambdaQueryWrapper<>();
+                wqq.eq(TjGroupingPro::getGroupingId,tjPackage.getPacId());
+                final List<TjGroupingPro> groupingProList = groupingProService.list(wqq);
+                if (null !=groupingProList && !groupingProList.isEmpty()){
+                    for (TjGroupingPro pro : groupingProList) {
+                        final TjProject byId = projectService.getById(pro.getProId());
+                        if(null !=byId){
+                            res.add(byId);
+                        }
+                    }
+                    tjPackage.setTjProjectList(res);
+                }
+            }
+        }
+        return AjaxResult.success(list);
+    }
+
 
     /**
      * 鏌ヨ浣撴鍗曚綅鍒嗙粍鍒楄〃
@@ -100,23 +127,34 @@
     @Transactional
     public AjaxResult add(@RequestBody TjDwGrouping tjDwGrouping) {
         if((null==tjDwGrouping.getGroupingName() || "".equals(tjDwGrouping.getGroupingName()))
-                || (null==tjDwGrouping.getSex() || "".equals(tjDwGrouping.getSex()))
-                || (null==tjDwGrouping.getPacName()||"".equals(tjDwGrouping.getPacName()))){
+                || (null==tjDwGrouping.getSex() || "".equals(tjDwGrouping.getSex()))){
                 return AjaxResult.error("蹇呭~椤逛笉鑳戒负绌�!");
         }
-        int i = tjDwGroupingService.selectTjDwGroupingBySex(tjDwGrouping.getDwDeptId(), tjDwGrouping.getSex());
-        if(i>0){
-            return AjaxResult.error("璇ユ�у埆鍒嗙粍宸插瓨鍦ㄤ笉鍙噸澶嶅垱寤�");
+
+        String id = tjDwGrouping.getId();
+        if(StringUtil.isNotBlank(id)){
+            TjDwGrouping dwGrouping = tjDwGroupingService.getById(tjDwGrouping.getId());
+            if(null !=dwGrouping){
+                if(null !=tjDwGrouping.getMapList() && !tjDwGrouping.getMapList().isEmpty()){
+                    tjDwGroupingService.deleteTjDwGroupingById(tjDwGrouping.getId());
+                }
+            }
+        }else {
+            int i = tjDwGroupingService.selectTjDwGroupingBySex(tjDwGrouping.getDwDeptId(), tjDwGrouping.getSex());
+            if(i>0){
+                return AjaxResult.error("璇ユ�у埆鍒嗙粍宸插瓨鍦ㄤ笉鍙噸澶嶅垱寤�");
+            }
+            int wz = tjDwGroupingService.selectTjDwGroupingBySex(tjDwGrouping.getDwDeptId(),"2");
+            if(wz>0 && (tjDwGrouping.getSex().contains("0") || tjDwGrouping.getSex().contains("1"))){
+                return AjaxResult.error("宸插瓨鍦ㄩ�氱敤鍒嗙粍涓嶅彲鍒涘缓鍏朵粬鍒嗙粍");
+            }
+            int n = tjDwGroupingService.selectTjDwGroupingBySex(tjDwGrouping.getDwDeptId(),"0");
+            int v = tjDwGroupingService.selectTjDwGroupingBySex(tjDwGrouping.getDwDeptId(),"1");
+            if((n>0 || v>0) && tjDwGrouping.getSex().contains("2")){
+                return AjaxResult.error("宸插瓨鍦ㄥ叾浠栧垎缁勪笉鍙垱寤洪�氱敤鍒嗙粍");
+            }
         }
-        int wz = tjDwGroupingService.selectTjDwGroupingBySex(tjDwGrouping.getDwDeptId(),"2");
-        if(wz>0 && (tjDwGrouping.getSex().contains("0") || tjDwGrouping.getSex().contains("1"))){
-            return AjaxResult.error("宸插瓨鍦ㄩ�氱敤鍒嗙粍涓嶅彲鍒涘缓鍏朵粬鍒嗙粍");
-        }
-        int n = tjDwGroupingService.selectTjDwGroupingBySex(tjDwGrouping.getDwDeptId(),"0");
-        int v = tjDwGroupingService.selectTjDwGroupingBySex(tjDwGrouping.getDwDeptId(),"1");
-        if((n>0 || v>0) && tjDwGrouping.getSex().contains("2")){
-            return AjaxResult.error("宸插瓨鍦ㄥ叾浠栧垎缁勪笉鍙垱寤洪�氱敤鍒嗙粍");
-        }
+
         if(null ==tjDwGrouping.getPayType()|| tjDwGrouping.getPayType().isEmpty())return AjaxResult.error("璇烽�夋嫨缁撶畻鏂瑰紡!!!");
 
         TjDwDept dwDept = dwDeptService.getById(tjDwGrouping.getDwDeptId());
@@ -124,9 +162,9 @@
             tjDwGrouping.setDwDeptName(dwDept.getDwDeptName());
         }
         tjDwGrouping.setDwName(compService.getById(tjDwGrouping.getDwId()).getCnName());
+        if(StringUtil.isBlank(tjDwGrouping.getPacName())) tjDwGrouping.setPacName(tjDwGrouping.getGroupingName());
         if (tjDwGroupingService.saveOrUpdate(tjDwGrouping)) {
-            if(null !=tjDwGrouping.getMapList() && tjDwGrouping.getMapList().size()>0){
-//                groupingProService.remove(new LambdaQueryWrapper<TjGroupingPro>().eq(TjGroupingPro::getGroupingId,tjDwGrouping.getId()));
+            if(null !=tjDwGrouping.getMapList() && !tjDwGrouping.getMapList().isEmpty()){
                 groupingProService.deletedTjGroupingProByGroupingId(tjDwGrouping.getId());
                 for (Map<String, Object> map : tjDwGrouping.getMapList()) {
                     TjGroupingPro groupingPro=new TjGroupingPro();
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 d764531..5dd673a 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
@@ -114,7 +114,7 @@
  */
 @RestController
 @RequestMapping("/hosp/order")
-@Api(tags = "PC绔� ----浣撴璁板綍鎺ュ彛")
+@Api(tags = "PC绔� ----浣撴璁板綍鎺ュ彛 OrderController")
 @Slf4j
 public class TjOrderController extends BaseController {
     @Resource
@@ -456,32 +456,32 @@
             wq.in(TjOrder::getUserId, cusIds);
         }
 
-        if(null !=zt && (zt==0 || zt==1 || zt==2)){
-            List<TjOrder> orders=new ArrayList<>();
-            List<TjOrder> tjOrders=null;
+        if (null != zt && (zt == 0 || zt == 1 || zt == 2)) {
+            List<TjOrder> orders = new ArrayList<>();
+            List<TjOrder> tjOrders = null;
             List<TjOrder> orderList = tjOrderService.list(wq);
-            if(null !=orderList && !orderList.isEmpty()){
+            if (null != orderList && !orderList.isEmpty()) {
                 for (TjOrder order : orderList) {
                     int czwj = remarkService.panduaniscunzaiweijian(order.getTjNumber());
                     int sfwc = remarkService.panduaniswancheng(order.getTjNumber());
-                    if (zt==0 && czwj == 0) {
+                    if (zt == 0 && czwj == 0) {
                         //鏈0
                         order.setZt("鏈");
                         orders.add(order);
                     }
-                    if (zt==1 && czwj > 0) {
+                    if (zt == 1 && czwj > 0) {
                         //鍦ㄦ1
                         order.setZt("鍦ㄦ");
                         orders.add(order);
                     }
-                    if (zt==2 && sfwc == 0 && order.getCheckStatus()==0 && order.getCheckTime()==null && order.getHeshouStatus()==0 && order.getPrintLastTime()==null) {
+                    if (zt == 2 && sfwc == 0 && order.getCheckStatus() == 0 && order.getCheckTime() == null && order.getHeshouStatus() == 0 && order.getPrintLastTime() == null) {
                         //宸插畬鎴�2
                         order.setZt("宸插畬鎴�");
                         orders.add(order);
                     }
                 }
-                if(!orders.isEmpty()){
-                    tjOrders=orders.stream().sorted(Comparator.comparing(TjOrder::getCreateTime).reversed())
+                if (!orders.isEmpty()) {
+                    tjOrders = orders.stream().sorted(Comparator.comparing(TjOrder::getCreateTime).reversed())
                             .skip((long) (pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
                     for (TjOrder order : tjOrders) {
                         TjCustomer tjCustomer = tjCustomerService.getById(order.getUserId());
@@ -521,31 +521,31 @@
             return AjaxResult.success(map);
         }
 
-        if(null !=zt){
-            if(zt==3){
+        if (null != zt) {
+            if (zt == 3) {
                 //宸插鏍�
                 wq.isNotNull(TjOrder::getCheckTime);
-                wq.eq(TjOrder::getCheckStatus,1);
+                wq.eq(TjOrder::getCheckStatus, 1);
                 wq.isNull(TjOrder::getHeshouTime);
                 wq.isNull(TjOrder::getPrintLastTime);
-                wq.eq(TjOrder::getHeshouStatus,0);
+                wq.eq(TjOrder::getHeshouStatus, 0);
             }
-            if(zt==4){
+            if (zt == 4) {
                 //鐢熸垚鎶ュ憡
                 wq.isNotNull(TjOrder::getReportTime);
                 wq.isNull(TjOrder::getHeshouTime);
                 wq.isNull(TjOrder::getPrintLastTime);
-                wq.eq(TjOrder::getHeshouStatus,0);
+                wq.eq(TjOrder::getHeshouStatus, 0);
             }
-            if(zt==5){
+            if (zt == 5) {
                 //鎶ュ憡鏍告敹
-                wq.eq(TjOrder::getHeshouStatus,1);
+                wq.eq(TjOrder::getHeshouStatus, 1);
                 wq.isNull(TjOrder::getPrintLastTime);
             }
-            if(zt==6){
+            if (zt == 6) {
                 //宸插嚭鎶ュ憡
                 wq.isNotNull(TjOrder::getPrintLastTime);
-                wq.eq(TjOrder::getHeshouStatus,1);
+                wq.eq(TjOrder::getHeshouStatus, 1);
                 wq.isNotNull(TjOrder::getPrintLastTime);
             }
         }
@@ -591,20 +591,20 @@
                 Integer heshouStatus = order.getHeshouStatus();
                 Date lastTime = order.getPrintLastTime();
 
-                if(null !=zt){
-                    if(zt==3){
+                if (null != zt) {
+                    if (zt == 3) {
                         order.setZt("宸插鏍�");
                     }
-                    if(zt==4){
+                    if (zt == 4) {
                         order.setZt("鐢熸垚鎶ュ憡");
                     }
-                    if(zt==5){
+                    if (zt == 5) {
                         order.setZt("鎶ュ憡鏍告敹");
                     }
-                    if(zt==6){
+                    if (zt == 6) {
                         order.setZt("宸插嚭鎶ュ憡");
                     }
-                }else {
+                } else {
                     if (czwj == 0) {
                         //鏈0
                         order.setZt("鏈");
@@ -625,7 +625,7 @@
                         //鐢熸垚鎶ュ憡4
                         order.setZt("鐢熸垚鎶ュ憡");
                     }
-                    if (1== heshouStatus) {
+                    if (1 == heshouStatus) {
                         //鎶ュ憡鏍告敹5
                         order.setZt("鎶ュ憡鏍告敹");
                     }
@@ -730,7 +730,7 @@
 
         if (djbeginTime == null) djbeginTime = "";
         if (djendTime == null) djendTime = "";
-        Map<String, Object> map=  tjOrderService.getTjBgdyList(pageNum,pageSize,dyzt,tjNum,name,dw,djbeginTime,djendTime);
+        Map<String, Object> map = tjOrderService.getTjBgdyList(pageNum, pageSize, dyzt, tjNum, name, dw, djbeginTime, djendTime);
         return AjaxResult.success(map);
     }
 
@@ -1190,15 +1190,15 @@
 
                 log.info("璇ョ櫥璁颁汉鐨刪is灏辫瘖鍙锋槸: " + tjOrder.getCardId());
                 //鍥綋
-                if ("1".equals(tjOrder.getTjType())) {
+/*                if ("1".equals(tjOrder.getTjType())) {
 //                            asyncService.ttextracted(tjOrder, tjCustomer, sysUser, tjReservation, tjFlowingWater);
                     ttextracted(tjOrder, tjCustomer, sysUser, tjReservation, tjFlowingWater);
-                }
+                }*/
                 //涓汉
-                if ("2".equals(tjOrder.getTjType())) {
+         /*       if ("2".equals(tjOrder.getTjType())) {
                     //asyncService.newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater);
                     newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater);
-                }
+                }*/
                 // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs
                 if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) {
                     // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁
@@ -1208,10 +1208,16 @@
                     if (!ajaxResult.get("code").toString().equals("200")) return ajaxResult;
                     tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()),
                             sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber()));
+                    remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString());
+                    List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId());
+                    addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null);
                 } else {
+                    newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater);
+                    List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId());
+                    addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null);
+
                     hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder.getCardId());
                 }
-//                        hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder.getCardId());
                 return AjaxResult.success(tjNumber);
             } else {
                 tjCustomer.setCardId(tjOrder.getTjNumber());
@@ -1222,100 +1228,177 @@
             }
 
             //鍥綋
-            if ("1".equals(tjOrder.getTjType())) {
-//                        asyncService.ttextracted(tjOrder, tjCustomer, sysUser, tjReservation, tjFlowingWater);
-                asyncService.ttextracted(tjOrder, tjCustomer, sysUser, tjReservation, tjFlowingWater);
-            }
+//            if ("1".equals(tjOrder.getTjType())) {
+//                ttextracted(tjOrder, tjCustomer, sysUser, tjReservation, tjFlowingWater);
+////                asyncService.ttextracted(tjOrder, tjCustomer, sysUser, tjReservation, tjFlowingWater);
+//                List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId());
+//                addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null);
+//                return AjaxResult.success(tjNumber);
+//            }
             //涓汉
-            if ("2".equals(tjOrder.getTjType())) {
-                //asyncService.newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater);
+//            if ("2".equals(tjOrder.getTjType())) {
+//                //asyncService.newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater);
+//                newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater);
+//                List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId());
+//                addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null);
+//
+//                String s = configService.selectConfigByKey("is_request_common_his_api");
+//                if (null != s && s.equals("Y")) {
+//                    String apiUrl = configService.selectConfigByKey("common_api_url");
+//                    String hospbm = configService.selectConfigByKey("common_api_service_hospbm");
+//                    HashMap<String, Object> map = new HashMap<>();
+//                    map.put("pationId", tjCustomer.getPationId());
+//                    map.put("cardId", tjCustomer.getHisJzkh());
+//                    map.put("tjNum", tjFlowingWater.getTjSerialNumber());
+//                    map.put("kaiDanKs", "7805");
+//                    // 鏀惰垂鏍囧織 1寰呭敭璐� 2寰呴��璐�
+//                    map.put("shouTuiStatus", "1");
+//
+//                    JSONArray array = JSONUtil.createArray();
+//                    LambdaQueryWrapper<TbTransition> wrapper = new LambdaQueryWrapper<>();
+//                    wrapper.eq(TbTransition::getTjNum, tjOrder.getTjNumber());
+//                    wrapper.eq(TbTransition::getCusId, tjCustomer.getCusIdcard());
+//                    wrapper.eq(TbTransition::getCardId, tjCustomer.getCardId());
+//                    wrapper.isNotNull(TbTransition::getOrdPrice);
+//                    wrapper.gt(TbTransition::getOrdPrice, 0);
+//
+//                    List<TbTransition> list = tbTransitionService.list(wrapper);
+//                    for (TbTransition transition : list) {
+//                        LambdaQueryWrapper<TjProject> wrapper1 = new LambdaQueryWrapper<>();
+//                        wrapper1.eq(TjProject::getProId, transition.getProId());
+//                        TjProject project = projectService.getOne(wrapper1);
+//
+//                        LambdaQueryWrapper<SysDept> wrapper2 = new LambdaQueryWrapper<>();
+//                        wrapper2.eq(SysDept::getDeptId, project.getDeptId());
+//                        SysDept dept = sysDeptService.getOne(wrapper2);
+//
+//                        JSONObject obj = JSONUtil.createObj();
+//                        Integer sl = project.getSl();
+//                        BigDecimal danjia = transition.getOrdPrice();
+//                        BigDecimal allPrice = danjia.multiply(new BigDecimal(sl));
+//                        obj.putOpt("danJia", danjia);
+//                        obj.putOpt("jieSuanJe", allPrice);
+//                        obj.putOpt("shuliang", sl);
+//                        obj.putOpt("zhiXingKs", dept.getDeptId());
+//                        obj.putOpt("zhiXingKsMc", dept.getDeptName());
+//                        obj.putOpt("shouFeiXmId", project.getHisXmbm());
+//                        obj.putOpt("shouFeiXmMc", project.getHisXmmc());
+//
+////                        obj.putOpt("zhiXingKs","7805");
+////                        obj.putOpt("zhiXingKsMc","浣撴绉�");
+////                        obj.putOpt("shouFeiXmId","4735346");
+////                        obj.putOpt("shouFeiXmMc","浣撴璐�");
+//                        array.add(obj);
+//                    }
+//                    map.put("feiYongInfoList", array);
+//
+//                    String post = HttpClientUtils.sendPost(apiUrl + "/api/his/" + hospbm + "/creatCostInfo", map);
+//                    JSONObject object = JSONUtil.parseObj(post);
+//                    if (object.getInt("code") == 200) {
+//                        JSONObject data = object.getJSONObject("data");
+//                        tjFlowingWater.setHisWaterId(data.getStr("feiYongId"));
+//                        JSONArray mxList = data.getJSONArray("mxList");
+//                        if (mxList != null && !mxList.isEmpty()) {
+//                            List<TjFlowingWaterHis> his = mxList.toList(TjFlowingWaterHis.class);
+//                            tjFlowingWaterHisService.saveBatch(his);
+//                        }
+//                        tjFlowingWaterService.updateById(tjFlowingWater);
+//                    } else {
+//                        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+//                        return AjaxResult.error();
+//                    }
+//                }
+//                return AjaxResult.success(tjNumber);
+//            }
+
+            // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs
+
+            if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) {
+                // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁
+                tjFlowingWater.setPayStasus(1L);
+                newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater);
+                tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()),
+                        sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber()));
+                remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString());
+                List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId());
+                addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null);
+                return AjaxResult.success(tjNumber);
+            }else {
                 newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater);
                 List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId());
                 addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null);
+            }
 
-                String s = configService.selectConfigByKey("is_request_common_his_api");
-                if (null != s && s.equals("Y")) {
-                    String apiUrl = configService.selectConfigByKey("common_api_url");
-                    String hospbm = configService.selectConfigByKey("common_api_service_hospbm");
-                    HashMap<String, Object> map = new HashMap<>();
-                    map.put("pationId",tjCustomer.getPationId());
-                    map.put("cardId",tjCustomer.getHisJzkh());
-                    map.put("tjNum",tjFlowingWater.getTjSerialNumber());
-                    map.put("kaiDanKs","7805");
-                    // 鏀惰垂鏍囧織 1寰呭敭璐� 2寰呴��璐�
-                    map.put("shouTuiStatus","1");
+            String s = configService.selectConfigByKey("is_request_common_his_api");
+            if (null != s && s.equals("Y")) {
+                String apiUrl = configService.selectConfigByKey("common_api_url");
+                String hospbm = configService.selectConfigByKey("common_api_service_hospbm");
+                HashMap<String, Object> map = new HashMap<>();
+                map.put("pationId", tjCustomer.getPationId());
+                map.put("cardId", tjCustomer.getHisJzkh());
+                map.put("tjNum", tjFlowingWater.getTjSerialNumber());
+                map.put("kaiDanKs", "7805");
+                // 鏀惰垂鏍囧織 1寰呭敭璐� 2寰呴��璐�
+                map.put("shouTuiStatus", "1");
 
-                    JSONArray array = JSONUtil.createArray();
-                    LambdaQueryWrapper<TbTransition> wrapper = new LambdaQueryWrapper<>();
-                    wrapper.eq(TbTransition::getTjNum,tjOrder.getTjNumber());
-                    wrapper.eq(TbTransition::getCusId,tjCustomer.getCusIdcard());
-                    wrapper.eq(TbTransition::getCardId,tjCustomer.getCardId());
-                    wrapper.isNotNull(TbTransition::getOrdPrice);
-                    wrapper.gt(TbTransition::getOrdPrice,0);
+                JSONArray array = JSONUtil.createArray();
+                LambdaQueryWrapper<TbTransition> wrapper = new LambdaQueryWrapper<>();
+                wrapper.eq(TbTransition::getTjNum, tjOrder.getTjNumber());
+                wrapper.eq(TbTransition::getCusId, tjCustomer.getCusIdcard());
+                wrapper.eq(TbTransition::getCardId, tjCustomer.getCardId());
+                wrapper.isNotNull(TbTransition::getOrdPrice);
+                wrapper.gt(TbTransition::getOrdPrice, 0);
 
-                    List<TbTransition> list = tbTransitionService.list(wrapper);
-                    for (TbTransition transition : list) {
-                        LambdaQueryWrapper<TjProject> wrapper1 = new LambdaQueryWrapper<>();
-                        wrapper1.eq(TjProject::getProId,transition.getProId());
-                        TjProject project = projectService.getOne(wrapper1);
+                List<TbTransition> list = tbTransitionService.list(wrapper);
+                for (TbTransition transition : list) {
+                    LambdaQueryWrapper<TjProject> wrapper1 = new LambdaQueryWrapper<>();
+                    wrapper1.eq(TjProject::getProId, transition.getProId());
+                    TjProject project = projectService.getOne(wrapper1);
 
-                        LambdaQueryWrapper<SysDept> wrapper2 = new LambdaQueryWrapper<>();
-                        wrapper2.eq(SysDept::getDeptId,project.getDeptId());
-                        SysDept dept = sysDeptService.getOne(wrapper2);
+                    LambdaQueryWrapper<SysDept> wrapper2 = new LambdaQueryWrapper<>();
+                    wrapper2.eq(SysDept::getDeptId, project.getDeptId());
+                    SysDept dept = sysDeptService.getOne(wrapper2);
 
-                        JSONObject obj = JSONUtil.createObj();
-                        Integer sl = project.getSl();
-                        BigDecimal danjia = transition.getOrdPrice();
-                        BigDecimal allPrice = danjia.multiply(new BigDecimal(sl));
-                        obj.putOpt("danJia",danjia);
-                        obj.putOpt("jieSuanJe",allPrice);
-                        obj.putOpt("shuliang",sl);
-                        obj.putOpt("zhiXingKs",dept.getDeptId());
-                        obj.putOpt("zhiXingKsMc",dept.getDeptName());
-                        obj.putOpt("shouFeiXmId",project.getHisXmbm());
-                        obj.putOpt("shouFeiXmMc",project.getHisXmmc());
+                    JSONObject obj = JSONUtil.createObj();
+                    Integer sl = project.getSl();
+                    BigDecimal danjia = transition.getOrdPrice();
+                    BigDecimal allPrice = danjia.multiply(new BigDecimal(sl));
+                    obj.putOpt("danJia", danjia);
+                    obj.putOpt("jieSuanJe", allPrice);
+                    obj.putOpt("shuliang", sl);
+                    obj.putOpt("zhiXingKs", dept.getDeptId());
+                    obj.putOpt("zhiXingKsMc", dept.getDeptName());
+                    obj.putOpt("shouFeiXmId", project.getHisXmbm());
+                    obj.putOpt("shouFeiXmMc", project.getHisXmmc());
 
 //                        obj.putOpt("zhiXingKs","7805");
 //                        obj.putOpt("zhiXingKsMc","浣撴绉�");
 //                        obj.putOpt("shouFeiXmId","4735346");
 //                        obj.putOpt("shouFeiXmMc","浣撴璐�");
-                        array.add(obj);
-                    }
-                    map.put("feiYongInfoList",array);
+                    array.add(obj);
+                }
+                map.put("feiYongInfoList", array);
 
-                    String post = HttpClientUtils.sendPost(apiUrl + "/api/his/"+hospbm+"/creatCostInfo", map);
-                    JSONObject object = JSONUtil.parseObj(post);
-                    if (object.getInt("code") == 200) {
-                        JSONObject data = object.getJSONObject("data");
-                        tjFlowingWater.setHisWaterId(data.getStr("feiYongId"));
-                        JSONArray mxList = data.getJSONArray("mxList");
-                        if (mxList != null && !mxList.isEmpty()) {
-                            List<TjFlowingWaterHis> his = mxList.toList(TjFlowingWaterHis.class);
-                            tjFlowingWaterHisService.saveBatch(his);
-                        }
-                        tjFlowingWaterService.updateById(tjFlowingWater);
-                    }else {
-                        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-                        return AjaxResult.error();
+                String post = HttpClientUtils.sendPost(apiUrl + "/api/his/" + hospbm + "/creatCostInfo", map);
+                JSONObject object = JSONUtil.parseObj(post);
+                if (object.getInt("code") == 200) {
+                    JSONObject data = object.getJSONObject("data");
+                    tjFlowingWater.setHisWaterId(data.getStr("feiYongId"));
+                    JSONArray mxList = data.getJSONArray("mxList");
+                    if (mxList != null && !mxList.isEmpty()) {
+                        List<TjFlowingWaterHis> his = mxList.toList(TjFlowingWaterHis.class);
+                        tjFlowingWaterHisService.saveBatch(his);
                     }
+                    tjFlowingWaterService.updateById(tjFlowingWater);
+                } else {
+                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                    return AjaxResult.error();
                 }
             }
-            // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs
-            if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) {
-                // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁
-                tjFlowingWater.setPayStasus(1L);
-                newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater);
-//                AjaxResult ajaxResult = hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder, sysUser, result);
-//                if (!ajaxResult.get("code").toString().equals("200")) return ajaxResult;
-                tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()),
-                        sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber()));
-                remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(),tjFlowingWater.getTjSerialNumber().toString());
-                List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId());
-                addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null);
 
-            }
-//            pacsApiMethodService.OrderAdd(tjCustomer,tjOrder);
             return AjaxResult.success(tjNumber);
+//            pacsApiMethodService.OrderAdd(tjCustomer,tjOrder);
+//            return AjaxResult.success(tjNumber);
         }
         TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
         return AjaxResult.error();
@@ -2186,11 +2269,7 @@
     private List<Map<String, Object>> getMaps(String cusId, String cardId) {
 
         List<TbTransition> transitionList = null;
-//        if (redisCache.hasKey(cardId + cusId)) {
-//            transitionList = redisCache.getCacheList(cardId + cusId);
-//        } else {
         transitionList = transitionService.getTbTransitionListByCusId(cusId, cardId);
-//        }
         if (null == transitionList) return null;
         Map<Long, List<TbTransition>> collect = transitionList.stream().collect(Collectors.groupingBy(TbTransition::getParentProId));
         List<Map<String, Object>> list = new ArrayList<>();
@@ -2200,23 +2279,26 @@
             map.put("proPrantId", entry.getKey().toString());
             if (null != pacId) {
                 TjPackage aPackage = tjPackageService.getById(entry.getValue().get(0).getPacId());
-                map.put("tjCategory", aPackage.getTjCategory());
-                map.put("pacName", aPackage.getPacName());
-                TjProject tjProject = projectService.getById(entry.getKey());
-//                TjPackageProject project = tjPackageProjectService.getOne(new LambdaQueryWrapper<TjPackageProject>().eq(TjPackageProject::getPacId, pacId)
-//                        .eq(TjPackageProject::getProId, entry.getKey()));
-                map.put("ordPrice", tjProject.getProPrice());
-//                if (null != project) {
-//                    map.put("nowPrice", project.getPriceNow());
-//                } else {
-//                    map.put("nowPrice", tjProject.getProPrice());
-//                }
-                map.put("nowPrice", transitionService.getTbTransitionDxPriceByPac(cusId, entry.getKey(), cardId, pacId));
+                if (null != aPackage) {
+                    map.put("tjCategory", aPackage.getTjCategory());
+                    map.put("pacName", aPackage.getPacName());
+                    TjProject tjProject = projectService.getById(entry.getKey());
+                    map.put("ordPrice", tjProject.getProPrice());
+                    map.put("nowPrice", transitionService.getTbTransitionDxPriceByPac(cusId, entry.getKey(), cardId, pacId));
+                } else {
+                    TjDwGrouping grouping = dwGroupingService.getById(pacId);
+                    map.put("tjCategory", null);
+                    map.put("pacName", grouping.getGroupingName());
+                    TjProject tjProject = projectService.getById(entry.getKey());
+                    map.put("ordPrice", tjProject.getProPrice());
+                    map.put("nowPrice", transitionService.getTbTransitionDxPriceByPac(cusId, entry.getKey(), cardId, pacId));
+                }
+
             } else {
                 map.put("tjCategory", null);
                 map.put("pacName", "鍗曢」");
                 List<TbTransition> tbTransitionList = entry.getValue();
-                if (null != tbTransitionList && tbTransitionList.size() > 0) {
+                if (null != tbTransitionList && !tbTransitionList.isEmpty()) {
                     BigDecimal money1 = new BigDecimal("0.00");
                     BigDecimal money2 = new BigDecimal("0.00");
                     for (TbTransition tbTransition : tbTransitionList) {
@@ -2585,7 +2667,7 @@
             if (null != tjReservation && tjReservation.getPayType() == 1) {
                 tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()),
                         sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber()));
-                remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(),tjFlowingWater.getTjSerialNumber().toString());
+                remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString());
             }
         }
         if (tjFlowingWater.getPayStasus() == 1L) {
@@ -2595,7 +2677,7 @@
             tjFlowingWater.setCopeWith(tjOrder.getTjFlowingWater().getCopeWith());
             tjFlowingWater.setPayType(4L);
             tjFlowingWaterService.updateById(tjFlowingWater);
-            remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(),tjFlowingWater.getTjSerialNumber().toString());
+            remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString());
 //            asyncService.addTjChargingStandard(tjOrder, transitionService.getTbTransitionListByCusId(tjCustomer.getCusIdcard(), tjOrder.getCardId()), sysUser);
         }
     }
@@ -2606,49 +2688,49 @@
         tjAskMedicalHistoryService.updateTjAskMedicalHistoryByCusId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjCustomer.getCusId()));
         boolean b = tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(),
                 String.valueOf(sysUser.getUserId()), tjOrder.getCardId());
-        if (!b) {
-            List<TjGroupingPro> proList = groupingProService.list(new LambdaQueryWrapper<TjGroupingPro>().eq(TjGroupingPro::getGroupingId, tjOrder.getGroupId()));
-            if (null != proList && !proList.isEmpty()) {
-                for (TjGroupingPro groupingPro : proList) {
-                    TjOrderDetail detail = new TjOrderDetail();
-                    TjProject tjProject = projectService.selectTjProjectByProId(Long.valueOf(groupingPro.getProId()));
-                    detail.setIsSampling(String.valueOf(tjProject.getIsSampling()));
-                    detail.setOrderId(tjOrder.getOrderId());
-                    detail.setProId(Long.valueOf(groupingPro.getProId()));
-                    detail.setTjStatus(0L);
-                    detail.setCreateBy(sysUser.getNickName());
-                    detail.setCreateTime(new Date());
-                    detail.setUpdateBy(sysUser.getNickName());
-                    detail.setUpdateTime(new Date());
-                    detail.setCreateId(String.valueOf(sysUser.getUserId()));
-                    detail.setUpdateId(String.valueOf(sysUser.getUserId()));
-                    tjOrderDetailService.save(detail);
-                }
-                List<String> list = proList.stream().map(TjGroupingPro::getProId).collect(Collectors.toList());
-                List<TjProject> projectList = projectService.list(new LambdaQueryWrapper<TjProject>().in(TjProject::getProParentId, list));
-                for (TjProject project : projectList) {
-                    TjOrderDetail detail = new TjOrderDetail();
-                    detail.setOrderId(tjOrder.getOrderId());
-                    detail.setProId(project.getProId());
-                    detail.setTjStatus(0L);
-                    detail.setCreateBy(sysUser.getNickName());
-                    detail.setCreateTime(new Date());
-                    detail.setUpdateBy(sysUser.getNickName());
-                    detail.setUpdateTime(new Date());
-                    detail.setCreateId(String.valueOf(sysUser.getUserId()));
-                    detail.setUpdateId(String.valueOf(sysUser.getUserId()));
-                    //鑾峰彇璇ラ」鐩殑榛樿鍊艰祴鍊肩粰缁撴灉
-                    if (null != project.getProDefault()) {
-                        detail.setProResult(project.getProDefault());
-                    } else {
-                        detail.setProResult(null);
-                    }
-                    detail.setIsSampling(String.valueOf(project.getIsSampling()));
-
-                    tjOrderDetailService.save(detail);
-                }
-            }
-        }
+//        if (!b) {
+//            List<TjGroupingPro> proList = groupingProService.list(new LambdaQueryWrapper<TjGroupingPro>().eq(TjGroupingPro::getGroupingId, tjOrder.getGroupId()));
+//            if (null != proList && !proList.isEmpty()) {
+//                for (TjGroupingPro groupingPro : proList) {
+//                    TjOrderDetail detail = new TjOrderDetail();
+//                    TjProject tjProject = projectService.selectTjProjectByProId(Long.valueOf(groupingPro.getProId()));
+//                    detail.setIsSampling(String.valueOf(tjProject.getIsSampling()));
+//                    detail.setOrderId(tjOrder.getOrderId());
+//                    detail.setProId(Long.valueOf(groupingPro.getProId()));
+//                    detail.setTjStatus(0L);
+//                    detail.setCreateBy(sysUser.getNickName());
+//                    detail.setCreateTime(new Date());
+//                    detail.setUpdateBy(sysUser.getNickName());
+//                    detail.setUpdateTime(new Date());
+//                    detail.setCreateId(String.valueOf(sysUser.getUserId()));
+//                    detail.setUpdateId(String.valueOf(sysUser.getUserId()));
+//                    tjOrderDetailService.save(detail);
+//                }
+//                List<String> list = proList.stream().map(TjGroupingPro::getProId).collect(Collectors.toList());
+//                List<TjProject> projectList = projectService.list(new LambdaQueryWrapper<TjProject>().in(TjProject::getProParentId, list));
+//                for (TjProject project : projectList) {
+//                    TjOrderDetail detail = new TjOrderDetail();
+//                    detail.setOrderId(tjOrder.getOrderId());
+//                    detail.setProId(project.getProId());
+//                    detail.setTjStatus(0L);
+//                    detail.setCreateBy(sysUser.getNickName());
+//                    detail.setCreateTime(new Date());
+//                    detail.setUpdateBy(sysUser.getNickName());
+//                    detail.setUpdateTime(new Date());
+//                    detail.setCreateId(String.valueOf(sysUser.getUserId()));
+//                    detail.setUpdateId(String.valueOf(sysUser.getUserId()));
+//                    //鑾峰彇璇ラ」鐩殑榛樿鍊艰祴鍊肩粰缁撴灉
+//                    if (null != project.getProDefault()) {
+//                        detail.setProResult(project.getProDefault());
+//                    } else {
+//                        detail.setProResult(null);
+//                    }
+//                    detail.setIsSampling(String.valueOf(project.getIsSampling()));
+//
+//                    tjOrderDetailService.save(detail);
+//                }
+//            }
+//        }
 
         //娣诲姞remark琛ㄦ暟鎹�
         remarkService.saveTjOrderRemarkByOrderId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjOrder.getOrderId()));
@@ -2658,13 +2740,13 @@
             if (null != tjReservation && tjReservation.getPayType() == 1) {
                 tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()),
                         sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber()));
-                remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(),tjFlowingWater.getTjSerialNumber().toString());
+                remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString());
             }
         }
         if (tjFlowingWater.getPayStasus() == 1) {
             tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()),
                     sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber()));
-            remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(),tjFlowingWater.getTjSerialNumber().toString());
+            remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString());
         }
         if (tjFlowingWater.getDiscount() == null) {
             transitionService.updateTbTransitionPriceByCusId(tjCustomer.getCusIdcard(), new BigDecimal(10), tjOrder.getTjNumber());
@@ -2713,11 +2795,11 @@
     @Transactional
     @RepeatSubmit
     public AjaxResult heXiaoByIds(@RequestBody List<String> orderIds) {
-        if(null !=orderIds && !orderIds.isEmpty()){
-        Date date = new Date();
-        for (String orderId : orderIds) {
-            TjOrder byId = tjOrderService.getById(orderId);
-            if (null != byId) {
+        if (null != orderIds && !orderIds.isEmpty()) {
+            Date date = new Date();
+            for (String orderId : orderIds) {
+                TjOrder byId = tjOrderService.getById(orderId);
+                if (null != byId) {
 
                 /*if (byId.getReportTime() == null) {
                     LambdaQueryWrapper<TjReportTemplate> tjReportTemplateLambdaQueryWrapper = new LambdaQueryWrapper<>();
@@ -2756,15 +2838,15 @@
                         return AjaxResult.error("鐢熸垚鎶ュ憡寮傚父,鏍告敹澶辫触");
                     }
                 }*/
-                byId.setHeshouStatus(1);
-                byId.setHeshouDoctor(UserHoder.getLoginUser().getUserId());
-                byId.setHeshouTime(date);
-                final boolean b = tjOrderService.updateById(byId);
-                if (!b) {
-                    return AjaxResult.error("鏍告敹澶辫触");
+                    byId.setHeshouStatus(1);
+                    byId.setHeshouDoctor(UserHoder.getLoginUser().getUserId());
+                    byId.setHeshouTime(date);
+                    final boolean b = tjOrderService.updateById(byId);
+                    if (!b) {
+                        return AjaxResult.error("鏍告敹澶辫触");
+                    }
                 }
             }
-        }
         }
         return AjaxResult.success("鏍告敹鎴愬姛");
     }
@@ -2921,7 +3003,7 @@
             if (null != order.getFinishTime()) return AjaxResult.error("璇ヤ汉鍛樺凡绛剧,涓嶅彲鎾ら攢!!!");
 
             String s = configService.selectConfigByKey("is_request_common_his_api");
-            if (null != s && s.equals("Y") && "2".equals(order.getTjType())){
+            if (null != s && s.equals("Y") && "2".equals(order.getTjType())) {
                 String apiUrl = configService.selectConfigByKey("common_api_url");
                 String hospbm = configService.selectConfigByKey("common_api_service_hospbm");
 
@@ -2932,23 +3014,23 @@
                 wrapper1.orderByDesc(TjFlowingWater::getJxbz);
                 List<TjFlowingWater> list = tjFlowingWaterService.list(wrapper1);
                 LambdaQueryWrapper<TjCustomer> wrapper = new LambdaQueryWrapper<>();
-                wrapper.eq(TjCustomer::getCusId,order.getUserId());
+                wrapper.eq(TjCustomer::getCusId, order.getUserId());
                 TjCustomer tjCustomer = tjCustomerService.getOne(wrapper);
 
                 for (TjFlowingWater water : list) {
-                    if (water.getPayStasus() == 0L){
+                    if (water.getPayStasus() == 0L) {
                         weizhifu.add(water);
-                    }else {
+                    } else {
                         yizhifu.add(water);
                     }
                 }
 
-                AjaxResult error = zuofeiWeiZhifu(weizhifu, tjCustomer, apiUrl, hospbm, order,true,tjNum);
+                AjaxResult error = zuofeiWeiZhifu(weizhifu, tjCustomer, apiUrl, hospbm, order, true, tjNum);
                 if (error != null && !error.get("code").toString().equals("200")) return error;
 
-                AjaxResult error1 = zuofeiYiZhifu(yizhifu, tjCustomer, order, apiUrl, hospbm,false,tjNum);
+                AjaxResult error1 = zuofeiYiZhifu(yizhifu, tjCustomer, order, apiUrl, hospbm, false, tjNum);
                 if (error1 != null && !error.get("code").toString().equals("200")) return error1;
-            }else {
+            } else {
                 tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
                 tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId()));
                 remarkService.deletedOrderRemarkByTjNum(tjNum);
@@ -3275,26 +3357,26 @@
                 ArrayList<TjFlowingWater> yizhifu = new ArrayList<>();
                 for (String bldh : dto.getBldhs()) {
                     LambdaQueryWrapper<TjFlowingWater> wrapper = new LambdaQueryWrapper<>();
-                    wrapper.eq(TjFlowingWater::getJxbz,bldh);
+                    wrapper.eq(TjFlowingWater::getJxbz, bldh);
                     TjFlowingWater water = tjFlowingWaterService.getOne(wrapper);
-                    if (water.getPayStasus() == 0L){
+                    if (water.getPayStasus() == 0L) {
                         weizhifu.add(water);
-                    }else {
+                    } else {
                         yizhifu.add(water);
                     }
                 }
                 String apiUrl = configService.selectConfigByKey("common_api_url");
                 String hospbm = configService.selectConfigByKey("common_api_service_hospbm");
                 LambdaQueryWrapper<TjCustomer> wrapper = new LambdaQueryWrapper<>();
-                wrapper.eq(TjCustomer::getCusId,order.getUserId());
+                wrapper.eq(TjCustomer::getCusId, order.getUserId());
                 TjCustomer tjCustomer = tjCustomerService.getOne(wrapper);
-                AjaxResult error = zuofeiWeiZhifu(weizhifu, tjCustomer, apiUrl, hospbm, order,true,dto.getTjh());
+                AjaxResult error = zuofeiWeiZhifu(weizhifu, tjCustomer, apiUrl, hospbm, order, true, dto.getTjh());
                 if (error != null && !error.get("code").toString().equals("200")) return error;
 
-                AjaxResult error1 = zuofeiYiZhifu(yizhifu, tjCustomer, order, apiUrl, hospbm,false,dto.getTjh());
+                AjaxResult error1 = zuofeiYiZhifu(yizhifu, tjCustomer, order, apiUrl, hospbm, false, dto.getTjh());
                 if (error1 != null && !error.get("code").toString().equals("200")) return error1;
                 return AjaxResult.success();
-            }else {
+            } else {
                 try {
                     extracted(dto, order);
                 } catch (Exception e) {
@@ -3307,56 +3389,56 @@
         return AjaxResult.error();
     }
 
-    private AjaxResult zuofeiYiZhifu(ArrayList<TjFlowingWater> yizhifu, TjCustomer tjCustomer, TjOrder order, String apiUrl, String hospbm,Boolean isDelete,String tjNum) {
-        if (!yizhifu.isEmpty()){
+    private AjaxResult zuofeiYiZhifu(ArrayList<TjFlowingWater> yizhifu, TjCustomer tjCustomer, TjOrder order, String apiUrl, String hospbm, Boolean isDelete, String tjNum) {
+        if (!yizhifu.isEmpty()) {
             for (TjFlowingWater water : yizhifu) {
                 HashMap<String, Object> map = new HashMap<>();
                 map.put("pationId", tjCustomer.getPationId());
                 map.put("cardId", tjCustomer.getHisJzkh());
                 map.put("tjNum", water.getTjSerialNumber());
-                map.put("kaiDanKs","7805");
+                map.put("kaiDanKs", "7805");
                 // 鏀惰垂鏍囧織 1寰呮敹璐� 2寰呴��璐�
-                map.put("shouTuiStatus","2");
+                map.put("shouTuiStatus", "2");
                 JSONArray array = JSONUtil.createArray();
                 String bldh = water.getJxbz();
                 List<TbTransition> list;
-                if (bldh != null){
+                if (bldh != null) {
                     LambdaQueryWrapper<TbTransition> wrapper1 = new LambdaQueryWrapper<>();
-                    wrapper1.eq(TbTransition::getJxbz,bldh);
-                    wrapper1.gt(TbTransition::getOrdPrice,0);
+                    wrapper1.eq(TbTransition::getJxbz, bldh);
+                    wrapper1.gt(TbTransition::getOrdPrice, 0);
                     list = tbTransitionService.list(wrapper1);
-                }else {
+                } else {
                     LambdaQueryWrapper<TbTransition> wrapper1 = new LambdaQueryWrapper<>();
                     wrapper1.isNull(TbTransition::getJxbz);
-                    wrapper1.eq(TbTransition::getTjNum,tjNum);
-                    wrapper1.gt(TbTransition::getOrdPrice,0);
+                    wrapper1.eq(TbTransition::getTjNum, tjNum);
+                    wrapper1.gt(TbTransition::getOrdPrice, 0);
                     list = tbTransitionService.list(wrapper1);
                 }
                 for (TbTransition transition : list) {
                     LambdaQueryWrapper<TjProject> queryWrapper = new LambdaQueryWrapper<>();
-                    queryWrapper.eq(TjProject::getProId,transition.getProId());
+                    queryWrapper.eq(TjProject::getProId, transition.getProId());
                     TjProject project = projectService.getOne(queryWrapper);
                     LambdaQueryWrapper<TjFlowingWaterHis> wrapper2 = new LambdaQueryWrapper<>();
-                    wrapper2.eq(TjFlowingWaterHis::getParentId,water.getHisWaterId());
-                    wrapper2.eq(TjFlowingWaterHis::getXmId,project.getHisXmbm());
+                    wrapper2.eq(TjFlowingWaterHis::getParentId, water.getHisWaterId());
+                    wrapper2.eq(TjFlowingWaterHis::getXmId, project.getHisXmbm());
                     List<TjFlowingWaterHis> list1 = tjFlowingWaterHisService.list(wrapper2);
                     for (TjFlowingWaterHis waterHis : list1) {
                         LambdaQueryWrapper<SysDept> wrapper = new LambdaQueryWrapper<>();
-                        wrapper.eq(SysDept::getDeptId,project.getDeptId());
+                        wrapper.eq(SysDept::getDeptId, project.getDeptId());
                         SysDept dept = sysDeptService.getOne(wrapper);
                         JSONObject obj = JSONUtil.createObj();
                         BigDecimal danjia = transition.getOrdPrice();
                         Integer sl = project.getSl();
                         BigDecimal allPrice = danjia.multiply(new BigDecimal(sl));
-                        obj.putOpt("danJia",danjia);
-                        obj.putOpt("jieSuanJe",allPrice.negate());
-                        obj.putOpt("shuliang",Math.negateExact(sl));
-                        obj.putOpt("feiYongMxId",waterHis.getCurrentId());
-                        obj.putOpt("feiYongId",water.getHisWaterId());
-                        obj.putOpt("zhiXingKs",dept.getDeptId());
-                        obj.putOpt("zhiXingKsMc",dept.getDeptName());
-                        obj.putOpt("shouFeiXmId",project.getHisXmbm());
-                        obj.putOpt("shouFeiXmMc",project.getHisXmmc());
+                        obj.putOpt("danJia", danjia);
+                        obj.putOpt("jieSuanJe", allPrice.negate());
+                        obj.putOpt("shuliang", Math.negateExact(sl));
+                        obj.putOpt("feiYongMxId", waterHis.getCurrentId());
+                        obj.putOpt("feiYongId", water.getHisWaterId());
+                        obj.putOpt("zhiXingKs", dept.getDeptId());
+                        obj.putOpt("zhiXingKsMc", dept.getDeptName());
+                        obj.putOpt("shouFeiXmId", project.getHisXmbm());
+                        obj.putOpt("shouFeiXmMc", project.getHisXmmc());
 
 //                    obj.putOpt("zhiXingKs","7805");
 //                    obj.putOpt("zhiXingKsMc","浣撴绉�");
@@ -3366,10 +3448,10 @@
                     }
 
                 }
-                map.put("feiYongInfoList",array);
-                log.info("閫�璐圭敵璇� 鍏ュ弬 -> {}",JSONUtil.toJsonStr(map));
-                String post = HttpClientUtils.sendPost(apiUrl + "/api/his/"+ hospbm +"/creatCostInfo", map);
-                log.info("閫�璐圭敵璇� 杩斿洖 -> {}",JSONUtil.toJsonStr(post));
+                map.put("feiYongInfoList", array);
+                log.info("閫�璐圭敵璇� 鍏ュ弬 -> {}", JSONUtil.toJsonStr(map));
+                String post = HttpClientUtils.sendPost(apiUrl + "/api/his/" + hospbm + "/creatCostInfo", map);
+                log.info("閫�璐圭敵璇� 杩斿洖 -> {}", JSONUtil.toJsonStr(post));
                 JSONObject jsonObject = JSONUtil.parseObj(post);
                 if (jsonObject.getStr("code").equals("200")) {
                     // hisTfWaterId
@@ -3387,33 +3469,33 @@
                             tjSamplingMapper.deleteByTjNumAndCusIdAndJxbzo(tjNum, order.getUserId(), bldh1);
                         }
                     }
-                }else return AjaxResult.error();
+                } else return AjaxResult.error();
             }
         }
         return null;
     }
 
-    private AjaxResult zuofeiWeiZhifu(ArrayList<TjFlowingWater> weizhifu, TjCustomer tjCustomer, String apiUrl, String hospbm, TjOrder order,Boolean isDelete,String tjNum) {
-        if (!weizhifu.isEmpty()){
+    private AjaxResult zuofeiWeiZhifu(ArrayList<TjFlowingWater> weizhifu, TjCustomer tjCustomer, String apiUrl, String hospbm, TjOrder order, Boolean isDelete, String tjNum) {
+        if (!weizhifu.isEmpty()) {
             HashMap<String, Object> chexiaoMap = new HashMap<>();
             chexiaoMap.put("pationId", tjCustomer.getPationId());
             chexiaoMap.put("cardId", tjCustomer.getHisJzkh());
             String feiyongList = weizhifu.stream().map(TjFlowingWater::getHisWaterId).collect(Collectors.joining(","));
-            chexiaoMap.put("feiYongIdList",feiyongList.trim().replaceAll(" ",""));
+            chexiaoMap.put("feiYongIdList", feiyongList.trim().replaceAll(" ", ""));
 
-            String post = HttpClientUtils.sendPost(apiUrl + "/api/his/"+ hospbm +"/revokeCost", chexiaoMap);
+            String post = HttpClientUtils.sendPost(apiUrl + "/api/his/" + hospbm + "/revokeCost", chexiaoMap);
             if (JSONUtil.parseObj(post).getStr("code").equals("200")) {
                 if (isDelete) {
                     for (TjFlowingWater water : weizhifu) {
                         String bldh = water.getJxbz();
-                        if(StrUtil.isNotBlank(bldh)){
+                        if (StrUtil.isNotBlank(bldh)) {
                             remarkService.deleteTjOrderDetailByjxbz(bldh);
                             tjOrderDetailService.deleteTjOrderDetailByjxbz(bldh);
                             tjFlowingWaterService.deleteTjOrderDetailByjxbz(bldh);
                             transitionService.deleteTjOrderDetailByjxbz(bldh);
                             blService.remove(new LambdaQueryWrapper<TjProBl>().eq(TjProBl::getTjh, tjNum).eq(TjProBl::getBldh, bldh));
                             tjSamplingMapper.deleteByTjNumAndCusIdAndJxbzo(tjNum, order.getUserId(), bldh);
-                        }else {
+                        } else {
                             //杩欓噷鍒犻櫎鐨勬槸杩欎釜浜烘墍鏈夐」鐩寘鎷ˉ褰曢」鐩�
                             tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
                             tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId()));
@@ -3477,10 +3559,10 @@
     @Transactional
     public AjaxResult zongjanyemianshjianzhou(@RequestBody List<String> tjNUms) {
 
-        if(null !=tjNUms && !tjNUms.isEmpty()){
-            List<Map<String,Object>> list=new ArrayList<>();
+        if (null != tjNUms && !tjNUms.isEmpty()) {
+            List<Map<String, Object>> list = new ArrayList<>();
             for (String tjNUm : tjNUms) {
-                Map<String,Object> map=new HashMap<>();
+                Map<String, Object> map = new HashMap<>();
                 TjOrder order = tjOrderService.getOrderByTjNum(tjNUm);
                 if (null != order) {
                     int czwj = remarkService.panduaniscunzaiweijian(tjNUm);
@@ -3489,45 +3571,44 @@
                     Date reportTime = order.getReportTime();
                     Integer heshouStatus = order.getHeshouStatus();
                     Date lastTime = order.getPrintLastTime();
-                    int a=0;
+                    int a = 0;
                     if (czwj == 0) {
                         //鏈
-                        a=0;
+                        a = 0;
                     }
                     if (czwj > 0) {
                         //鍦ㄦ
-                        a=1;
+                        a = 1;
                     }
                     if (sfwc == 0) {
                         //宸插畬鎴�
-                        a=2;
+                        a = 2;
                     }
                     if (null != checkTime) {
                         //宸插鏍�
-                        a=3;
+                        a = 3;
                     }
                     if (null != reportTime) {
                         //鐢熸垚鎶ュ憡
-                        a=4;
+                        a = 4;
                     }
-                    if (heshouStatus==1) {
+                    if (heshouStatus == 1) {
                         //鎶ュ憡鏍告敹
-                        a=5;
+                        a = 5;
                     }
                     if (null != lastTime) {
                         //宸插嚭鎶ュ憡
-                        a=6;
+                        a = 6;
                     }
-                    map.put("tjNUm",tjNUm);
-                    map.put("sjz",a);
+                    map.put("tjNUm", tjNUm);
+                    map.put("sjz", a);
                     list.add(map);
+                }
             }
-        }
             return AjaxResult.success(list);
         }
         return AjaxResult.error();
     }
-
 
 
     @PostMapping("/heshouchexiao")
@@ -3535,7 +3616,7 @@
     @Transactional
     public AjaxResult heshouchexiao(@RequestBody List<String> tjNUms) {
 
-        if(null !=tjNUms && !tjNUms.isEmpty()){
+        if (null != tjNUms && !tjNUms.isEmpty()) {
 
             // 涓嶅湪浣跨敤閫昏緫鍒犻櫎 閫昏緫鍒犻櫎瀵艰嚧鎵撳嵃鎶ュ憡鐢熸垚 鏌ヨsql缂撴參
             //閫昏緫鍒犻櫎鏁版嵁搴撻噷鐨勬姤鍛�
@@ -3546,7 +3627,7 @@
             List<Long> list = tjReportService.list(wq1).stream().map(TjReport::getReId).collect(Collectors.toList());
             for (String tjNUm : tjNUms) {
                 TjOrder order = tjOrderService.getOrderByTjNum(tjNUm);
-                if(null !=order){
+                if (null != order) {
                     order.setHeshouStatus(0);
                     order.setHeshouTime(null);
                     order.setHeshouDoctor(null);
@@ -3569,5 +3650,71 @@
     }
 
 
+    @GetMapping("/qiandaodengjitianjiaxiangmubydanweifenzu")
+    @ApiOperation(value = "绛惧埌鐧昏鏍规嵁鍗曚綅鍒嗙粍鑾峰彇浣撴椤圭洰")
+    @Transactional
+    public AjaxResult qiandaodengjitianjiaxiangmubydanweifenzu(@RequestParam String cusIdcard, @RequestParam String groupingId) {
+        try {
+            transitionService.saveTemoTransitionByGroupingId(cusIdcard, groupingId);
+            return AjaxResult.success("鎿嶄綔鎴愬姛!");
+        } catch (Exception e) {
+            e.printStackTrace();
+            return AjaxResult.error();
+        }
+    }
+
+    @PostMapping("/ttaddtTransition")
+    @ApiOperation(value = "鍥綋娣诲姞杩囨浮琛ㄦ暟鎹�")
+    @Transactional
+    public AjaxResult ttaddtTransition(@RequestBody Map<String, Object> map) {
+        Object packId = map.get("pacId");
+        if (null == map.get("cusId")) return AjaxResult.error("璇烽�夋嫨浣撴浜�");
+        String cusId = map.get("cusId").toString();
+        Object proIds1 = map.get("proIds");
+        List<Long> proIds = null;
+        if (null != proIds1 && !proIds1.equals("")) {
+            proIds = JSON.parseArray(proIds1.toString(), Long.class);
+        }
+        TjCustomer tjCustomer = tjCustomerService.getTjCustomerByCusIdCard(cusId);
+        String cardId = "0";
+        if (null != tjCustomer) {
+            cardId = tjCustomer.getCardId();
+        }
+        if ((null == proIds || proIds.isEmpty()) && (null == packId || packId.equals(""))) {
+            transitionService.deletedTbTransitionByCusId(cusId);
+        }
+        /*濂楅*/
+        if (null != packId && !packId.equals("")) {
+            Long pacId = Long.valueOf(packId.toString());
+            List<TbTransition> list = transitionService.getTbTransitionListByCusIdAndPac(cusId, String.valueOf(pacId));
+            if (null == list || list.isEmpty()) {
+                transitionService.deletedTbTransitionListByCusIdAndPac(cusId, cardId);
+                String string = transitionService.ttpanduantaocanshifouchongfu(cusId, pacId);
+                if (!StringUtils.isBlank(string)) {
+                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                    return AjaxResult.error("鎿嶄綔澶辫触! 浠ヤ笅椤圭洰宸插瓨鍦�: " + string);
+                }
+                transitionService.ttsaveTemoTransitionByGroupingId(cusId, cardId, pacId.toString());
+
+            }
+        }
+
+        //鍗曢」
+        if (null != proIds && !proIds.isEmpty()) {
+            //寮傛淇濆瓨鏁版嵁搴撹〃
+            for (Long proId : proIds) {
+                TjProject project = projectService.selectTjProjectByProId(proId);
+                if (null != project) {
+                    List<TbTransition> transitionList = transitionService.getTbTransitionListByCusIdAndPacIdAndProId(cusId, String.valueOf(proId));
+                    if (null == transitionList || transitionList.isEmpty()) {
+                        transitionService.saveRedisTransitionByProId(cusId, cardId, proId);
+                    }
+                }
+            }
+        }
+        return AjaxResult.success();
+    }
+
+
 }
 
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TbTransitionMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TbTransitionMapper.java
index 9312fb3..e30df00 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TbTransitionMapper.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TbTransitionMapper.java
@@ -217,6 +217,44 @@
     boolean saveTemoTransitionByGroupingId(@Param("cusId")String cusId,@Param("groupingId")String groupingId);
 
 
+    @Insert("INSERT INTO tb_transition(\n" +
+            "   cus_id,\n" +
+            "   pac_id,\n" +
+            "   pac_name,\n" +
+            "   pro_id,\n" +
+            "   pro_name,\n" +
+            "   parent_pro_id,\n" +
+            "   parent_pro_name,\n" +
+            "   ord_price,\n" +
+            "   now_price,\n" +
+            "   create_time,\n" +
+            "   pro_check_method,\n" +
+            "   pro_type,\n" +
+            "   card_id\n" +
+            ")\n" +
+            "SELECT\n" +
+            "#{cusId},\n" +
+            "#{groupingId},\n" +
+            "d.grouping_name,\n" +
+            "c.pro_id,\n" +
+            "c.pro_name,\n" +
+            "b.pro_id,\n" +
+            "b.pro_name,\n" +
+            "c.pro_price * (a.limits/10),\n" +
+            "c.pro_price * (a.limits/10),\n" +
+            "SYSDATE(),\n" +
+            "c.pro_check_method,\n" +
+            "c.pro_type,\n" +
+            "\t#{cardId}\n" +
+            "FROM\n" +
+            "\ttj_grouping_pro a \n" +
+            "JOIN tj_dw_grouping d ON d.id=a.grouping_id \n" +
+            "\tLEFT JOIN tj_project b ON a.pro_id = b.pro_id \n" +
+            "\tLEFT JOIN tj_project c ON c.pro_parent_id=b.pro_id\n" +
+            "WHERE 1=1 AND a.grouping_id =#{groupingId} and c.deleted=0 ")
+    boolean ttsaveTemoTransitionByGroupingId(@Param("cusId")String cusId,@Param("cardId") String cardId,@Param("groupingId") String groupingId);
+
+
 //    @Select("SELECT b.price_now FROM \n" +
 //            "(SELECT a.pac_id FROM tb_transition a  WHERE\n" +
 //            "\ta.cus_id = #{cusId} \n" +
@@ -289,4 +327,12 @@
             "WHERE b.pro_id IN(SELECT DISTINCT a.parent_pro_id FROM tb_transition a WHERE a.cus_id=#{idCard} AND ISNULL(a.tj_num))" +
             "AND b.pac_id=#{pacId}")
     String panduantaocanshifouchongfu(@Param("idCard") String idCard,@Param("pacId") Long pacId);
+
+
+
+    @Select("SELECT GROUP_CONCAT(c.pro_name SEPARATOR ' ; ' ) FROM tj_grouping_pro b JOIN tj_project c ON c.pro_id=b.pro_id\n" +
+            "\n" +
+            "WHERE b.pro_id IN(SELECT DISTINCT a.parent_pro_id FROM tb_transition a WHERE a.cus_id=#{idCard} AND ISNULL(a.tj_num))" +
+            "AND b.grouping_id=#{pacId}")
+    String ttpanduantaocanshifouchongfu(@Param("idCard") String idCard,@Param("pacId") Long pacId);
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjCustomerMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjCustomerMapper.java
index 9fb4ea8..e8a7e94 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjCustomerMapper.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjCustomerMapper.java
@@ -2,6 +2,7 @@
 
 import java.sql.ResultSet;
 import java.util.List;
+import java.util.Map;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ltkj.hosp.domain.TjCustomer;
@@ -87,4 +88,20 @@
 
     @Update("update tj_customer set card_id=#{cardId} where cus_id=#{cusId}")
     void  updateCardId(@Param("cusId") Long cusId,@Param("cardId") String cardId);
+
+
+//    @Select({"<script> select  * from  v_customer where 1=1 "+
+//            " <when test='name !=null'>" +
+//            "  AND xm like '%'+#{name}+'%'" +
+//            "</when>" +
+//            " <when test='sjh !=null'>" +
+//            "  AND sjh like '%'+#{sjh}+'%' " +
+//            "</when>" +
+//            " <when test='sfzh !=null'>" +
+//            "  AND sfzh = #{sfzh}" +
+//            "</when>" +
+//            "</script>"})
+    List<Map<String, Object>> vcustomerlist(@Param("name")String name, @Param("sjh")String sjh, @Param("sfzh") String sfzh);
+
+    List<TjCustomer> getcusList(TjCustomer tjCustomer);
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjDwGroupingMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjDwGroupingMapper.java
index 9eb718c..4a5bd61 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjDwGroupingMapper.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjDwGroupingMapper.java
@@ -4,6 +4,7 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ltkj.hosp.domain.TjDwGrouping;
+import com.ltkj.hosp.domain.TjPackage;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
@@ -103,4 +104,10 @@
             "            GROUP BY\n" +
             "            b.sex)b")
     public int selectTjDwGroupingByDwId(String dwId);
+
+
+
+    @Select("SELECT a.id pac_id,grouping_name pac_name,a.price price , GROUP_CONCAT(b.pro_name ORDER BY b.pro_name) allProName FROM   tj_dw_grouping a  JOIN tj_grouping_pro b ON b.grouping_id=a.id \n" +
+            "WHERE a.dw_id=#{dwId} AND a.sex=#{sex} GROUP BY b.grouping_id")
+    List<TjPackage> huoqutuantitaocanxiangmu(@Param("dwId") String dwId,@Param("sex") Long sex);
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITbTransitionService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITbTransitionService.java
index f3b1786..d48618c 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITbTransitionService.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITbTransitionService.java
@@ -117,6 +117,8 @@
 
     boolean saveTemoTransitionByGroupingId(String cusId,String groupingId);
 
+    boolean ttsaveTemoTransitionByGroupingId(String cusId, String cardId,String groupingId);
+
     BigDecimal getTbTransitionPriceAndOrdPrice(String cusId,Long proId);
 
     BigDecimal getTbTransitionDxPriceAndOrdPrice(String cusId,Long proId);
@@ -131,4 +133,6 @@
     void deleteTjOrderDetailByjxbz(String bldh);
 
     String panduantaocanshifouchongfu(String idCard,Long pacId);
+
+    String ttpanduantaocanshifouchongfu(String idCard,Long pacId);
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjCustomerService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjCustomerService.java
index 115a3b1..4f17f35 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjCustomerService.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjCustomerService.java
@@ -2,6 +2,7 @@
 
 import java.sql.ResultSet;
 import java.util.List;
+import java.util.Map;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ltkj.hosp.domain.TjCustomer;
@@ -70,4 +71,8 @@
     String getCompNameByCusId(String cusId);
 
     void  updateCardId(Long cusId,String cardId);
+
+    List<Map<String, Object>> vcustomerlist(String name, String sjh, String sfzh);
+
+    List<TjCustomer> getcusList(TjCustomer tjCustomer);
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjDwGroupingService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjDwGroupingService.java
index 2bcd246..6514682 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjDwGroupingService.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjDwGroupingService.java
@@ -4,6 +4,7 @@
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ltkj.hosp.domain.TjDwGrouping;
+import com.ltkj.hosp.domain.TjPackage;
 
 /**
  * 浣撴鍗曚綅鍒嗙粍Service鎺ュ彛
@@ -66,4 +67,6 @@
 
     public int selectTjDwGroupingByDwDeptId(String dwDeptId);
     public int selectTjDwGroupingByDwId(String dwId);
+
+    List<TjPackage> huoqutuantitaocanxiangmu(String dwId, Long sex);
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TbTransitionServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TbTransitionServiceImpl.java
index a985920..8337654 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TbTransitionServiceImpl.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TbTransitionServiceImpl.java
@@ -184,6 +184,11 @@
     }
 
     @Override
+    public boolean ttsaveTemoTransitionByGroupingId(String cusId, String cardId, String groupingId) {
+        return tbTransitionMapper.ttsaveTemoTransitionByGroupingId(cusId,cardId,groupingId);
+    }
+
+    @Override
     public BigDecimal getTbTransitionPriceAndOrdPrice(String cusId, Long proId) {
         return tbTransitionMapper.getTbTransitionPriceAndOrdPrice(cusId,proId);
     }
@@ -217,4 +222,9 @@
     public String panduantaocanshifouchongfu(String idCard,Long pacId) {
         return tbTransitionMapper.panduantaocanshifouchongfu(idCard,pacId);
     }
+
+    @Override
+    public String ttpanduantaocanshifouchongfu(String idCard,Long pacId) {
+        return tbTransitionMapper.ttpanduantaocanshifouchongfu(idCard,pacId);
+    }
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjCustomerServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjCustomerServiceImpl.java
index 5c8a923..a352801 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjCustomerServiceImpl.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjCustomerServiceImpl.java
@@ -1,7 +1,9 @@
 package com.ltkj.hosp.service.impl;
 
 import java.sql.ResultSet;
+import java.util.Collections;
 import java.util.List;
+import java.util.Map;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ltkj.common.utils.DateUtils;
@@ -116,4 +118,14 @@
     public void updateCardId(Long cusId, String cardId) {
          tjCustomerMapper.updateCardId(cusId,cardId);
     }
+
+    @Override
+    public List<Map<String, Object>> vcustomerlist(String name, String sjh, String sfzh) {
+        return tjCustomerMapper.vcustomerlist(name,sjh,sfzh);
+    }
+
+    @Override
+    public List<TjCustomer> getcusList(TjCustomer tjCustomer) {
+        return tjCustomerMapper.getcusList(tjCustomer);
+    }
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjDwGroupingServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjDwGroupingServiceImpl.java
index 67de622..1402cfb 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjDwGroupingServiceImpl.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjDwGroupingServiceImpl.java
@@ -1,10 +1,12 @@
 package com.ltkj.hosp.service.impl;
 
+import java.util.Collections;
 import java.util.List;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ltkj.common.utils.DateUtils;
 import com.ltkj.hosp.domain.TjDwDept;
+import com.ltkj.hosp.domain.TjPackage;
 import com.ltkj.hosp.mapper.TjDwDeptMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -104,4 +106,9 @@
     public int selectTjDwGroupingByDwId(String dwId) {
         return tjDwGroupingMapper.selectTjDwGroupingByDwId(dwId);
     }
+
+    @Override
+    public List<TjPackage> huoqutuantitaocanxiangmu(String dwId, Long sex) {
+        return tjDwGroupingMapper.huoqutuantitaocanxiangmu(dwId,sex);
+    }
 }
diff --git a/ltkj-hosp/src/main/resources/mapper/TjCustomerMapper.xml b/ltkj-hosp/src/main/resources/mapper/TjCustomerMapper.xml
index 59c1c3f..36ae58d 100644
--- a/ltkj-hosp/src/main/resources/mapper/TjCustomerMapper.xml
+++ b/ltkj-hosp/src/main/resources/mapper/TjCustomerMapper.xml
@@ -216,4 +216,39 @@
             #{cusId}
         </foreach>
     </delete>
+
+    <select id="vcustomerlist" parameterType="string" resultType="map">
+        select  * from  v_customer
+        <where>
+            <if test="name != null  and name != ''">and xm like concat('%', #{name}, '%')</if>
+            <if test="sjh != null  and sjh != ''">and lxdh like concat('%', #{sjh}, '%')</if>
+            <if test="sfzh != null  and sfzh != ''">and sfzh like concat('%', #{sfzh}, '%')</if>
+        </where>
+    </select>
+
+
+    <select id="getcusList" parameterType="TjCustomer" resultMap="TjCustomerResult">
+        <include refid="selectTjCustomerVo"/>
+        <where>
+            <if test="cusName != null  and cusName != ''">and cus_name like concat('%', #{cusName}, '%')</if>
+            <if test="cusSex != null ">and cus_sex = #{cusSex}</if>
+            <if test="cusBrithday != null ">and cus_brithday = #{cusBrithday}</if>
+            <if test="cusAddr != null  and cusAddr != ''">and cus_addr = #{cusAddr}</if>
+            <if test="addr != null  and addr != ''">and addr = #{addr}</if>
+            <if test="cusPhone != null  and cusPhone != ''">and cus_phone = #{cusPhone}</if>
+            <if test="cusPostcode != null  and cusPostcode != ''">and cus_postCode = #{cusPostcode}</if>
+            <if test="cusEmail != null  and cusEmail != ''">and cus_email = #{cusEmail}</if>
+            <if test="indexCard != null  and indexCard != ''">and index_card = #{indexCard}</if>
+            <if test="cusNational != null  and cusNational != ''">and cus_national = #{cusNational}</if>
+            <if test="cusMarryStatus != null  and cusMarryStatus != ''">and cus_marry_status = #{cusMarryStatus}</if>
+            <if test="cusIdcard != null  and cusIdcard != ''">and cus_idcard = #{cusIdcard}</if>
+            <if test="cusIntroduce != null  and cusIntroduce != ''">and cus_introduce = #{cusIntroduce}</if>
+            <if test="cusNumber != null ">and cus_number = #{cusNumber}</if>
+            <if test="cusIsvip != null  and cusIsvip != ''">and cus_isvip = #{cusIsvip}</if>
+            <if test="pym != null  and pym != ''">and pym = #{pym}</if>
+            <if test="dictCompId != null  and dictCompId != ''">and dict_comp_id = #{dictCompId}</if>
+            <if test="compName != null  and compName != ''">and comp_name = #{compName}</if>
+            and deleted =0
+        </where>
+    </select>
 </mapper>

--
Gitblit v1.8.0