From c42f62b32bac302a7ac9fcde7489f7c5fc6e11aa Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期五, 06 十二月 2024 15:35:17 +0800
Subject: [PATCH] zjh20241205-3

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProjectController.java |  114 ++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 76 insertions(+), 38 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProjectController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProjectController.java
index cbcdb7a..d83d19a 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProjectController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProjectController.java
@@ -1,18 +1,17 @@
 package com.ltkj.web.controller.system;
 
 import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.concurrent.*;
 import java.util.stream.Collectors;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
 
+import cn.hutool.extra.pinyin.PinyinUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ltkj.common.core.domain.entity.SysDept;
 import com.ltkj.common.core.redis.RedisCache;
+import com.ltkj.common.utils.SecurityUtils;
 import com.ltkj.common.utils.bean.BeanUtils;
 import com.ltkj.framework.datasource.DynamicDataSourceContextHolder;
 import com.ltkj.hosp.domain.*;
@@ -26,6 +25,7 @@
 import io.swagger.annotations.ApiParam;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 import com.ltkj.common.annotation.Log;
 import com.ltkj.common.core.controller.BaseController;
@@ -65,6 +65,8 @@
     private TestMapper testMapper;
     @Resource
     private RedisCache redisCache;
+    @Autowired
+    private TjProjectXgjlService xgjlService;
 
 
     @GetMapping("/getTjHyBgList")
