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-admin/src/main/java/com/ltkj/web/controller/system/TjPackageController.java |  131 ++++++++++++++++++++++++++++++++++---------
 1 files changed, 104 insertions(+), 27 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 548e140..9c7ef7e 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
@@ -22,6 +22,7 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
+import jodd.util.StringUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -56,18 +57,58 @@
     private ITjConsumablesService tjConsumablesService;
     @Resource
     private ISysConfigService configService;
-
-    @Resource
-    private TjAsyncService asyncService;
-
-    @Resource
-    private RedisCache redisCache;
-
     @Autowired
     private IMallKeywordService mallKeywordService;
-
     @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.isEmpty()) {
+            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<TjPackageProject> pplist = ppservice.getTjPackageProjectListByPacId(String.valueOf(aPackage.getPacId()));
+                if (null != pplist) {
+                    for (TjPackageProject packageProject : pplist) {
+                        TjProject tjProject = tjProjectService.getById(packageProject.getProId());
+                        if (null != tjProject) {
+                            packageProject.setProName(tjProject.getProName());
+                        }
+                    }
+                }
+                aPackage.setPackageProjects(pplist);
+            return AjaxResult.success(aPackage);
+        }
+        return AjaxResult.error();
+    }
+
 
     /**
      * 鏌ヨ浣撴濂楅鍒楄〃
@@ -78,7 +119,7 @@
     public TableDataInfo list(@ApiParam(value = "浣撴濂楅瀵硅薄") TjPackage tjPackage) {
         startPage();
         List<TjPackage> list = tjPackageService.selectTjPackageList(tjPackage);
-        if (null != list && list.size() > 0) {
+        if (null != list && !list.isEmpty()) {
             for (TjPackage aPackage : list) {
                 StringBuilder allProName = new StringBuilder();
                 StringBuilder allSonName = new StringBuilder();
@@ -334,17 +375,19 @@
             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) {
+            if (null != tjProjectList && !tjProjectList.isEmpty()) {
                 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());
                     //鍒ゆ柇褰撳墠濂楅涓嬫湁娌℃湁杩欎釜椤圭洰  鏈夌殑璇濊烦杩囨坊鍔�
@@ -356,8 +399,8 @@
                         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"))));
@@ -376,25 +419,36 @@
     @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) {
+            if (null != tjProjectList && !tjProjectList.isEmpty()) {
                 LambdaQueryWrapper<TjPackageProject> wq = new LambdaQueryWrapper<>();
                 wq.eq(TjPackageProject::getPacId, tjPackage.getPacId());
                 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"))));
@@ -495,7 +549,7 @@
             LambdaQueryWrapper<TjPackage> wq0 = new LambdaQueryWrapper<>();
             wq0.like(TjPackage::getPacName, name);
             List<TjPackage> packageList = tjPackageService.list(wq0);
-            if (null != packageList && packageList.size() > 0) {
+            if (null != packageList && !packageList.isEmpty()) {
                 for (TjPackage aPackage : packageList) {
                     List<TjProject> tjProjectList = new ArrayList<>();
                     LambdaQueryWrapper<TjPackageProject> wq = new LambdaQueryWrapper<>();
@@ -536,7 +590,7 @@
             }
 
             List<TjPackage> tjPackageList = tjPackageService.list();
-            if (null != tjPackageList && tjPackageList.size() > 0) {
+            if (null != tjPackageList && !tjPackageList.isEmpty()) {
                 List<TjPackage> lisi = new ArrayList<>();
                 for (TjPackage aPackage : tjPackageList) {
                     String pinyin = PinyinUtil.getFirstLetter(aPackage.getPacName(), "");
@@ -584,4 +638,27 @@
         }
         return AjaxResult.error("璇疯緭鍏ヤ綘瑕佹煡璇㈢殑鍐呭");
     }
+
+
+    @PostMapping("/saveOreditTjPacNew")
+    @ApiOperation(value = "浣撴濂楅鏂板淇敼鎺ュ彛")
+    public AjaxResult saveOreditTjPacNew(@RequestBody @ApiParam(value = "浣撴濂楅瀵硅薄") TjPackage tjPackage) {
+        tjPackage.setPym(PinyinUtil.getFirstLetter(tjPackage.getPacName(),""));
+        if (tjPackageService.saveOrUpdate(tjPackage)) {
+            List<TjPackageProject> projectList = tjPackage.getPackageProjects();
+            if (null != projectList && !projectList.isEmpty()) {
+                if(StringUtil.isNotBlank(tjPackage.getPacId())){
+                    if (ppservice.deleteTjPackageProjectByPacId(tjPackage.getPacId())) {
+                        for (TjPackageProject project : projectList) {
+                            project.setPacId(tjPackage.getPacId());
+                            ppservice.save(project);
+                        }
+
+                    }
+                }
+            }
+            return AjaxResult.success();
+        }
+        return AjaxResult.error();
+    }
 }

--
Gitblit v1.8.0