From 73a816fd2b1e29c25d615c85ce34b12b55c16ccf Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期一, 20 一月 2025 13:41:45 +0800
Subject: [PATCH] zjh20250120

---
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjRulesService.java                      |    2 
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjRulesServiceImpl.java              |    4 
 ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java                |    3 
 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProAdvicerulesMapper.java                |   72 ++++
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITbTransitionService.java                 |    2 
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjGroupingProService.java                |    4 
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProAdvicerulesController.java |  151 +++++++++
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java          |    8 
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java          |   16 
 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjRulesMapper.java                         |    6 
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProAdvicerulesService.java             |   65 ++++
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjGroupingProServiceImpl.java        |   11 
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TbTransitionServiceImpl.java         |    5 
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProAdvicerulesServiceImpl.java     |   98 ++++++
 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TbTransitionMapper.java                    |    9 
 ltkj-common/src/main/java/com/ltkj/common/excelConfig/ExcelUtils.java                   |    2 
 ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjOrderDetail.java                         |    3 
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysConfigController.java        |    3 
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjAdviceController.java         |    4 
 ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java                    |   72 +---
 ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjProAdvicerules.java                      |  161 ++++++++++
 ltkj-hosp/src/main/resources/mapper/hosp/TjProAdvicerulesMapper.xml                     |  241 +++++++++++++++
 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjGroupingProMapper.java                   |   10 
 ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjOrderRemark.java                         |    6 
 24 files changed, 897 insertions(+), 61 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java b/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java
