From 9155df2aeab5b0d95c89dd928dbaefbfbaeae9d1 Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期四, 05 九月 2024 17:10:35 +0800
Subject: [PATCH] zjh 2024-09-05

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjPackageController.java |  177 +++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 149 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 969365e..68b21fc 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
@@ -69,6 +69,67 @@
     @Autowired
     private IMallCategoryService mallCategoryService;
 
+    @GetMapping("/getPacList")
+    @ApiOperation(value = "鏌ヨ浣撴濂楅鍒楄〃(鑷甫鏈夊垎椤�)(鏂�)")
+    //@PreAuthorize("@ss.hasPermi('hosp:package:list')")
+    public TableDataInfo getPacList(@ApiParam(value = "浣撴濂楅瀵硅薄") TjPackage tjPackage) {
+        startPage();
+        List<TjPackage> list = tjPackageService.selectTjPackageList(tjPackage);
+        if (null != list && list.size() > 0) {
+            for (TjPackage aPackage : list) {
+                aPackage.setAllProName(tjPackageService.getTjPacProNames(String.valueOf(aPackage.getPacId())));
+                final String keywords = aPackage.getKeywords();
+                if (keywords != null) {
+                    final String[] strings = keywords.split(",");
+                    aPackage.setKeyNames(mallKeywordService.getKeyNames(strings));
+                    aPackage.setKeyIds(mallKeywordService.getKeyIds(strings));
+                }
+
+                final MallCategory byId = mallCategoryService.getById(aPackage.getCategoryId());
+                if (byId != null) {
+                    aPackage.setCategoryNames(byId.getName());
+                }
+            }
+        }
+        return getDataTable(list);
+    }
+
+
+    @GetMapping("/getPacInFo")
+    @ApiOperation(value = "鏌ヨ浣撴濂楅鍒楄〃(璇︾粏)(鑷甫鏈夊垎椤�)(鏂�)")
+    //@PreAuthorize("@ss.hasPermi('hosp:package:list')")
+    public AjaxResult getPacInFo(@ApiParam(value = "浣撴濂楅瀵硅薄id") String pacId) {
+        TjPackage aPackage = tjPackageService.getById(pacId);
+        if (null != aPackage) {
+                List<TjProject> tjProjectList = new ArrayList<>();
+                List<TjPackageProject> pplist = ppservice.getTjPackageProjectListByPacId(String.valueOf(aPackage.getPacId()));
+                if (null != pplist) {
+                    for (TjPackageProject packageProject : pplist) {
+//                        StringBuilder allSonProName = new StringBuilder();   //2023.2.7 濂楅鍐呮瘡涓�鐖堕」鐩殑瀛愰」鐩瓧绗︿覆
+                        TjProject tjProject = tjProjectService.getById(packageProject.getProId());
+                        if (null != tjProject) {
+//                            List<TjProject> listBySoneId = tjProjectService.getTjProjectListBySoneId(String.valueOf(packageProject.getProId()));
+//                            for (TjProject project : listBySoneId) {
+//                                allSonProName.append(project.getProName()).append(";");  //2023.2.7 濂楅鍐呮瘡涓�鐖堕」鐩殑瀛愰」鐩瓧绗︿覆
+//                            }
+                            tjProject.setAllSonProName(tjProjectService.getAllSonNames(String.valueOf(packageProject.getProId())));   //2023.2.7 濂楅鍐呮瘡涓�鐖堕」鐩殑瀛愰」鐩瓧绗︿覆
+                            tjProjectList.add(tjProject);
+                            //鐜颁环璧嬪�煎垽鏂璶ull璧嬪師浠�  2023.2.8
+                            if (packageProject.getPriceNow() != null) {
+                                tjProject.setPriceNow(packageProject.getPriceNow());
+                            } else {
+                                tjProject.setPriceNow(tjProject.getProPrice());
+                            }
+
+                        }
+                    }
+                }
+                aPackage.setTjProjectList(tjProjectList);
+        }
+        return AjaxResult.success(aPackage);
+    }
+
+
     /**
      * 鏌ヨ浣撴濂楅鍒楄〃
      */
@@ -98,14 +159,6 @@
                             }
                             tjProject.setAllSonProName(allSonProName.toString());   //2023.2.7 濂楅鍐呮瘡涓�鐖堕」鐩殑瀛愰」鐩瓧绗︿覆
                             tjProjectList.add(tjProject);