@@ -83,36 +85,23 @@
     @GetMapping("/getDxList")
     @ApiOperation(value = "閫夋嫨浣撴椤圭洰閫夊崟椤规椂璋冪敤鐨勬帴鍙�")
     public AjaxResult getDxList() {
-//        LambdaQueryWrapper<TjProject> wq0 = new LambdaQueryWrapper<>();
-//        wq0.eq(TjProject::getProParentId, 0);
         List<TjProject> tjProjects = tjProjectService.getDxTjProjectList();
         String config = configService.selectConfigByKey("tj_dxsxtj");
-        if(null !=config && config.equals("N")){
+        if (null != config && config.equals("N")) {
             tjProjects = tjProjectService.getOpenDxTjProjectList();
         }
-        //涓婇潰鐨勬崲sql
-//        final List<TjProject> tjProjects = tjProjectService.getProBySqlAndName(proName, checkType, deptId);
-
         if (tjProjects != null) {
             for (TjProject project : tjProjects) {
                 List<TjProject> projectList = tjProjectService.getTjProjectListBySoneId(String.valueOf(project.getProId()));
                 project.setTjProjectList(projectList);
-
-//                SysDept sysDept = deptService.selectDeptById(project.getDeptId());
-//                if (sysDept!=null){
-//                    project.setDeptName(sysDept.getDeptName());
-//                }
             }
         }
         String key = configService.selectConfigByKey("is_open_sfxm");
-        Map<String,Object> map=new HashMap<>();
-        map.put("list",tjProjects);
-        map.put("key",key);
+        Map<String, Object> map = new HashMap<>();
+        map.put("list", tjProjects);
+        map.put("key", key);
         return AjaxResult.success(map);
     }
-
-
-
 
 
     /**
@@ -150,18 +139,18 @@
      */
     @GetMapping("/getAllChildListById")
     @ApiOperation(value = "鏌ヨ椤圭洰瀛愰」")
-    public AjaxResult getAllChildListById(@RequestParam(required = false)String proId,
+    public AjaxResult getAllChildListById(@RequestParam(required = false) String proId,
                                           @RequestParam(required = false) String proName,
                                           @RequestParam(required = false) String checkType) {
-        LambdaQueryWrapper<TjProject> wq=new LambdaQueryWrapper<>();
-        if (proId!=null){
-            wq.eq(TjProject::getProParentId,proId);
+        LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>();
+        if (proId != null) {
+            wq.eq(TjProject::getProParentId, proId);
         }
-        if (proName!=null){
-            wq.like(TjProject::getProName,proName);
+        if (proName != null) {
+            wq.like(TjProject::getProName, proName);
         }
-        if (checkType!=null){
-            wq.eq(TjProject::getProCheckType,checkType);
+        if (checkType != null) {
+            wq.eq(TjProject::getProCheckType, checkType);
         }
         List<TjProject> tjProjects = tjProjectService.list(wq);
 //        List<TjProject> tjProjects = tjProjectService.getAllChildListById(proId);
@@ -221,7 +210,6 @@
         List<TjProject> tjProjects = tjProjectService.list(wq);
         return AjaxResult.success(tjProjects);
     }
-
 
 
     /**
@@ -288,6 +276,7 @@
         if (null != tjProject.getTjStandardList() && tjProject.getTjStandardList().size() > 0) {
             tjProject.setProStandard(1);
         }
+        tjProject.setProEngName(PinyinUtil.getFirstLetter(tjProject.getProName(),""));
         if (tjProjectService.save(tjProject)) {
             if (null != tjProject.getSfxmId()) {
                 DictProSfxm proSfxm = new DictProSfxm();
@@ -351,6 +340,7 @@
     @Log(title = "浣撴椤圭洰", businessType = BusinessType.UPDATE)
     @PutMapping
     @ApiOperation(value = "淇敼浣撴椤圭洰")
+    @Transactional
     public AjaxResult edit(@RequestBody @ApiParam(value = "浣撴椤圭洰瀵硅薄") TjProject tjProject) {
         if (tjProject.getProStatus() == 1) {
             LambdaQueryWrapper<TjPackageProject> wq1 = new LambdaQueryWrapper<>();
@@ -360,8 +350,21 @@
                 return AjaxResult.error("璇ラ」鐩鍦ㄥ椁愪腑浣跨敤,鏆傛椂涓嶈兘鍋滅敤");
             }
         }
+        tjProject.setProEngName(PinyinUtil.getFirstLetter(tjProject.getProName(),""));
+
+        TjProject ytjproject = tjProjectService.getById(tjProject.getProId());
+        Date date=new Date();
         if (tjProject.getProParentId() == 0) {
             if (tjProjectService.updateById(tjProject)) {
+                if(null !=ytjproject){
+                    if(ytjproject.getProPrice().compareTo(tjProject.getProPrice())!=0){
+                        TjProjectXgjl xgjl=new TjProjectXgjl();
+                        BeanUtils.copyBeanProp(xgjl,ytjproject);
+                        xgjl.setCreateTime(date);
+                        xgjl.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName());
+                        xgjlService.save(xgjl);
+                    }
+                }
                 if (dictProSfxmService.deletedProSfxm(tjProject.getProId())) {
                     if (null != tjProject.getSfxmId()) {
                         DictProSfxm proSfxm = new DictProSfxm();
@@ -405,6 +408,15 @@
             tjProject.setIsSampling(byId1.getIsSampling());
         }
         if (tjProjectService.updateById(tjProject)) {
+            if(null !=ytjproject){
+                if(ytjproject.getProPrice().compareTo(tjProject.getProPrice())!=0){
+                    TjProjectXgjl xgjl=new TjProjectXgjl();
+                    BeanUtils.copyBeanProp(xgjl,ytjproject);
+                    xgjl.setCreateTime(date);
+                    xgjl.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName());
+                    xgjlService.save(xgjl);
+                }
+            }
             if (dictProSfxmService.deletedProSfxm(tjProject.getProId())) {
                 if (null != tjProject.getSfxmId()) {
                     DictProSfxm proSfxm = new DictProSfxm();
@@ -454,6 +466,7 @@
     @Log(title = "浣撴椤圭洰", businessType = BusinessType.DELETE)
     @DeleteMapping("/{proIds}")
     @ApiOperation(value = "鍒犻櫎浣撴椤圭洰(鍙垹闄ょ埗椤圭洰鍜屽瓙椤圭洰)")
+    @Transactional
     public AjaxResult remove(@PathVariable Long[] proIds) {
         if (null == proIds || proIds.length <= 0) {
             return AjaxResult.error("璇烽�夋嫨瑕佸垹闄ょ殑椤圭洰");
@@ -485,6 +498,9 @@
                     wq.eq(TjStandard::getProId, proId);
                     tjStandardService.remove(wq);
                     tjProjectService.removeById(project1.getProId());
+                    TjProject project = tjProjectService.getById(project1.getProParentId());
+                    project.setProPrice(tjProjectService.getMoneys(project1.getProParentId().toString()));
+                    tjProjectService.updateById(project);
                 }
             }
         }
@@ -544,13 +560,35 @@
         TjProject tjProject = tjProjectService.getById(proId);
         return AjaxResult.success(tjProject);
     }
-//    /**
-//     * 鑾峰彇閮ㄩ棬鏍戝垪琛�
-//     */
-//    @GetMapping("/deptTree")
-//    @ApiOperation("鑾峰彇閮ㄩ棬鏍戝垪琛�")
-//    public AjaxResult deptTree(SysDept dept) {
-//        return success(deptService.selectDeptTreeList(dept));
-//    }
+
+
+    /**
+     * 閫夋嫨浣撴椤圭洰閫夊崟椤规椂璋冪敤鐨勬帴鍙�
+     */
+    @GetMapping("/getProParentIdDxList")
+    @ApiOperation(value = "閫夋嫨浣撴椤圭洰(鎵�鏈夋湇椤圭洰)閫夊崟椤规椂璋冪敤鐨勬帴鍙�")
+    public AjaxResult getProParentIdDxList() {
+        List<TjProject> tjProjects = tjProjectService.getDxTjProjectList();
+        String config = configService.selectConfigByKey("tj_dxsxtj");
+        if (null != config && config.equals("N")) {
+            tjProjects = tjProjectService.getOpenDxTjProjectList();
+        }
+        String key = configService.selectConfigByKey("is_open_sfxm");
+        Map<String, Object> map = new HashMap<>();
+        map.put("list", tjProjects);
+        map.put("key", key);
+        return AjaxResult.success(map);
+    }
+
+    @GetMapping("/getProSonDxList")
+    @ApiOperation(value = "閫夋嫨浣撴椤圭洰(鏍规嵁鐖堕」id閫夋嫨瀛愰」)閫夊崟椤规椂璋冪敤鐨勬帴鍙�")
+    public AjaxResult getProSonDxList(@RequestParam String proId) {
+        List<TjProject> projectList = tjProjectService.getTjProjectListBySoneId(proId);
+        String key = configService.selectConfigByKey("is_open_sfxm");
+        Map<String, Object> map = new HashMap<>();
+        map.put("list", projectList);
+        map.put("key", key);
+        return AjaxResult.success(map);
+    }
 
 }

--
Gitblit v1.8.0