index 9689b22..0761070 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java
@@ -134,7 +134,8 @@
                                                 String[] split = jcsqd.getJgzt().split("銆�");
                                                 for (String jg : split) {
                                                     if(StringUtil.isNotBlank(jg) && !jg.contains("鏈寮傚父")
-                                                            && !jg.contains("鏈鏄庢樉寮傚父") && !jg.contains("鏈鍗犱綅") && !jg.contains("鏈鏄庢樉")){
+                                                            && !jg.contains("鏈鏄庢樉寮傚父") && !jg.contains("鏈鍗犱綅")
+                                                            && !jg.contains("鏈鏄庢樉")&& !jg.contains("姝e父")&& !jg.contains("鍙屼晶妞庨棿瀛旀棤鐙獎")){
                                                         TjJcycxm jcycxm=new TjJcycxm();
                                                         jcycxm.setTjh(s);
                                                         jcycxm.setYqid(yqbm);
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java
index c27e0f3..87d4ea3 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java
@@ -113,6 +113,8 @@
     private TjOrderDetailMapper tjOrderDetailMapper;
     @Autowired
     private SysDeptController sysDeptController;
+    @Autowired
+    private ITjProAdvicerulesService tjProAdvicerulesService;
 
     private Integer pdfPage = 0;
 
@@ -507,7 +509,7 @@
 //
 //                        }
                     String str = "    ";
-                        List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(i.get(5),"",i.get(2),tjOrder.getTjNumber());
+                        List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(i.get(5),"",i.get(2),tjOrder.getTjNumber(),i.get(5),"");
                         if (!maps.isEmpty()){
                             for (Map<String, Object> objectMap : maps) {
 //                                paragraph = new Paragraph(str+"寤鸿鏍囬",defaultFont);
@@ -587,7 +589,7 @@
                 paragraph.setAlignment(Element.ALIGN_LEFT);
                 document2.add(paragraph);
                 String str = "     ";
-                List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"","",tjOrder.getTjNumber());
+                List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"","",tjOrder.getTjNumber(),detail.getProName(),"");
                 for (Map<String, Object> objectMap : maps) {
                     String content1 = str+objectMap.get("bt").toString()+objectMap.get("nr").toString();
                     if (StrUtil.isBlank(content1)) content1 = "     鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�";
@@ -1085,52 +1087,16 @@
             }
         }
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
         paragraph = PdfUtils.setParagraph(defaultFont, "");
         paragraph.setLeading(0f);
         paragraph.setSpacingBefore(10f);
         paragraph.setSpacingAfter(10f);
         document2.add(paragraph);
-
-
-
-
-
-
         paragraph = PdfUtils.setParagraph(defaultTitleFont, "鍖荤敓寤鸿锛�");
         paragraph.setSpacingBefore(3f);
         paragraph.setSpacingAfter(2f);
         document2.add(paragraph);
         xmXh = 0;
-
         for (Map.Entry<String, List<CsProVo>> deptEntry : listMap.entrySet()) {
             List<CsProVo> proVos = deptEntry.getValue();
             if (proVos.size() > 1) {
@@ -1189,14 +1155,19 @@
                             document2.add(paragraph);
                         }
                         String str = "     ";
-                        List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"","",tjOrder.getTjNumber());
+                        List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(entry.getKey().toString(),"",
+                                detail.getYcbz(),tjOrder.getTjNumber(),detail.getProName().replaceAll("\\锛圼^\\锛塢*\\锛�", "")
+                                        .replaceAll("[ 娴嬪畾]",""),detail.getProResult());
                         if(detail.getDeptId().equals("2")){
                             String[] split = result.split("銆�");
                             for (String s : split) {
-                                Map<String,Object> mapss= tjRulesService.getyichangxiangmujianyiguizeJianCha(s);
-                                Object bt = mapss.get("bt");
-                                Object nr = mapss.get("nr");
-                                if(null !=bt && null !=nr) maps.add(mapss);
+//                                Map<String,Object> mapss= tjRulesService.getyichangxiangmujianyiguizeJianCha(s);
+                                Map<String,Object> mapss= tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(detail.getKs(),s,"0");
+                                if(null !=mapss){
+                                    Object bt = mapss.get("bt");
+                                    Object nr = mapss.get("nr");
+                                    if(null !=bt && null !=nr) maps.add(mapss);
+                                }
                             }
                         }
                         List<Map<String, Object>> collect1 = maps.stream().distinct().collect(Collectors.toList());
@@ -1252,7 +1223,9 @@
 //
 //                        }
                             String str = "    ";
-                            List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(i.get(5),"",i.get(2),tjOrder.getTjNumber());
+                            List<Map<String, Object>> maps = tjRulesService.getyichangxiangmujianyiguize(i.get(5),"",
+                                    i.get(2),tjOrder.getTjNumber(),i.get(0).replaceAll("\\锛圼^\\锛塢*\\锛�", "")
+                                            .replaceAll("[ 娴嬪畾]",""),i.get(1));
                             if (!maps.isEmpty()){
                                 for (Map<String, Object> objectMap : maps) {
 //                                paragraph = new Paragraph(str+"寤鸿鏍囬",defaultFont);
@@ -1270,11 +1243,14 @@
 //                                paragraph = new Paragraph(str+objectMap.get("nr").toString(),defaultFont);
 //                                paragraph.setAlignment(Element.ALIGN_LEFT);
 //                                document2.add(paragraph);
-
-                                    String content1 = str + objectMap.get("bt").toString() + objectMap.get("nr").toString().trim();
+                                    Object bt = objectMap.get("bt");
+                                    Object nr = objectMap.get("nr");
+                                    if(null !=bt && null !=nr){
+                                        String content1 = str +bt .toString() +nr .toString().trim();
+                                        if (StrUtil.isBlank(content)) content1 = "     ";
+                                        paragraph = new Paragraph(content1,defaultFont);
+                                    }
 //                                    if (StrUtil.isBlank(content)) content1 = "     鏈姤鍛婁粎瀵规湰娆℃鏌ヨ礋璐o紝涓村簥鍖荤敓渚濇嵁鐥呮儏濡傛湁鐤戦棶锛岃鍙婃椂澶嶆煡鎴栬繘涓�姝ユ鏌�";
-                                    if (StrUtil.isBlank(content)) content1 = "     ";
-                                    paragraph = new Paragraph(content1,defaultFont);
                                     paragraph.setAlignment(Element.ALIGN_LEFT);
                                     document2.add(paragraph);
                                 }
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysConfigController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysConfigController.java
index cd8f137..496186e 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysConfigController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysConfigController.java
@@ -236,7 +236,8 @@
                             String[] split = jcsqd.getJgzt().split("銆�");
                             for (String jg : split) {
                                 if(StringUtil.isNotBlank(jg) && !jg.contains("鏈寮傚父")
-                                        && !jg.contains("鏈鏄庢樉寮傚父") && !jg.contains("鏈鍗犱綅") && !jg.contains("鏈鏄庢樉")){
+                                        && !jg.contains("鏈鏄庢樉寮傚父") && !jg.contains("鏈鍗犱綅")
+                                        && !jg.contains("鏈鏄庢樉")&& !jg.contains("姝e父")&& !jg.contains("鍙屼晶妞庨棿瀛旀棤鐙獎")&& !jg.contains("鏃犳畩")){
                                     TjJcycxm jcycxm=new TjJcycxm();
                                     jcycxm.setTjh(s);
                                     jcycxm.setYqid(yqbm);
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjAdviceController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjAdviceController.java
index f733795..fc41316 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjAdviceController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjAdviceController.java
@@ -117,6 +117,7 @@
     @ApiOperation(value = "鏍规嵁浣撴浜烘�у埆鍜屾槸鍚︿负鎬绘鏌ヨ浣撴寤鸿鎺ュ彛")
     public AjaxResult getKjTjAdviceKjbqBySex(@RequestParam String sex, @RequestParam @ApiParam(value = "1甯歌鍖荤敓 0鎬绘") String isZj,
                                              @RequestParam(required = false) @ApiParam(value ="寤鸿鍐呭") String jynr,
+                                             @RequestParam(required = false) @ApiParam(value ="寤鸿鏍囬") String jybt,
                                              @ApiParam(value = "椤电爜鏁�(榛樿1)") @RequestParam(defaultValue = "1") Integer page,
                                              @ApiParam(value = "鏄剧ず鏉℃暟(榛樿10)") @RequestParam(defaultValue = "10") Integer pageSize) {
         LambdaQueryWrapper<TjAdvice> wq = new LambdaQueryWrapper<>();
@@ -124,6 +125,7 @@
 //        wq.eq(TjAdvice::getAdSex, sex).or().isNull(TjAdvice::getAdSex);
         wq.eq(TjAdvice::getIsZj, isZj);
         if(StringUtil.isNotBlank(jynr)) wq.like(TjAdvice::getAdvice,jynr);
+        if(StringUtil.isNotBlank(jybt)) wq.like(TjAdvice::getTitle,jybt);
         wq.and(i -> i.eq(TjAdvice::getAdSex, sex).or().isNull(TjAdvice::getAdSex));
         Page<TjAdvice> kjbqPage = tjAdviceService.page(page1, wq);
         return AjaxResult.success(kjbqPage);
@@ -142,7 +144,7 @@
             LambdaQueryWrapper<TjUserAdvice> wq0 = new LambdaQueryWrapper<>();
             wq0.eq(TjUserAdvice::getUserId, userId);
             List<TjUserAdvice> list = userAdviceService.list(wq0);
-            if (null != list && list.size() > 0) {
+            if (null != list && !list.isEmpty()) {
                 List<Long> longs = list.stream().map(TjUserAdvice::getAdviceId).collect(Collectors.toList());
                 wq.in(TjAdvice::getId,longs);
                 wq.last("and (ad_sex=1 OR ad_sex=2)");
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
index f185fb7..839c23c 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
@@ -122,6 +122,8 @@
     private RedissonClient redissonClient;
     @Autowired
     private ITjRulesService rulesService;
+    @Autowired
+    private ITjProAdvicerulesService tjProAdvicerulesService;
 
 
     @GetMapping ("/ceshicc")
@@ -1658,19 +1660,25 @@
                         if (remark.getProsId().equals(tjOrderDetail.getProsId())) {
                             if(null !=tjOrderDetail.getProId()&& null !=tjOrderDetail.getYcbz()){
                                 if(!tjOrderDetail.getDeptId().equals("2")){
-                                    List<Map<String,Object>> maps= rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString(),"",tjOrderDetail.getYcbz(),tjNumber);
+                                    List<Map<String,Object>> maps= rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString()
+                                            ,"",tjOrderDetail.getYcbz().replaceAll(" ", ""),tjNumber
+                                            ,tjOrderDetail.getProName().replaceAll("\\锛圼^\\锛塢*\\锛�", "")
+                                                    .replaceAll("[ 娴嬪畾]","")
+                                            ,tjOrderDetail.getProResult());
                                     if(null !=maps && !maps.isEmpty()){
                                         tjOrderDetail.setAdvices(maps);
                                     }
                                 }else {
-                                    String[] split = tjOrderDetail.getProResult().split("銆�");
+                                    String[] split = tjOrderDetail.getProResult().split("銆倈,|锛�");
                                     List<Map<String,Object>> mapList=new ArrayList<>();
                                     for (String s : split) {
-                                        Map<String,Object> maps= rulesService.getyichangxiangmujianyiguizeJianCha(s);
+                                                s = s.replaceAll("\n", "");
+//                                        Map<String,Object> maps= rulesService.getyichangxiangmujianyiguizeJianCha(s);
+                                        Map<String,Object> maps= tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(),s,"0");
                                         if(null !=maps && !maps.isEmpty()){
                                             Object bt = maps.get("bt");
                                             Object nr = maps.get("nr");
-                                            if(null !=bt && null !=nr) mapList.add(maps);
+                                            if(null !=bt || null !=nr) mapList.add(maps);
                                         }
                                     }
                                     tjOrderDetail.setAdvices(mapList);
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 e3968e6..c5f281b 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
@@ -3750,6 +3750,14 @@
                 }
                 transitionService.ttsaveTemoTransitionByGroupingId(cusId, cardId, pacId.toString());
 
+                //琛ュ樊浠�
+                List<Map<String,Object>> cjMaps = groupingProService.huoquxiangmuchajia(pacId.toString(), cusId);
+                if(null !=cjMaps && !cjMaps.isEmpty()){
+                    for (Map<String, Object> cjMap : cjMaps) {
+                        transitionService.buxiangmuchajia(cusId,pacId.toString(),cjMap.get("xmid").toString(),new BigDecimal(cjMap.get("cj").toString()));
+                    }
+                }
+
             }
         }
 
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProAdvicerulesController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProAdvicerulesController.java
new file mode 100644
index 0000000..2cbd032
--- /dev/null
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProAdvicerulesController.java
@@ -0,0 +1,151 @@
+package com.ltkj.web.controller.system;
+
+import java.util.List;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ltkj.common.excelConfig.ExcelUtils;
+import com.ltkj.hosp.domain.TjAdvice;
+import com.ltkj.hosp.domain.TjReservation;
+import com.ltkj.hosp.service.ITjAdviceService;
+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.web.bind.annotation.*;
+import com.ltkj.common.annotation.Log;
+import com.ltkj.common.core.controller.BaseController;
+import com.ltkj.common.core.domain.AjaxResult;
+import com.ltkj.common.enums.BusinessType;
+import com.ltkj.hosp.domain.TjProAdvicerules;
+import com.ltkj.hosp.service.ITjProAdvicerulesService;
+import com.ltkj.common.utils.poi.ExcelUtil;
+import com.ltkj.common.core.page.TableDataInfo;
+import org.springframework.web.multipart.MultipartFile;
+
+/**
+ * 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃Controller
+ *
+ * @author ltkj_璧典匠璞�&鏉庢牸
+ * @date 2025-01-17
+ */
+@RestController
+@RequestMapping("/hosp/advicerules")
+@Api(tags = "A浣撴椤圭洰寤鸿瑙勫垯鏂拌〃Controller")
+public class TjProAdvicerulesController extends BaseController {
+    @Autowired
+    private ITjProAdvicerulesService tjProAdvicerulesService;
+    @Resource
+    private ITjAdviceService adviceService;
+
+    /**
+     * 鏌ヨ浣撴椤圭洰寤鸿瑙勫垯鏂拌〃鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('hosp:advicerules:list')")
+    @GetMapping("/list")
+    @ApiOperation(value = "鏌ヨ浣撴椤圭洰寤鸿瑙勫垯鏂拌〃鍒楄〃")
+    public TableDataInfo list(TjProAdvicerules tjProAdvicerules) {
+        startPage();
+        List<TjProAdvicerules> list = tjProAdvicerulesService.selectTjProAdvicerulesList(tjProAdvicerules);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭浣撴椤圭洰寤鸿瑙勫垯鏂拌〃鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('hosp:advicerules:export')")
+    @Log(title = "浣撴椤圭洰寤鸿瑙勫垯鏂拌〃", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    @ApiOperation(value = "瀵煎嚭浣撴椤圭洰寤鸿瑙勫垯鏂拌〃鍒楄〃")
+    public void export(HttpServletResponse response, TjProAdvicerules tjProAdvicerules) {
+//        List<TjProAdvicerules> list = tjProAdvicerulesService.selectTjProAdvicerulesList(tjProAdvicerules);
+//        ExcelUtil<TjProAdvicerules> util = new ExcelUtil<TjProAdvicerules>(TjProAdvicerules.class);
+        ExcelUtils.exportTemplate(response,"浣撴椤圭洰寤鸿瑙勫垯鏂拌〃鏁版嵁",TjProAdvicerules.class);
+//        ExcelUtils.expor
+//        util.exportExcel(response, list, "浣撴椤圭洰寤鸿瑙勫垯鏂拌〃鏁版嵁");
+    }
+
+    @PostMapping("/tjimport")
+    @ApiOperation(value = "瀵煎叆浣撴椤圭洰寤鸿瑙勫垯鏂拌〃鍒楄〃")
+    public AjaxResult tjimport(@RequestPart(value = "file") @ApiParam(value = "Excel鏂囦欢") MultipartFile file) {
+        try {
+
+
+
+            List<TjProAdvicerules> proAdvicerules  = ExcelUtils.readMultipartFile(file, TjProAdvicerules.class);
+            if(!proAdvicerules.isEmpty()){
+                for (TjProAdvicerules advicerules : proAdvicerules) {
+//                    LambdaQueryWrapper<TjAdvice> wq=new LambdaQueryWrapper<>();
+//                    wq.eq(TjAdvice::getTitle,advicerules.getZyzd());
+//                    List<TjAdvice> list = adviceService.list(wq);
+//                    if(null !=list && !list.isEmpty() && StringUtil.isBlank(advicerules.getJynr())){
+//                        advicerules.setJynr(list.get(0).getAdvice());
+//                    }
+
+                      if(StringUtil.isNotBlank(advicerules.getFwz())){
+                          if(advicerules.getFwz().contains("-")){
+                              String[] split = advicerules.getFwz().split("-");
+                              advicerules.setFwzdz(split[1]);
+                              advicerules.setFwzxz(split[0]);
+                          }
+                      }
+
+                }
+                 proAdvicerules  = proAdvicerules.stream().distinct().collect(Collectors.toList());
+                tjProAdvicerulesService.saveBatch(proAdvicerules);
+            }
+            return AjaxResult.success();
+
+        } catch (Exception e) {
+            e.getMessage();
+            return AjaxResult.error("瀵煎叆鏂囦欢鏈夎璇锋鏌ュ鍏ユ枃浠�!");
+        }
+    }
+
+    /**
+     * 鑾峰彇浣撴椤圭洰寤鸿瑙勫垯鏂拌〃璇︾粏淇℃伅
+     */
+    @PreAuthorize("@ss.hasPermi('hosp:advicerules:query')")
+    @GetMapping(value = "/{id}")
+    @ApiOperation(value = "鑾峰彇浣撴椤圭洰寤鸿瑙勫垯鏂拌〃璇︾粏淇℃伅")
+    public AjaxResult getInfo(@PathVariable("id") Long id) {
+        return success(tjProAdvicerulesService.selectTjProAdvicerulesById(id));
+    }
+
+    /**
+     * 鏂板浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     */
+    @PreAuthorize("@ss.hasPermi('hosp:advicerules:add')")
+    @Log(title = "浣撴椤圭洰寤鸿瑙勫垯鏂拌〃", businessType = BusinessType.INSERT)
+    @PostMapping
+    @ApiOperation(value = "鏂板浣撴椤圭洰寤鸿瑙勫垯鏂拌〃")
+    public AjaxResult add(@RequestBody TjProAdvicerules tjProAdvicerules) {
+        return toAjax(tjProAdvicerulesService.insertTjProAdvicerules(tjProAdvicerules));
+    }
+
+    /**
+     * 淇敼浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     */
+    @PreAuthorize("@ss.hasPermi('hosp:advicerules:edit')")
+    @Log(title = "浣撴椤圭洰寤鸿瑙勫垯鏂拌〃", businessType = BusinessType.UPDATE)
+    @PutMapping
+    @ApiOperation(value = "淇敼浣撴椤圭洰寤鸿瑙勫垯鏂拌〃")
+    public AjaxResult edit(@RequestBody TjProAdvicerules tjProAdvicerules) {
+        return toAjax(tjProAdvicerulesService.updateTjProAdvicerules(tjProAdvicerules));
+    }
+
+    /**
+     * 鍒犻櫎浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     */
+    @PreAuthorize("@ss.hasPermi('hosp:advicerules:remove')")
+    @Log(title = "浣撴椤圭洰寤鸿瑙勫垯鏂拌〃", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    @ApiOperation(value = "鍒犻櫎浣撴椤圭洰寤鸿瑙勫垯鏂拌〃")
+    public AjaxResult remove(@PathVariable Long[] ids) {
+        return toAjax(tjProAdvicerulesService.deleteTjProAdvicerulesByIds(ids));
+    }
+}
diff --git a/ltkj-common/src/main/java/com/ltkj/common/excelConfig/ExcelUtils.java b/ltkj-common/src/main/java/com/ltkj/common/excelConfig/ExcelUtils.java
index 8ad42e9..32c7b9a 100644
--- a/ltkj-common/src/main/java/com/ltkj/common/excelConfig/ExcelUtils.java
+++ b/ltkj-common/src/main/java/com/ltkj/common/excelConfig/ExcelUtils.java
@@ -63,7 +63,7 @@
 
     public static <T> List<T> readMultipartFile(MultipartFile mFile, Class<T> clazz) throws Exception {
         JSONArray array = readMultipartFile(mFile);
-        log.info("array鎵ц鍑烘潵鏄�:"+array);
+//        log.info("array鎵ц鍑烘潵鏄�:"+array);
         return getBeanList(array, clazz);
     }
 
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjOrderDetail.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjOrderDetail.java
index 2a3b09c..967579d 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjOrderDetail.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjOrderDetail.java
@@ -236,6 +236,9 @@
     @TableField(exist = false)
     private String deptId;
 
+    @TableField(exist = false)
+    private String ks;
+
     @Override
     public String toString() {
         return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjOrderRemark.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjOrderRemark.java
index 04016ee..4b73cf1 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjOrderRemark.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjOrderRemark.java
@@ -140,6 +140,12 @@
     private String jyjc;
 
 
+
+    @TableField(exist = false)
+//    绉戝
+    private String ks;
+
+
     @Override
     public String toString() {
         return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjProAdvicerules.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjProAdvicerules.java
new file mode 100644
index 0000000..94e657a
--- /dev/null
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjProAdvicerules.java
@@ -0,0 +1,161 @@
+package com.ltkj.hosp.domain;
+
+import com.ltkj.common.annotation.Excel;
+import com.ltkj.common.core.domain.BaseEntity;
+import com.ltkj.common.excelConfig.ExcelExport;
+import com.ltkj.common.excelConfig.ExcelImport;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃瀵硅薄 tj_pro_advicerules
+ *
+ * @author ltkj_璧典匠璞�&鏉庢牸
+ * @date 2025-01-17
+ */
+
+@Data
+public class TjProAdvicerules extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 搴忓彿
+     */
+    private String id;
+
+    /**
+     * 缂栫爜
+     */
+    @Excel(name = "璇婃柇缂栫爜")
+    @ExcelExport(value = "璇婃柇缂栫爜",sort =1)
+    @ExcelImport(value = "璇婃柇缂栫爜")
+    private String bm;
+
+    /**
+     * 绉戝
+     */
+    @Excel(name = "绉戝")
+    @ExcelExport(value = "绉戝",sort =2)
+    @ExcelImport(value = "绉戝",required = true)
+    private String ks;
+
+    /**
+     * 妫�鏌ラ」鐩�
+     */
+    @Excel(name = "妫�鏌ラ」鐩�")
+    @ExcelExport(value = "妫�鏌ラ」鐩�",sort =3)
+    @ExcelImport(value = "妫�鏌ラ」鐩�",required = true)
+    private String jcxm;
+
+    /**
+     * 涓昏璇婃柇
+     */
+    @Excel(name = "涓昏璇婃柇")
+    @ExcelExport(value = "涓昏璇婃柇",sort =4)
+    @ExcelImport(value = "涓昏璇婃柇",required = true)
+    private String zyzd;
+
+    /**
+     * 寤鸿鍚嶇О
+     */
+    @Excel(name = "寤鸿鍚嶇О")
+    @ExcelExport(value = "寤鸿鍚嶇О",sort =5)
+    @ExcelImport(value = "寤鸿鍚嶇О")
+    private String jymc;
+
+    /**
+     * 寤鸿鍐呭
+     */
+    @Excel(name = "寤鸿鍐呭")
+    @ExcelExport(value = "寤鸿鍐呭",sort =6)
+    @ExcelImport(value = "寤鸿鍐呭")
+    private String jynr;
+
+    /**
+     * 鑼冨洿
+     */
+    @Excel(name = "鑼冨洿")
+    @ExcelExport(value = "鑼冨洿",sort =7)
+    @ExcelImport(value = "鑼冨洿")
+    private String fwz;
+
+    /**
+     * 鑼冨洿鏈�灏忓��
+     */
+    @Excel(name = "鑼冨洿鏈�灏忓��")
+    private String fwzxz;
+
+    /**
+     * 鑼冨洿鏈�澶у��
+     */
+    @Excel(name = "鑼冨洿鏈�澶у��")
+    private String fwzdz;
+
+    /**
+     * 寮傚父鏍囧織
+     */
+    @Excel(name = "寮傚父鏍囧織")
+    @ExcelExport(value = "寮傚父鏍囧織",sort =8)
+    @ExcelImport(value = "寮傚父鏍囧織")
+    private String ycbz;
+
+    /**
+     * 鏄惁鐤剧梾
+     */
+    @Excel(name = "鏄惁鐤剧梾")
+    @ExcelExport(value = "鏄惁鐤剧梾",kv = "Y-鉁�",sort =9)
+    @ExcelImport(value = "鏄惁鐤剧梾", kv = "Y-鉁�")
+    private String sfjb;
+
+    /**
+     * 鏄惁甯歌鐥�
+     */
+    @Excel(name = "鏄惁甯歌鐥�")
+    @ExcelExport(value = "鏄惁甯歌鐥�",kv = "Y-鉁�",sort =10)
+    @ExcelImport(value = "鏄惁甯歌鐥�", kv = "Y-鉁�")
+    private String sfcjb;
+
+    /**
+     * 鏄惁鎱㈡�х梾
+     */
+    @Excel(name = "鏄惁鎱㈡�х梾")
+    @ExcelExport(value = "鏄惁鎱㈡�х梾",kv = "Y-鉁�",sort =11)
+    @ExcelImport(value = "鏄惁鎱㈡�х梾", kv = "Y-鉁�")
+    private String sfmxb;
+
+    /**
+     * 鏄惁閲嶅ぇ鐤剧梾
+     */
+    @Excel(name = "鏄惁閲嶅ぇ鐤剧梾")
+    @ExcelExport(value = "鏄惁閲嶅ぇ鐤剧梾",kv = "Y-鉁�",sort =12)
+    @ExcelImport(value = "鏄惁閲嶅ぇ鐤剧梾", kv = "Y-鉁�")
+    private String sfzdjb;
+
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("bm", getBm())
+                .append("ks", getKs())
+                .append("jcxm", getJcxm())
+                .append("zyzd", getZyzd())
+                .append("jymc", getJymc())
+                .append("jynr", getJynr())
+                .append("fwz", getFwz())
+                .append("fwzxz", getFwzxz())
+                .append("fwzdz", getFwzdz())
+                .append("ycbz", getYcbz())
+                .append("sfjb", getSfjb())
+                .append("sfcjb", getSfcjb())
+                .append("sfmxb", getSfmxb())
+                .append("sfzdjb", getSfzdjb())
+                .append("createTime", getCreateTime())
+                .append("updateTime", getUpdateTime())
+                .append("createBy", getCreateBy())
+                .append("updateBy", getUpdateBy())
+                .append("deleted", getDeleted())
+                .toString();
+    }
+}
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 11531aa..b7f5539 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
@@ -355,4 +355,13 @@
 
     @Select("SELECT * FROM tb_transition a WHERE a.tj_num=#{tjNumber} AND a.cus_id=#{idCard} AND a.now_price>0 AND a.discount !=10 ORDER BY a.create_time DESC LIMIT 1 \n")
     TbTransition getOnwTbTransition(@Param("idCard") String idCard,@Param("tjNumber")String tjNumber);
+
+
+    @Update("UPDATE tb_transition t JOIN (SELECT a.id FROM tb_transition a \n" +
+            "WHERE a.cus_id=#{idCard} AND a.pac_id=#{pacId}   " +
+            "AND ISNULL(a.tj_num) AND a.now_price !=0 ORDER BY a.now_price DESC LIMIT 1)aa ON aa.id=t.id\n" +
+            "SET \n" +
+            "t.now_price=(t.now_price+#{cj})\n" +
+            "WHERE t.id=aa.id")
+    void  buxiangmuchajia(@Param("idCard") String idCard,@Param("pacId") String pacId,@Param("proId") String proId,@Param("cj") BigDecimal cj);
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjGroupingProMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjGroupingProMapper.java
index 3150f15..f911252 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjGroupingProMapper.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjGroupingProMapper.java
@@ -1,6 +1,8 @@
 package com.ltkj.hosp.mapper;
 
+import java.math.BigDecimal;
 import java.util.List;
+import java.util.Map;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ltkj.hosp.domain.TjGroupingPro;
@@ -92,4 +94,12 @@
 //
 //    @Insert("")
 //    boolean saveTjOrderDetailsByGroupId(@Param("groupingId") String groupingId,@Param("userName")  String userName,@Param("userId")  String userId,@Param("orderId")String orderId);
+
+       @Select("SELECT aa.parent_pro_id xmid,(g.ys_price-aa.ys)cj FROM tj_grouping_pro g JOIN (\n" +
+               "\n" +
+               "SELECT a.parent_pro_id,SUM(a.now_price)ys  FROM tb_transition a WHERE a.cus_id=#{cusIdCard}  AND pac_id=#{groupingId} AND ISNULL(a.tj_num) GROUP BY a.parent_pro_id)aa\n" +
+               "ON\n" +
+               "g.pro_id=aa.parent_pro_id   AND g.grouping_id=#{groupingId} AND (g.ys_price-aa.ys)>0")
+       List<Map<String,Object>> huoquxiangmuchajia(@Param("groupingId") String groupingId, @Param("cusIdCard") String cusIdCard);
+
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProAdvicerulesMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProAdvicerulesMapper.java
new file mode 100644
index 0000000..bf6dabe
--- /dev/null
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProAdvicerulesMapper.java
@@ -0,0 +1,72 @@
+package com.ltkj.hosp.mapper;
+
+import java.util.List;
+import java.util.Map;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ltkj.hosp.domain.TjProAdvicerules;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+/**
+ * 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃Mapper鎺ュ彛
+ *
+ * @author ltkj_璧典匠璞�&鏉庢牸
+ * @date 2025-01-17
+ */
+@Mapper
+public interface TjProAdvicerulesMapper extends BaseMapper<TjProAdvicerules> {
+    /**
+     * 鏌ヨ浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param id 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃涓婚敭
+     * @return 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     */
+    public TjProAdvicerules selectTjProAdvicerulesById(Long id);
+
+    /**
+     * 鏌ヨ浣撴椤圭洰寤鸿瑙勫垯鏂拌〃鍒楄〃
+     *
+     * @param tjProAdvicerules 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     * @return 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃闆嗗悎
+     */
+    public List<TjProAdvicerules> selectTjProAdvicerulesList(TjProAdvicerules tjProAdvicerules);
+
+    /**
+     * 鏂板浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param tjProAdvicerules 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     * @return 缁撴灉
+     */
+    public int insertTjProAdvicerules(TjProAdvicerules tjProAdvicerules);
+
+    /**
+     * 淇敼浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param tjProAdvicerules 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     * @return 缁撴灉
+     */
+    public int updateTjProAdvicerules(TjProAdvicerules tjProAdvicerules);
+
+    /**
+     * 鍒犻櫎浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param id 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteTjProAdvicerulesById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteTjProAdvicerulesByIds(Long[] ids);
+
+
+    @Select("call tj_new_advicerules(\n" +
+            "                #{ks,mode=IN,jdbcType=VARCHAR},#{jg,mode=IN,jdbcType=VARCHAR},#{kslx,mode=IN,jdbcType=VARCHAR} )")
+    Map<String, Object> getyichangxiangmujianyiguizeJianCha(@Param("ks") String ks,@Param("jg") String s,@Param("kslx") String kslx);
+}
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjRulesMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjRulesMapper.java
index 1c814f1..cff8f87 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjRulesMapper.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjRulesMapper.java
@@ -85,9 +85,11 @@
                 "                #{xmbm,mode=IN,jdbcType=VARCHAR},\n" +
                 "                #{proId,mode=IN,jdbcType=VARCHAR},\n" +
                 "                #{ycbz,mode=IN,jdbcType=VARCHAR},\n" +
-                "                #{tjnum,mode=IN,jdbcType=VARCHAR} )")
+                "                #{tjnum,mode=IN,jdbcType=VARCHAR}," +
+                "                #{xmm,mode=IN,jdbcType=VARCHAR}," +
+                "                #{jyjg,mode=IN,jdbcType=VARCHAR} )")
     List<Map<String,Object>> getyichangxiangmujianyiguize1(@Param("xmbm") String xmbm,@Param("proId")String proId,
-                                                           @Param("ycbz")String ycbz,@Param("tjnum")String tjnum);
+                                                           @Param("ycbz")String ycbz,@Param("tjnum")String tjnum,@Param("xmm") String xmm,@Param("jyjg") String jyjg);
 
     @Select("call tj_ycjgjy_jc(\n" +
             "                #{jcjg,mode=IN,jdbcType=VARCHAR} )")
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 2c4e379..826b650 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
@@ -142,4 +142,6 @@
     List<TbTransition> newgetTransitionList(String cusId);
 
     TbTransition getOnwTbTransition(String idCard,String tjNumber);
+
+    void  buxiangmuchajia(String idCard,String pacId,String proId,BigDecimal cj);
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjGroupingProService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjGroupingProService.java
index 028b2c9..d0a92d0 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjGroupingProService.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjGroupingProService.java
@@ -1,6 +1,8 @@
 package com.ltkj.hosp.service;
 
+import java.math.BigDecimal;
 import java.util.List;
+import java.util.Map;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ltkj.hosp.domain.TjGroupingPro;
@@ -69,4 +71,6 @@
     boolean updateGroupProLimitsByGroupId(String groupId, String limits);
 
 //    boolean saveTjOrderDetailsByGroupId(String groupingId,String userName, String userId,String orderId);
+
+    List<Map<String,Object>> huoquxiangmuchajia(String groupingId, String cusIdCard);
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProAdvicerulesService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProAdvicerulesService.java
new file mode 100644
index 0000000..26a7f55
--- /dev/null
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProAdvicerulesService.java
@@ -0,0 +1,65 @@
+package com.ltkj.hosp.service;
+
+import java.util.List;
+import java.util.Map;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ltkj.hosp.domain.TjProAdvicerules;
+
+/**
+ * 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃Service鎺ュ彛
+ *
+ * @author ltkj_璧典匠璞�&鏉庢牸
+ * @date 2025-01-17
+ */
+public interface ITjProAdvicerulesService extends IService<TjProAdvicerules> {
+    /**
+     * 鏌ヨ浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param id 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃涓婚敭
+     * @return 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     */
+    public TjProAdvicerules selectTjProAdvicerulesById(Long id);
+
+    /**
+     * 鏌ヨ浣撴椤圭洰寤鸿瑙勫垯鏂拌〃鍒楄〃
+     *
+     * @param tjProAdvicerules 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     * @return 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃闆嗗悎
+     */
+    public List<TjProAdvicerules> selectTjProAdvicerulesList(TjProAdvicerules tjProAdvicerules);
+
+    /**
+     * 鏂板浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param tjProAdvicerules 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     * @return 缁撴灉
+     */
+    public int insertTjProAdvicerules(TjProAdvicerules tjProAdvicerules);
+
+    /**
+     * 淇敼浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param tjProAdvicerules 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     * @return 缁撴灉
+     */
+    public int updateTjProAdvicerules(TjProAdvicerules tjProAdvicerules);
+
+    /**
+     * 鎵归噺鍒犻櫎浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑浣撴椤圭洰寤鸿瑙勫垯鏂拌〃涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteTjProAdvicerulesByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎浣撴椤圭洰寤鸿瑙勫垯鏂拌〃淇℃伅
+     *
+     * @param id 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteTjProAdvicerulesById(Long id);
+
+    Map<String, Object> getyichangxiangmujianyiguizeJianCha(String ks, String s, String kslx);
+}
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjRulesService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjRulesService.java
index 9035622..d8eb4e3 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjRulesService.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjRulesService.java
@@ -20,7 +20,7 @@
 
     List<TjRules> getTjRulesListByTjNumAndProId(String tjNum,Long proId);
 
-    List<Map<String,Object>> getyichangxiangmujianyiguize(String xmbm,String proId, String ycbz,String tjnum);
+    List<Map<String,Object>> getyichangxiangmujianyiguize(String xmbm,String proId, String ycbz,String tjnum,String xmm,String jyjg);
 
     Map<String,Object> getyichangxiangmujianyiguizeJianCha(String jcjg);
 }
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 fef5554..d68b1b5 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
@@ -242,4 +242,9 @@
     public TbTransition getOnwTbTransition(String idCard, String tjNumber) {
         return tbTransitionMapper.getOnwTbTransition(idCard,tjNumber);
     }
+
+    @Override
+    public void buxiangmuchajia(String idCard, String pacId,String proId, BigDecimal cj) {
+       tbTransitionMapper.buxiangmuchajia( idCard, pacId,proId, cj);
+    }
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjGroupingProServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjGroupingProServiceImpl.java
index 4cbaa83..cc91279 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjGroupingProServiceImpl.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjGroupingProServiceImpl.java
@@ -1,6 +1,8 @@
 package com.ltkj.hosp.service.impl;
 
+import java.math.BigDecimal;
 import java.util.List;
+import java.util.Map;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ltkj.common.utils.DateUtils;
@@ -106,8 +108,17 @@
         return tjGroupingProMapper.updateGroupProLimitsByGroupId(groupId,limits);
     }
 
+
 //    @Override
 //    public boolean saveTjOrderDetailsByGroupId(String groupingId, String userName, String userId,String orderId) {
 //        return tjGroupingProMapper.saveTjOrderDetailsByGroupId(groupingId,userName,userId,orderId);
 //    }
+
+
+    @Override
+    public List<Map<String,Object>> huoquxiangmuchajia(String groupingId, String cusIdCard) {
+
+        return tjGroupingProMapper.huoquxiangmuchajia(groupingId,cusIdCard);
+    }
+
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProAdvicerulesServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProAdvicerulesServiceImpl.java
new file mode 100644
index 0000000..05c41d9
--- /dev/null
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProAdvicerulesServiceImpl.java
@@ -0,0 +1,98 @@
+package com.ltkj.hosp.service.impl;
+
+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;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ltkj.hosp.mapper.TjProAdvicerulesMapper;
+import com.ltkj.hosp.domain.TjProAdvicerules;
+import com.ltkj.hosp.service.ITjProAdvicerulesService;
+
+/**
+ * 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃Service涓氬姟灞傚鐞�
+ *
+ * @author ltkj_璧典匠璞�&鏉庢牸
+ * @date 2025-01-17
+ */
+@Service
+public class TjProAdvicerulesServiceImpl extends ServiceImpl<TjProAdvicerulesMapper,TjProAdvicerules> implements ITjProAdvicerulesService {
+    @Autowired
+    private TjProAdvicerulesMapper tjProAdvicerulesMapper;
+
+    /**
+     * 鏌ヨ浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param id 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃涓婚敭
+     * @return 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     */
+    @Override
+    public TjProAdvicerules selectTjProAdvicerulesById(Long id) {
+        return tjProAdvicerulesMapper.selectTjProAdvicerulesById(id);
+    }
+
+    /**
+     * 鏌ヨ浣撴椤圭洰寤鸿瑙勫垯鏂拌〃鍒楄〃
+     *
+     * @param tjProAdvicerules 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     * @return 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     */
+    @Override
+    public List<TjProAdvicerules> selectTjProAdvicerulesList(TjProAdvicerules tjProAdvicerules) {
+        return tjProAdvicerulesMapper.selectTjProAdvicerulesList(tjProAdvicerules);
+    }
+
+    /**
+     * 鏂板浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param tjProAdvicerules 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertTjProAdvicerules(TjProAdvicerules tjProAdvicerules) {
+                tjProAdvicerules.setCreateTime(DateUtils.getNowDate());
+            return tjProAdvicerulesMapper.insertTjProAdvicerules(tjProAdvicerules);
+    }
+
+    /**
+     * 淇敼浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param tjProAdvicerules 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateTjProAdvicerules(TjProAdvicerules tjProAdvicerules) {
+                tjProAdvicerules.setUpdateTime(DateUtils.getNowDate());
+        return tjProAdvicerulesMapper.updateTjProAdvicerules(tjProAdvicerules);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎浣撴椤圭洰寤鸿瑙勫垯鏂拌〃
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑浣撴椤圭洰寤鸿瑙勫垯鏂拌〃涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteTjProAdvicerulesByIds(Long[] ids) {
+        return tjProAdvicerulesMapper.deleteTjProAdvicerulesByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎浣撴椤圭洰寤鸿瑙勫垯鏂拌〃淇℃伅
+     *
+     * @param id 浣撴椤圭洰寤鸿瑙勫垯鏂拌〃涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteTjProAdvicerulesById(Long id) {
+        return tjProAdvicerulesMapper.deleteTjProAdvicerulesById(id);
+    }
+
+    @Override
+    public Map<String, Object> getyichangxiangmujianyiguizeJianCha(String ks, String s, String kslx) {
+        return tjProAdvicerulesMapper.getyichangxiangmujianyiguizeJianCha(ks,s,kslx);
+    }
+}
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjRulesServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjRulesServiceImpl.java
index 28ac998..12c0442 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjRulesServiceImpl.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjRulesServiceImpl.java
@@ -40,13 +40,13 @@
     }
 
     @Override
-    public List<Map<String,Object>> getyichangxiangmujianyiguize(String xmbm,String proId, String ycbz,String tjnum) {
+    public List<Map<String,Object>> getyichangxiangmujianyiguize(String xmbm,String proId, String ycbz,String tjnum,String xmm,String jyjg) {
         Map<String, Object> map=new HashMap<>();
         map.put("xmbm",xmbm);
         map.put("proId",proId);
         map.put("ycbz",ycbz);
         map.put("tjnum",tjnum);
-        return mapper.getyichangxiangmujianyiguize1(xmbm,proId,ycbz,tjnum);
+        return mapper.getyichangxiangmujianyiguize1(xmbm,proId,ycbz,tjnum, xmm, jyjg);
     }
 
     @Override
diff --git a/ltkj-hosp/src/main/resources/mapper/hosp/TjProAdvicerulesMapper.xml b/ltkj-hosp/src/main/resources/mapper/hosp/TjProAdvicerulesMapper.xml
new file mode 100644
index 0000000..8115424
--- /dev/null
+++ b/ltkj-hosp/src/main/resources/mapper/hosp/TjProAdvicerulesMapper.xml
@@ -0,0 +1,241 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ltkj.hosp.mapper.TjProAdvicerulesMapper">
+
+    <resultMap type="TjProAdvicerules" id="TjProAdvicerulesResult">
+            <result property="id" column="id"/>
+            <result property="bm" column="bm"/>
+            <result property="ks" column="ks"/>
+            <result property="jcxm" column="jcxm"/>
+            <result property="zyzd" column="zyzd"/>
+            <result property="jymc" column="jymc"/>
+            <result property="jynr" column="jynr"/>
+            <result property="fwz" column="fwz"/>
+            <result property="fwzxz" column="fwzxz"/>
+            <result property="fwzdz" column="fwzdz"/>
+            <result property="ycbz" column="ycbz"/>
+            <result property="sfjb" column="sfjb"/>
+            <result property="sfcjb" column="sfcjb"/>
+            <result property="sfmxb" column="sfmxb"/>
+            <result property="sfzdjb" column="sfzdjb"/>
+            <result property="createTime" column="create_time"/>
+            <result property="updateTime" column="update_time"/>
+            <result property="createBy" column="create_by"/>
+            <result property="updateBy" column="update_by"/>
+            <result property="deleted" column="deleted"/>
+    </resultMap>
+
+    <sql id="selectTjProAdvicerulesVo">
+        select id, bm, ks, jcxm, zyzd, jymc, jynr, fwz, fwzxz, fwzdz, ycbz, sfjb, sfcjb, sfmxb, sfzdjb, create_time, update_time, create_by, update_by, deleted
+        from tj_pro_advicerules
+    </sql>
+
+    <select id="selectTjProAdvicerulesList" parameterType="TjProAdvicerules" resultMap="TjProAdvicerulesResult">
+        <include refid="selectTjProAdvicerulesVo"/>
+        <where>
+                        <if test="bm != null  and bm != ''">
+                            and bm like concat('%', #{bm}, '%')
+                        </if>
+                        <if test="ks != null  and ks != ''">
+                            and ks = #{ks}
+                        </if>
+                        <if test="jcxm != null  and jcxm != ''">
+                            and jcxm like concat('%', #{jcxm}, '%')
+                        </if>
+                        <if test="zyzd != null  and zyzd != ''">
+                            and zyzd like concat('%', #{zyzd}, '%')
+                        </if>
+                        <if test="jymc != null  and jymc != ''">
+                            and jymc like concat('%', #{jymc}, '%')
+                        </if>
+                        <if test="jynr != null  and jynr != ''">
+                            and jynr like concat('%', #{jynr}, '%')
+                        </if>
+                        <if test="sfjb != null  and sfjb != ''">
+                            and sfjb = #{sfjb}
+                        </if>
+                        <if test="sfcjb != null  and sfcjb != ''">
+                            and sfcjb = #{sfcjb}
+                        </if>
+                        <if test="sfmxb != null  and sfmxb != ''">
+                            and sfmxb = #{sfmxb}
+                        </if>
+                        <if test="sfzdjb != null  and sfzdjb != ''">
+                            and sfzdjb = #{sfzdjb}
+                        </if>
+        </where>
+        ORDER BY ks
+    </select>
+
+    <select id="selectTjProAdvicerulesById" parameterType="Long"
+            resultMap="TjProAdvicerulesResult">
+            <include refid="selectTjProAdvicerulesVo"/>
+            where id = #{id}
+    </select>
+
+    <insert id="insertTjProAdvicerules" parameterType="TjProAdvicerules">
+        insert into tj_pro_advicerules
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+                    <if test="id != null">id,
+                    </if>
+                    <if test="bm != null">bm,
+                    </if>
+                    <if test="ks != null">ks,
+                    </if>
+                    <if test="jcxm != null">jcxm,
+                    </if>
+                    <if test="zyzd != null">zyzd,
+                    </if>
+                    <if test="jymc != null">jymc,
+                    </if>
+                    <if test="jynr != null">jynr,
+                    </if>
+                    <if test="fwz != null">fwz,
+                    </if>
+                    <if test="fwzxz != null">fwzxz,
+                    </if>
+                    <if test="fwzdz != null">fwzdz,
+                    </if>
+                    <if test="ycbz != null">ycbz,
+                    </if>
+                    <if test="sfjb != null">sfjb,
+                    </if>
+                    <if test="sfcjb != null">sfcjb,
+                    </if>
+                    <if test="sfmxb != null">sfmxb,
+                    </if>
+                    <if test="sfzdjb != null">sfzdjb,
+                    </if>
+                    <if test="createTime != null">create_time,
+                    </if>
+                    <if test="updateTime != null">update_time,
+                    </if>
+                    <if test="createBy != null">create_by,
+                    </if>
+                    <if test="updateBy != null">update_by,
+                    </if>
+                    <if test="deleted != null">deleted,
+                    </if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+                    <if test="id != null">#{id},
+                    </if>
+                    <if test="bm != null">#{bm},
+                    </if>
+                    <if test="ks != null">#{ks},
+                    </if>
+                    <if test="jcxm != null">#{jcxm},
+                    </if>
+                    <if test="zyzd != null">#{zyzd},
+                    </if>
+                    <if test="jymc != null">#{jymc},
+                    </if>
+                    <if test="jynr != null">#{jynr},
+                    </if>
+                    <if test="fwz != null">#{fwz},
+                    </if>
+                    <if test="fwzxz != null">#{fwzxz},
+                    </if>
+                    <if test="fwzdz != null">#{fwzdz},
+                    </if>
+                    <if test="ycbz != null">#{ycbz},
+                    </if>
+                    <if test="sfjb != null">#{sfjb},
+                    </if>
+                    <if test="sfcjb != null">#{sfcjb},
+                    </if>
+                    <if test="sfmxb != null">#{sfmxb},
+                    </if>
+                    <if test="sfzdjb != null">#{sfzdjb},
+                    </if>
+                    <if test="createTime != null">#{createTime},
+                    </if>
+                    <if test="updateTime != null">#{updateTime},
+                    </if>
+                    <if test="createBy != null">#{createBy},
+                    </if>
+                    <if test="updateBy != null">#{updateBy},
+                    </if>
+                    <if test="deleted != null">#{deleted},
+                    </if>
+        </trim>
+    </insert>
+
+    <update id="updateTjProAdvicerules" parameterType="TjProAdvicerules">
+        update tj_pro_advicerules
+        <trim prefix="SET" suffixOverrides=",">
+                    <if test="bm != null">bm =
+                        #{bm},
+                    </if>
+                    <if test="ks != null">ks =
+                        #{ks},
+                    </if>
+                    <if test="jcxm != null">jcxm =
+                        #{jcxm},
+                    </if>
+                    <if test="zyzd != null">zyzd =
+                        #{zyzd},
+                    </if>
+                    <if test="jymc != null">jymc =
+                        #{jymc},
+                    </if>
+                    <if test="jynr != null">jynr =
+                        #{jynr},
+                    </if>
+                    <if test="fwz != null">fwz =
+                        #{fwz},
+                    </if>
+                    <if test="fwzxz != null">fwzxz =
+                        #{fwzxz},
+                    </if>
+                    <if test="fwzdz != null">fwzdz =
+                        #{fwzdz},
+                    </if>
+                    <if test="ycbz != null">ycbz =
+                        #{ycbz},
+                    </if>
+                    <if test="sfjb != null">sfjb =
+                        #{sfjb},
+                    </if>
+                    <if test="sfcjb != null">sfcjb =
+                        #{sfcjb},
+                    </if>
+                    <if test="sfmxb != null">sfmxb =
+                        #{sfmxb},
+                    </if>
+                    <if test="sfzdjb != null">sfzdjb =
+                        #{sfzdjb},
+                    </if>
+                    <if test="createTime != null">create_time =
+                        #{createTime},
+                    </if>
+                    <if test="updateTime != null">update_time =
+                        #{updateTime},
+                    </if>
+                    <if test="createBy != null">create_by =
+                        #{createBy},
+                    </if>
+                    <if test="updateBy != null">update_by =
+                        #{updateBy},
+                    </if>
+                    <if test="deleted != null">deleted =
+                        #{deleted},
+                    </if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteTjProAdvicerulesById" parameterType="Long">
+        delete
+        from tj_pro_advicerules where id = #{id}
+    </delete>
+
+    <delete id="deleteTjProAdvicerulesByIds" parameterType="String">
+        delete from tj_pro_advicerules where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

--
Gitblit v1.8.0