From 053f6187b5f6cda1725ed63df8a8766b5976fb53 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期三, 06 八月 2025 09:01:35 +0800
Subject: [PATCH] 菌种库所有代码

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TPedigreeChartController.java |   64 +++++++++++++++++++++----------
 1 files changed, 43 insertions(+), 21 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TPedigreeChartController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TPedigreeChartController.java
index 364aad8..b1e5f66 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TPedigreeChartController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TPedigreeChartController.java
@@ -11,6 +11,7 @@
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.exception.GlobalException;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.bean.BeanUtils;
 import com.ruoyi.framework.web.service.TokenService;
@@ -32,6 +33,7 @@
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
 import java.util.*;
+import java.util.concurrent.locks.ReentrantLock;
 import java.util.stream.Collectors;
 
 /**
@@ -48,6 +50,7 @@
 public class TPedigreeChartController {
     @Resource
     private TPedigreeChartDetailService pedigreeChartDetailService;
+
     @Resource
     private TPedigreeChartService pedigreeChartService;
     @Resource
@@ -65,6 +68,7 @@
     @ApiOperation(value = "谱系图-获取谱系图分页列表",response = TPedigreeChartQuery.class)
     @PostMapping(value = "/api/t-pedigree-chart/pageList")
     public R<PageInfo<TPedigreeChartVO>> pageList(@RequestBody String param) {
+
         TPedigreeChartQuery query = JSON.parseObject(param, TPedigreeChartQuery.class);
         SysUser sysUser = sysUserService.selectUserById(tokenService.getLoginUser().getUserId());
         if (sysUser.getRoleType().equals("2")){
@@ -77,6 +81,9 @@
                     return R.ok(new PageInfo<>());
                 }
                 query.setProjectIds(projectIds);
+            }else{
+                return R.ok(new PageInfo<>());
+
             }
         }else if (!sysUser.getRoleType().equals("1")){
             List<String> allProjectIds = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getUserId, tokenService.getLoginUser().getUserId())
@@ -88,6 +95,9 @@
                     return R.ok(new PageInfo<>());
                 }
                 query.setProjectIds(projectIds);
+            }else{
+                return R.ok(new PageInfo<>());
+
             }
         }
         return R.ok(pedigreeChartService.pageList(query));
@@ -158,7 +168,6 @@
                         tPedigreeChartParentTwoDTO.setVaccinateTime(LocalDateTime.now());
                         tPedigreeChartParentTwoDTO.setStorageTime(LocalDateTime.now());
                         tPedigreeChartParentTwoDTO.setParentId(count.getId());
-                        tPedigreeChartParentTwoDTO.setPedigreeChartId(parent.getId());
                         tPedigreeChartParentTwoDTO.setId(null);
 
                         pedigreeChartDetailService.save(tPedigreeChartParentTwoDTO);
@@ -177,6 +186,7 @@
                                     tPedigreeChartParentThreeDTO.setParentId(childCount.getId());
                                     tPedigreeChartParentThreeDTO.setPedigreeChartId(parent.getId());
                                     tPedigreeChartParentThreeDTO.setType(1);
+                                    tPedigreeChartParentThreeDTO.setVaccinateId(loginUser.getUserId()+"");
                                     if (tPedigreeChartParentThreeDTO.getStatus()==null){
                                         tPedigreeChartParentThreeDTO.setStatus(1);
                                     }
@@ -196,26 +206,28 @@
             String child = JSON.toJSONString(oneLevel);
             parent.setJson(child);
             pedigreeChartService.updateById(parent);
-            // 新增消息
-            TNotice tNotice = new TNotice();
-            List<String> allProjectIds = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getUserId, tokenService.getLoginUser().getUserId())
-                    .eq(TProjectTeamStaff::getRoleType, 2)
-                    .list().stream().map(TProjectTeamStaff::getTeamId).collect(Collectors.toList());
-            if (!allProjectIds.isEmpty()){
-                TProjectTeam team = projectTeamService.lambdaQuery().in(TProjectTeam::getId, allProjectIds)
-                        .eq(TProjectTeam::getStatus, 1)
-                        .orderByDesc(BaseModel::getCreateTime).last("limit 1").one();
-                TProjectTeamStaff projectTeamStaff = projectTeamStaffService.lambdaQuery()
-                        .eq(TProjectTeamStaff::getTeamId, team.getId()).eq(TProjectTeamStaff::getRoleType, 2).one();
-                tNotice.setCommitId(tokenService.getLoginUser().getUserId()+"");
-                tNotice.setUserId(projectTeamStaff.getUserId());
-                tNotice.setStatus(1);
-                tNotice.setNoticeContent("菌种实验员新增【1】条【菌种传代生产谱系图】操作,等待您签字确认;");
-                tNotice.setDataId(parent.getId());
-                tNotice.setNoticeType(4);
-                noticeService.save(tNotice);
-            }
 
+
+        }
+
+        // 新增消息
+        TNotice tNotice = new TNotice();
+        List<String> allProjectIds = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getTeamId,parent.getProjectId() )
+                .eq(TProjectTeamStaff::getRoleType, 2)
+                .list().stream().map(TProjectTeamStaff::getTeamId).collect(Collectors.toList());
+        if (!allProjectIds.isEmpty()){
+            TProjectTeam team = projectTeamService.lambdaQuery().in(TProjectTeam::getId, allProjectIds)
+                    .eq(TProjectTeam::getStatus, 1)
+                    .orderByDesc(BaseModel::getCreateTime).last("limit 1").one();
+            TProjectTeamStaff projectTeamStaff = projectTeamStaffService.lambdaQuery()
+                    .eq(TProjectTeamStaff::getTeamId, team.getId()).eq(TProjectTeamStaff::getRoleType, 2).one();
+            tNotice.setCommitId(tokenService.getLoginUser().getUserId()+"");
+            tNotice.setUserId(projectTeamStaff.getUserId());
+            tNotice.setStatus(1);
+            tNotice.setNoticeContent("菌种实验员新增【1】条【菌种传代生产谱系图】操作,等待您签字确认;");
+            tNotice.setDataId(parent.getId());
+            tNotice.setNoticeType(4);
+            noticeService.save(tNotice);
         }
         return R.ok();
     }
@@ -242,6 +254,16 @@
             parent.setJson(child);
         }
         pedigreeChartService.updateById(parent);
+        if (parent.getGenerationType()==1){
+            TPedigreeChartDetail one = pedigreeChartDetailService.getOne(new LambdaQueryWrapper<TPedigreeChartDetail>()
+                    .eq(TPedigreeChartDetail::getPedigreeChartId, "0"));
+            if (one!=null){
+                one.setStrainName(parent.getStrainName());
+                one.setStrainCode(parent.getStrainCode());
+                pedigreeChartDetailService.updateById( one);
+            }
+        }
+
 //        pedigreeChartDetailService.remove(new LambdaQueryWrapper<TPedigreeChartDetail>()
 //                .eq(TPedigreeChartDetail::getPedigreeChartId,  dto.getParent().getId()));
 //        if (!dto.getOne().isEmpty()){
@@ -335,7 +357,7 @@
         }
         TPedigreeChartDetailDTO dto = JSON.parseObject(param, TPedigreeChartDetailDTO.class);
         if (dto.getParentId().equals("0")){
-            // 新增祖代
+            // 新增祖/母代
             dto.setParentId("0");
             pedigreeChartDetailService.save(dto);
         }else{

--
Gitblit v1.7.1