From 37e2d3c73caac445d1d8e229747b439e3719c13b Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期二, 03 六月 2025 17:04:13 +0800
Subject: [PATCH] zjh20250603

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProjectController.java |  200 +++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 190 insertions(+), 10 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 2f592be..85781cc 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
@@ -93,7 +93,7 @@
         List<TjProject> tjProjects = tjProjectService.getDxTjProjectList();
         String config = configService.selectConfigByKey("tj_dxsxtj");
         if (null != config && config.equals("N")) {
-            tjProjects = tjProjectService.getOpenDxTjProjectList();
+            tjProjects = tjProjectService.getOpenDxTjProjectList(null);
         }
         if (tjProjects != null) {
             for (TjProject project : tjProjects) {
@@ -349,6 +349,8 @@
     @ApiOperation(value = "淇敼浣撴椤圭洰")
     @Transactional
     public AjaxResult edit(@RequestBody @ApiParam(value = "浣撴椤圭洰瀵硅薄") TjProject tjProject) {
+        TjProject ytjproject = tjProjectService.getById(tjProject.getProId());
+        if(null==ytjproject)return AjaxResult.error();
         if (tjProject.getProStatus() == 1) {
             LambdaQueryWrapper<TjPackageProject> wq1 = new LambdaQueryWrapper<>();
             wq1.eq(TjPackageProject::getProId, tjProject.getProId());
@@ -356,14 +358,21 @@
             if (null != list1 && !list1.isEmpty()) {
                 return AjaxResult.error("璇ラ」鐩鍦ㄥ椁愪腑浣跨敤,鏆傛椂涓嶈兘鍋滅敤");
             }
+            if(tjProject.getProParentId() !=0){
+                LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>();
+                wq.eq(TjProject::getProParentId, tjProject.getProParentId());
+                wq.eq(TjProject::getProStatus,0);
+                List<TjProject> list = tjProjectService.list(wq);
+                if (null != list && !list.isEmpty()) {
+                    int i = list.size();
+                    if(i<2) 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);
@@ -371,7 +380,6 @@
                         xgjl.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName());
                         xgjlService.save(xgjl);
                     }
-                }
                 if (dictProSfxmService.deletedProSfxm(tjProject.getProId())) {
                     if (null != tjProject.getSfxmId()) {
                         DictProSfxm proSfxm = new DictProSfxm();
@@ -380,7 +388,11 @@
                         dictProSfxmService.save(proSfxm);
                     }
                 }
-                List<TjProject> list = tjProjectService.getTjProjectListBySoneId(String.valueOf(tjProject.getProId()));
+                LambdaQueryWrapper<TjProject> wqq = new LambdaQueryWrapper<>();
+                wqq.eq(TjProject::getProParentId,tjProject.getProId());
+                if(ytjproject.getProStatus()==0)
+                    wqq.eq(TjProject::getProStatus,0);
+                List<TjProject> list = tjProjectService.list(wqq);
                 if (null != list && !list.isEmpty()) {
                     for (TjProject project : list) {
                         project.setDeptId(tjProject.getDeptId());
@@ -415,7 +427,6 @@
             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);
@@ -423,7 +434,7 @@
                     xgjl.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName());
                     xgjlService.save(xgjl);
                 }
-            }
+
             if (dictProSfxmService.deletedProSfxm(tjProject.getProId())) {
                 if (null != tjProject.getSfxmId()) {
                     DictProSfxm proSfxm = new DictProSfxm();
@@ -575,19 +586,45 @@
      * 閫夋嫨浣撴椤圭洰閫夊崟椤规椂璋冪敤鐨勬帴鍙�
      */
     @GetMapping("/getProParentIdDxList")
-    @ApiOperation(value = "閫夋嫨浣撴椤圭洰(鎵�鏈夋湇椤圭洰)閫夊崟椤规椂璋冪敤鐨勬帴鍙�")
+    @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();
+            tjProjects = tjProjectService.getOpenDxTjProjectList(null);
         }
         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("/getProParentIdDxListByFenYe")
+    @ApiOperation(value = "閫夋嫨浣撴椤圭洰(鎵�鏈夐〉闈㈤」鐩�)閫夊崟椤规椂璋冪敤鐨勬帴鍙�(鏈夊垎椤�)")
+    public AjaxResult getProParentIdDxListByFenYe(@RequestParam(defaultValue = "1") int page,@RequestParam(defaultValue = "10") int pageSize,String nr) {
+        List<TjProject> tjProjects = tjProjectService.getDxTjProjectList();
+        String config = configService.selectConfigByKey("tj_dxsxtj");
+        if (null != config && config.equals("N")) {
+            tjProjects = tjProjectService.getOpenDxTjProjectList(nr);
+        }
+        String key = configService.selectConfigByKey("is_open_sfxm");
+        Map<String, Object> map = new HashMap<>();
+
+        if(null !=tjProjects && !tjProjects.isEmpty()){
+            List<TjProject> collect = tjProjects.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
+            map.put("total", tjProjects.size());
+            map.put("list", collect);
+        }else {
+            map.put("total",0);
+            map.put("list", tjProjects);
+        }
+        map.put("key", key);
+        return AjaxResult.success(map);
+    }
+
 
     @GetMapping("/getProSonDxList")
     @ApiOperation(value = "閫夋嫨浣撴椤圭洰(鏍规嵁鐖堕」id閫夋嫨瀛愰」)閫夊崟椤规椂璋冪敤鐨勬帴鍙�")
@@ -625,4 +662,147 @@
             throw new RuntimeException(e);
         }
     }
