From e00d0891b7477fd97c766b2cc6a66cdec94bfc5e Mon Sep 17 00:00:00 2001
From: lige <bestlige@outlook.com>
Date: 星期四, 14 十二月 2023 20:23:42 +0800
Subject: [PATCH] 体检套餐优化

---
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjPackageServiceImpl.java     |   16 +++++
 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjPackageMapper.java                |   37 ++++++++++++
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjPackageController.java |   65 ++++++++++++---------
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjPackageService.java             |    7 ++
 4 files changed, 97 insertions(+), 28 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjPackageController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjPackageController.java
index da0b331..969365e 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjPackageController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjPackageController.java
@@ -138,7 +138,7 @@
                 }
 
                 final MallCategory byId = mallCategoryService.getById(aPackage.getCategoryId());
-                if (byId!=null){
+                if (byId != null) {
                     aPackage.setCategoryNames(byId.getName());
                 }
             }
@@ -152,35 +152,46 @@
     @GetMapping("getList")
     @ApiOperation(value = "鏌ヨ浣撴濂楅鍒楄〃")
     public TableDataInfo getList(@RequestParam(required = false) @ApiParam(value = "鎬у埆") String cusSex) {
-        List<TjPackage> tjPackageList = null;
-        List<TjPackage> list = null;
-        if (cusSex == null || cusSex.equals("2")) {
-            if (redisCache.hasKey("getTjPackageListBySex")) {
-                list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByManAndWoMan");
-            } else {
-                tjPackageList = tjPackageService.list(new LambdaQueryWrapper<TjPackage>().eq(TjPackage::getPacStatus,0));
-            }
+//        List<TjPackage> tjPackageList = null;
+//        List<TjPackage> list = null;
+//        if (cusSex == null || cusSex.equals("2")) {
+//            if (redisCache.hasKey("getTjPackageListBySex")) {
+//                list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByManAndWoMan");
+//            } else {
+//                tjPackageList = tjPackageService.list(new LambdaQueryWrapper<TjPackage>().eq(TjPackage::getPacStatus,0));
+//            }
+//        } else {
+//            if (cusSex.equals("0")) {
+//                if (redisCache.hasKey("getTjPackageListBySex")) {
+//                    list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByMan");
+//                } else {
+//                    tjPackageList = tjPackageService.getTjPackageListByMan();
+//                }
+//            } else {
+//                if (redisCache.hasKey("getTjPackageListBySex")) {
+//                    list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByWoMan");
+//                } else {
+//                    tjPackageList = tjPackageService.getTjPackageListByWoMan();
+//                }
+//            }
+//        }
+//        asyncService.getTjPackageList();
+//        if (null != list && list.size() > 0) {
+//            return getDataTable(list);
+//        } else {
+//            getTjPackageList(tjPackageList);
+//            return getDataTable(tjPackageList);
+//        }
+        String pacName="";
+        if (cusSex.equals("2")) {
+            return getDataTable(tjPackageService.getPacListBySqlAndAll(pacName));
+
         } else {
             if (cusSex.equals("0")) {
-                if (redisCache.hasKey("getTjPackageListBySex")) {
-                    list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByMan");
-                } else {
-                    tjPackageList = tjPackageService.getTjPackageListByMan();
-                }
-            } else {
-                if (redisCache.hasKey("getTjPackageListBySex")) {
-                    list = redisCache.getCacheMapValue("getTjPackageListBySex", "getTjPackageListByWoMan");
-                } else {
-                    tjPackageList = tjPackageService.getTjPackageListByWoMan();
-                }
+                return getDataTable(tjPackageService.getPacListBySqlAndMan(pacName));
+            }else {
+                return getDataTable(tjPackageService.getPacListBySqlAndWomen(pacName));
             }
-        }
-        asyncService.getTjPackageList();
-        if (null != list && list.size() > 0) {
-            return getDataTable(list);
-        } else {
-            getTjPackageList(tjPackageList);
-            return getDataTable(tjPackageList);
         }
     }
 
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjPackageMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjPackageMapper.java
index 1d013f1..9a0d458 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjPackageMapper.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjPackageMapper.java
@@ -85,4 +85,41 @@
 
     @Select("SELECT GROUP_CONCAT(b.pro_name ) AS names FROM tj_package_project a LEFT JOIN tj_project b ON a.pro_id=b.pro_id WHERE a.pac_id=#{pacId}")
     String getTjPacProNames(String pacId);
+
+    @Select("SELECT a.pac_id,a.pac_name,a.price,GROUP_CONCAT(distinct c.pro_name SEPARATOR ',') AS allProName\n" +
+            "FROM  tj_package a\n" +
+            "left JOIN tj_package_project b\n" +
+            "ON a.pac_id=b.pac_id\n" +
+            "left JOIN tj_project c\n" +
+            "on b.pro_id=c.pro_id\n" +
+            "WHERE  !locate(\"濂砛",a.pac_name) and !locate(\"瀛昞",a.pac_name) and !locate(\"濡嘰",a.pac_name) and !locate(\"浜",a.pac_name) and a.pac_status=0 AND a.deleted =0  and a.pac_name like concat('%',#{name},'%')\n" +
+            "GROUP BY a.pac_id\n" +
+            "ORDER BY a.sort DESC;}")
+    List<TjPackage> getPacListBySqlAndMan(String pacName);
+
+    @Select("SELECT a.pac_id,a.pac_name,a.price,GROUP_CONCAT(distinct c.pro_name SEPARATOR ',') AS allProName\n" +
+            "FROM  tj_package a\n" +
+            "left JOIN tj_package_project b\n" +
+            "ON a.pac_id=b.pac_id\n" +
+            "left JOIN tj_project c\n" +
+            "on b.pro_id=c.pro_id\n" +
+            "WHERE  !locate(\"鐢穃",a.pac_name) and a.pac_status=0 AND a.deleted =0  and a.pac_name like concat('%',#{name},'%')\n" +
+            "GROUP BY a.pac_id\n" +
+            "ORDER BY a.sort DESC;\n")
+    List<TjPackage> getPacListBySqlAndWomen(String pacName);
+
+
+
+    @Select(" SELECT a.pac_id,a.pac_name,a.price,GROUP_CONCAT(distinct c.pro_name SEPARATOR ',') AS allProName\n" +
+            "    FROM  tj_package a\n" +
+            "    left JOIN tj_package_project b\n" +
+            "    ON a.pac_id=b.pac_id\n" +
+            "    left JOIN tj_project c\n" +
+            "    on b.pro_id=c.pro_id\n" +
+            "    WHERE   a.pac_status=0 AND a.deleted =0  and a.pac_name like concat('%',#{name},'%')\n" +
+            "    GROUP BY a.pac_id\n" +
+            "    ORDER BY a.sort DESC;")
+    List<TjPackage> getPacListBySqlAndAll(String pacName);
+
+
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjPackageService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjPackageService.java
index 72cde37..74bfa13 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjPackageService.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjPackageService.java
@@ -73,6 +73,11 @@
 
     List<TjPackage> getTjPackageListByWoMan();
 
-
     String getTjPacProNames(String pacId);
+
+    List<TjPackage> getPacListBySqlAndMan(String pacName);
+
+    List<TjPackage> getPacListBySqlAndWomen(String pacName);
+
+    List<TjPackage> getPacListBySqlAndAll(String pacName);
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjPackageServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjPackageServiceImpl.java
index 5284a52..eb1e411 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjPackageServiceImpl.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjPackageServiceImpl.java
@@ -115,4 +115,20 @@
     public String getTjPacProNames(String pacId) {
         return tjPackageMapper.getTjPacProNames(pacId);
     }
+
+    @Override
+    public List<TjPackage> getPacListBySqlAndMan(String pacName) {
+        return tjPackageMapper.getPacListBySqlAndMan(pacName);
+    }
+
+    @Override
+    public List<TjPackage> getPacListBySqlAndWomen(String pacName) {
+        return tjPackageMapper.getPacListBySqlAndWomen(pacName);
+    }
+
+    @Override
+    public List<TjPackage> getPacListBySqlAndAll(String pacName) {
+        return tjPackageMapper.getPacListBySqlAndAll(pacName);
+    }
+
 }

--
Gitblit v1.8.0