-//                            LambdaQueryWrapper<TjProConsumables> wrapper1 = new LambdaQueryWrapper<>();
-//                            wrapper1.eq(TjProConsumables::getProId, packageProject.getProId());
-//                            List<TjProConsumables> list0 = tjProConsumablesService.list(wrapper1);
-//                            List<TjConsumables> list1 = new ArrayList<>();
-//                            for (TjProConsumables tjProConsumables : list0) {
-//                                list1.add(tjConsumablesService.getById(tjProConsumables.getConsumablesId()));
-//                            }
-//                            tjProject.setConsumablesList(list1);
                             //鐜颁环璧嬪�煎垽鏂璶ull璧嬪師浠�  2023.2.8
                             if (packageProject.getPriceNow() != null) {
                                 tjProject.setPriceNow(packageProject.getPriceNow());
@@ -118,7 +171,7 @@
                 }
                 aPackage.setTjProjectList(tjProjectList);
                 aPackage.setAllProName(allProName.toString());
-                aPackage.setAllSonName(allSonName.toString());
+//                aPackage.setAllSonName(allSonName.toString());
 
                 StringBuffer a = new StringBuffer();
                 List<String> b = new ArrayList<>();
@@ -183,14 +236,61 @@
 //            return getDataTable(tjPackageList);
 //        }
         String pacName="";
-        if (cusSex.equals("2")) {
-            return getDataTable(tjPackageService.getPacListBySqlAndAll(pacName));
-
+        if (cusSex==null || cusSex.equals("2")) {
+            final List<TjPackage> pacListBySqlAndAll = tjPackageService.getPacListBySqlAndAll(pacName);
+            if (pacListBySqlAndAll!=null){
+                for (TjPackage tjPackage : pacListBySqlAndAll) {
+                    List<TjProject> res=new ArrayList<>();
+                    LambdaQueryWrapper<TjPackageProject> wqq=new LambdaQueryWrapper<>();
+                    wqq.eq(TjPackageProject::getPacId,tjPackage.getPacId());
+                    final List<TjPackageProject> list = ppservice.list(wqq);
+                    if (list!=null){
+                        for (TjPackageProject tjPackageProject : list) {
+                            final TjProject byId = tjProjectService.getById(tjPackageProject.getProId());
+                            res.add(byId);
+                        }
+                        tjPackage.setTjProjectList(res);
+                    }
+                }
+            }
+            return getDataTable(pacListBySqlAndAll);
         } else {
             if (cusSex.equals("0")) {
-                return getDataTable(tjPackageService.getPacListBySqlAndMan(pacName));
+                final List<TjPackage> pacListBySqlAndMan = tjPackageService.getPacListBySqlAndMan(pacName);
+                if (pacListBySqlAndMan!=null){
+                    for (TjPackage tjPackage : pacListBySqlAndMan) {
+                        List<TjProject> res=new ArrayList<>();
+                        LambdaQueryWrapper<TjPackageProject> wqq=new LambdaQueryWrapper<>();
+                        wqq.eq(TjPackageProject::getPacId,tjPackage.getPacId());
+                        final List<TjPackageProject> list = ppservice.list(wqq);
+                        if (list!=null){
+                            for (TjPackageProject tjPackageProject : list) {
+                                final TjProject byId = tjProjectService.getById(tjPackageProject.getProId());
+                                res.add(byId);
+                            }
+                            tjPackage.setTjProjectList(res);
+                        }
+                    }
+                }
+                return getDataTable(pacListBySqlAndMan);
             }else {
-                return getDataTable(tjPackageService.getPacListBySqlAndWomen(pacName));
+                final List<TjPackage> pacListBySqlAndWomen = tjPackageService.getPacListBySqlAndWomen(pacName);
+                if (pacListBySqlAndWomen!=null){
+                    for (TjPackage tjPackage : pacListBySqlAndWomen) {
+                        List<TjProject> res=new ArrayList<>();
+                        LambdaQueryWrapper<TjPackageProject> wqq=new LambdaQueryWrapper<>();
+                        wqq.eq(TjPackageProject::getPacId,tjPackage.getPacId());
+                        final List<TjPackageProject> list = ppservice.list(wqq);
+                        if (list!=null){
+                            for (TjPackageProject tjPackageProject : list) {
+                                final TjProject byId = tjProjectService.getById(tjPackageProject.getProId());
+                                res.add(byId);
+                            }
+                            tjPackage.setTjProjectList(res);
+                        }
+                    }
+                }
+                return getDataTable(pacListBySqlAndWomen);
             }
         }
     }
@@ -295,22 +395,32 @@
             BigDecimal money = new BigDecimal("0.00");
             tjPackage.setPrice(money);
         }