+
+
+    @GetMapping("/getProListByBblx")
+    @ApiOperation(value = "鏌ヨ鏍囨湰瀵瑰簲椤圭洰鎴栨湭瀵瑰簲鏍囨湰鐨勯」鐩�")
+    public AjaxResult getProListByBblx(@ApiParam(value = "鏍囨湰绫诲瀷")@RequestParam(required = false) String bblx) {
+        try {
+            List<TjProject> projectList =tjProjectService.getProListByBblx(bblx);
+            return AjaxResult.success(projectList);
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    @GetMapping("/delProByBblx")
+    @ApiOperation(value = "鍒犻櫎椤圭洰瀵瑰簲鏍囨湰")
+    @Transactional
+    public AjaxResult delProByBblx(@ApiParam(value = "椤圭洰ID")@RequestParam(required = false) String proId) {
+        try {
+            TjProject tjProject = tjProjectService.getById(proId);
+            tjProject.setSpecimenType(null);
+            tjProjectService.updateById(tjProject);
+            return AjaxResult.success();
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+
+    @PostMapping("/updateProByBblx")
+    @ApiOperation(value = "淇敼鎵�閫夐」鐩殑鏍囨湰绫诲瀷")
+    @Transactional
+    public AjaxResult updateProByBblx(@ApiParam(value = "椤圭洰ID闆嗗悎")@RequestParam(required = false) List<String> proIds,
+                                      @ApiParam(value = "鏍囨湰绫诲瀷")@RequestParam(required = false)String bblx) {
+        try {
+            if(null !=  proIds && !proIds.isEmpty()){
+                for (String proId : proIds) {
+                    TjProject tjProject = tjProjectService.getById(proId);
+                    tjProject.setSpecimenType(bblx);
+                    tjProjectService.updateById(tjProject);
+                }
+            }
+            return AjaxResult.success();
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+
+
+
+
+
+    @GetMapping("/getProListByBwwh")
+    @ApiOperation(value = "鏌ヨ閮ㄤ綅瀵瑰簲椤圭洰鎴栨湭瀵瑰簲閮ㄤ綅鐨勯」鐩�")
+    public AjaxResult getProListByBwwh(@ApiParam(value = "鏍囨湰绫诲瀷")@RequestParam(required = false) String bw) {
+        try {
+            List<TjProject> projectList =tjProjectService.getProListByBwwh(bw);
+            return AjaxResult.success(projectList);
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    @GetMapping("/delProByBbwwh")
+    @ApiOperation(value = "鍒犻櫎椤圭洰瀵瑰簲閮ㄤ綅")
+    @Transactional
+    public AjaxResult delProByBbwwh(@ApiParam(value = "椤圭洰ID")@RequestParam(required = false) String proId) {
+        try {
+            TjProject tjProject = tjProjectService.getById(proId);
+            tjProject.setCheckBw(null);
+            tjProjectService.updateById(tjProject);
+            return AjaxResult.success();
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    @PostMapping("/updateProByBwwh")
+    @ApiOperation(value = "淇敼鎵�閫夐」鐩殑閮ㄤ綅")
+    @Transactional
+    public AjaxResult updateProByBwwh(@ApiParam(value = "椤圭洰ID闆嗗悎")@RequestParam(required = false) List<String> proIds,
+                                      @ApiParam(value = "鏍囨湰绫诲瀷")@RequestParam(required = false)String bw) {
+        try {
+            if(null !=  proIds && !proIds.isEmpty()){
+                for (String proId : proIds) {
+                    TjProject tjProject = tjProjectService.getById(proId);
+                    tjProject.setCheckBw(bw);
+                    tjProjectService.updateById(tjProject);
+                }
+            }
+            return AjaxResult.success();
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+
+//    @PostMapping("/addOrupdateProByBz")
+//    @ApiOperation(value = "鏂板鎴栦慨鏀规墍閫夐」鐩殑瀵瑰簲鐥呯淇℃伅")
+//    @Transactional
+//    public AjaxResult addOrupdateProByBz(@ApiParam(value = "椤圭洰ID闆嗗悎")@RequestParam(required = false) List<String> proIds,
+//                                         @ApiParam(value = "鐥呯ID")@RequestParam(required = false)String bz) {
+//        try {
+//            if(null !=  proIds && !proIds.isEmpty()){
+//                bzProService.remove(new LambdaQueryWrapper<>(TjBzPro.class).eq(TjBzPro::getBzId,bz));
+//                for (String proId : proIds) {
+//                    TjBzPro bzPro=new TjBzPro();
+//                    bzPro.setBzId(Long.valueOf(bz));
+//                    bzPro.setProId(Long.valueOf(proId));
+//                    bzProService.save(bzPro);
+//                }
+//            }
+//            return AjaxResult.success();
+//        } catch (Exception e) {
+//            throw new RuntimeException(e);
+//        }
+//    }
+//
+//
+//    @GetMapping("/getProByBz")
+//    @ApiOperation(value = "鏌ヨ鐥呯瀵瑰簲椤圭洰")
+//    public AjaxResult getProByBz(@ApiParam(value = "鐥呯ID")@RequestParam(required = false)String bz) {
+//        try {
+//            List<TjBzPro> list = bzProService.list(new LambdaQueryWrapper<>(TjBzPro.class).eq(TjBzPro::getBzId, bz));
+//            return AjaxResult.success(list);
+//        } catch (Exception e) {
+//            throw new RuntimeException(e);
+//        }
+//    }
+//
+//
+//    @DeleteMapping("/delProByBz")
+//    @ApiOperation(value = "鍒犻櫎鐥呯瀵瑰簲椤圭洰")
+//    public AjaxResult delProByBz(@ApiParam(value = "鐥呯ID")@RequestParam(required = false)String bz,
+//                                 @ApiParam(value = "椤圭洰ID")@RequestParam(required = false)String proId) {
+//        try {
+//            bzProService.remove(new LambdaQueryWrapper<>(TjBzPro.class).eq(TjBzPro::getBzId,bz).eq(TjBzPro::getProId,proId));
+//            return AjaxResult.success();
+//        } catch (Exception e) {
+//            throw new RuntimeException(e);
+//        }
+//    }
+
 }

--
Gitblit v1.8.0