+        tjPackage.setPym(PinyinUtil.getFirstLetter(tjPackage.getPacName(),""));
         if (tjPackageService.save(tjPackage)) {
             List<TjProject> tjProjectList = tjPackage.getTjProjectList();
             if (null != tjProjectList && tjProjectList.size() > 0) {
                 BigDecimal money = new BigDecimal("0.00");
                 for (TjProject tjProject : tjProjectList) {
                     TjPackageProject tjpp = new TjPackageProject();
-                    if (null != tjProject.getPriceNow()) {
-                        tjpp.setPriceNow(tjProject.getPriceNow().setScale(Integer.parseInt(configService.selectConfigByKey("sys.price.save")), Integer.parseInt(configService.selectConfigByKey("sys.price"))));
-                    } else {
-                        tjpp.setPriceNow(tjProject.getProPrice());
-                    }
+//                    if (null != tjProject.getPriceNow()) {
+//                        tjpp.setPriceNow(tjProject.getPriceNow().setScale(Integer.parseInt(configService.selectConfigByKey("sys.price.save")), Integer.parseInt(configService.selectConfigByKey("sys.price"))));
+//                    } else {
+//                        tjpp.setPriceNow(tjProject.getProPrice());
+//                    }
+                    tjpp.setPriceNow(tjProject.getProPrice());
                     tjpp.setProId(tjProject.getProId());
                     tjpp.setPacId(tjPackage.getPacId());
+                    //鍒ゆ柇褰撳墠濂楅涓嬫湁娌℃湁杩欎釜椤圭洰  鏈夌殑璇濊烦杩囨坊鍔�
+                    LambdaQueryWrapper<TjPackageProject> wqq=new LambdaQueryWrapper<>();
+                    wqq.eq(TjPackageProject::getPacId,tjPackage.getPacId());
+                    wqq.eq(TjPackageProject::getProId,tjProject.getProId());
+                    final TjPackageProject one = ppservice.getOne(wqq);
+                    if (one!=null){
+                        continue;
+                    }
                     ppservice.save(tjpp);
-                    if (null != tjProject.getPriceNow()) {
-                        money = money.add(tjProject.getPriceNow());
+                    if (null != tjProject.getProPrice()) {
+                        money = money.add(tjProject.getProPrice());
                     }
                 }
                 tjPackage.setPrice(money.setScale(Integer.parseInt(configService.selectConfigByKey("sys.price.save")), Integer.parseInt(configService.selectConfigByKey("sys.price"))));
@@ -329,6 +439,7 @@
     @ApiOperation(value = "淇敼浣撴濂楅")
     //@PreAuthorize("@ss.hasPermi('system:package:edit')")
     public AjaxResult edit(@RequestBody @ApiParam(value = "浣撴濂楅瀵硅薄") TjPackage tjPackage) {
+        tjPackage.setPym(PinyinUtil.getFirstLetter(tjPackage.getPacName(),""));
         if (tjPackageService.updateById(tjPackage)) {
             List<TjProject> tjProjectList = tjPackage.getTjProjectList();
             if (null != tjProjectList && tjProjectList.size() > 0) {
@@ -337,17 +448,27 @@
                 ppservice.remove(wq);
                 BigDecimal money = new BigDecimal(0);
                 for (TjProject tjProject : tjProjectList) {
-                    TjPackageProject tjpp = new TjPackageProject();
-                    if (null != tjProject.getPriceNow()) {
-                        tjpp.setPriceNow(tjProject.getPriceNow());
-                    } else {
-                        tjpp.setPriceNow(new BigDecimal(0).setScale(Integer.parseInt(configService.selectConfigByKey("sys.price.save")), Integer.parseInt(configService.selectConfigByKey("sys.price"))));
+                    //鍒ゆ柇褰撳墠濂楅涓嬫湁娌℃湁杩欎釜椤圭洰  鏈夌殑璇濊烦杩囨坊鍔�
+                    LambdaQueryWrapper<TjPackageProject> wqq=new LambdaQueryWrapper<>();
+                    wqq.eq(TjPackageProject::getPacId,tjPackage.getPacId());
+                    wqq.eq(TjPackageProject::getProId,tjProject.getProId());
+                    final TjPackageProject one = ppservice.getOne(wqq);
+                    if (one!=null){
+                        continue;
                     }
+
+                    TjPackageProject tjpp = new TjPackageProject();
+//                    if (null != tjProject.getPriceNow()) {
+//                        tjpp.setPriceNow(tjProject.getPriceNow());
+//                    } else {
+//                        tjpp.setPriceNow(new BigDecimal(0).setScale(Integer.parseInt(configService.selectConfigByKey("sys.price.save")), Integer.parseInt(configService.selectConfigByKey("sys.price"))));
+//                    }
+                    tjpp.setPriceNow(tjProject.getProPrice());
                     tjpp.setProId(tjProject.getProId());
                     tjpp.setPacId(tjPackage.getPacId());
                     ppservice.save(tjpp);
-                    if (null != tjProject.getPriceNow()) {
-                        money = money.add(tjProject.getPriceNow());
+                    if (null != tjProject.getProPrice()) {
+                        money = money.add(tjProject.getProPrice());
                     }
                 }
                 tjPackage.setPrice(money.setScale(Integer.parseInt(configService.selectConfigByKey("sys.price.save")), Integer.parseInt(configService.selectConfigByKey("sys.price"))));

--
Gitblit v1.8.0