From b7ec3aff011f05e236e76be844540dbe776f7353 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 27 六月 2025 19:12:03 +0800
Subject: [PATCH] bug修改

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TProjectTeamController.java |  206 ++++++++++++++++++++++++++++++---------------------
 1 files changed, 122 insertions(+), 84 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TProjectTeamController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TProjectTeamController.java
index 65b1130..0822c93 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TProjectTeamController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TProjectTeamController.java
@@ -223,98 +223,136 @@
         projectTeam.setStatus(dto.getStatus());
         projectTeamService.updateById(projectTeam);
 
-        // 封存项目课题方案
-        List<TProjectProposal> projectProposals = projectProposalService.list(Wrappers.lambdaQuery(TProjectProposal.class)
-                .eq(TProjectProposal::getTeamId, dto.getId()));
-        if(!CollectionUtils.isEmpty(projectProposals)){
-            for (TProjectProposal projectProposal : projectProposals) {
-                projectProposal.setAuditStatus(5);
+        if(dto.getStatus() == 2){
+            // 封存项目课题方案
+            List<TProjectProposal> projectProposals = projectProposalService.list(Wrappers.lambdaQuery(TProjectProposal.class)
+                    .eq(TProjectProposal::getTeamId, dto.getId()));
+            if(!CollectionUtils.isEmpty(projectProposals)){
+                for (TProjectProposal projectProposal : projectProposals) {
+                    projectProposal.setOldStatus(projectProposal.getAuditStatus());
+                    projectProposal.setAuditStatus(5);
+                }
+                projectProposalService.updateBatchById(projectProposals);
+                List<String> projectIds = projectProposals.stream().map(TProjectProposal::getId).collect(Collectors.toList());
+                // 封存实验调度
+                List<TExperimentDispatch> experimentDispatches = experimentDispatchService.list(Wrappers.lambdaQuery(TExperimentDispatch.class)
+                        .in(TExperimentDispatch::getProposalId, projectIds));
+                if(!CollectionUtils.isEmpty(experimentDispatches)){
+                    experimentDispatches.forEach(experimentDispatch -> {
+                        experimentDispatch.setOldStatus(experimentDispatch.getStatus());
+                        experimentDispatch.setStatus(3);
+                    });
+                    experimentDispatchService.updateBatchById(experimentDispatches);
+
+                    // 封存检验方法
+                    List<String> dispatchIds = experimentDispatches.stream().map(TExperimentDispatch::getId).collect(Collectors.toList());
+                    List<TTestMethodConfirmSheet> testMethodConfirmSheets = testMethodConfirmSheetService.list(Wrappers.lambdaQuery(TTestMethodConfirmSheet.class)
+                            .in(TTestMethodConfirmSheet::getDispatchId, dispatchIds));
+                    if(!CollectionUtils.isEmpty(testMethodConfirmSheets)){
+                        testMethodConfirmSheets.forEach(testMethodConfirmSheet -> {
+                            testMethodConfirmSheet.setOldStatus(testMethodConfirmSheet.getAuditStatus());
+                            testMethodConfirmSheet.setAuditStatus(5);
+                        });
+                        testMethodConfirmSheetService.updateBatchById(testMethodConfirmSheets);
+                    }
+
+                    // 封存试验方案
+                    List<TExperimentScheme> experimentSchemes = experimentSchemeService.list(Wrappers.lambdaQuery(TExperimentScheme.class)
+                            .in(TExperimentScheme::getDispatchId, dispatchIds));
+                    if(!CollectionUtils.isEmpty(experimentSchemes)){
+                        experimentSchemes.forEach(experimentScheme -> {
+                            experimentScheme.setOldStatus(experimentScheme.getStatus());
+                            experimentScheme.setStatus(5);
+                        });
+                        experimentSchemeService.updateBatchById(experimentSchemes);
+                    }
+
+                    // 封存取样记录
+                    List<TSamplingRecord> samplingRecords = samplingRecordService.list(Wrappers.lambdaQuery(TSamplingRecord.class)
+                            .in(TSamplingRecord::getDispatchId, dispatchIds));
+                    if(!CollectionUtils.isEmpty(samplingRecords)){
+                        samplingRecords.forEach(samplingRecord -> {
+                            samplingRecord.setOldStatus(samplingRecord.getStatus());
+                            samplingRecord.setStatus(3);
+                        });
+                        samplingRecordService.updateBatchById(samplingRecords);
+                    }
+
+                    // 封存结果汇报
+                    List<TExperimentResultReport> experimentResultReports = experimentResultReportService.list(Wrappers.lambdaQuery(TExperimentResultReport.class)
+                            .in(TExperimentResultReport::getDispatchId, dispatchIds));
+                    if(!CollectionUtils.isEmpty(experimentResultReports)){
+                        experimentResultReports.forEach(experimentResultReport -> {
+                            experimentResultReport.setOldStatus(experimentResultReport.getStatus());
+                            experimentResultReport.setStatus(4);
+                        });
+                        experimentResultReportService.updateBatchById(experimentResultReports);
+                    }
+
+                }
             }
-            projectProposalService.updateBatchById(projectProposals);
-            List<String> projectIds = projectProposals.stream().map(TProjectProposal::getId).collect(Collectors.toList());
-            // 封存实验调度
-            List<TExperimentDispatch> experimentDispatches = experimentDispatchService.list(Wrappers.lambdaQuery(TExperimentDispatch.class)
-                    .in(TExperimentDispatch::getProposalId, projectIds));
-            if(!CollectionUtils.isEmpty(experimentDispatches)){
-                experimentDispatches.forEach(experimentDispatch -> {
-                    experimentDispatch.setStatus(3);
-                });
-                experimentDispatchService.updateBatchById(experimentDispatches);
-
-                // 封存检验方法
-                List<String> dispatchIds = experimentDispatches.stream().map(TExperimentDispatch::getId).collect(Collectors.toList());
-                List<TTestMethodConfirmSheet> testMethodConfirmSheets = testMethodConfirmSheetService.list(Wrappers.lambdaQuery(TTestMethodConfirmSheet.class)
-                        .in(TTestMethodConfirmSheet::getDispatchId, dispatchIds));
-                if(!CollectionUtils.isEmpty(testMethodConfirmSheets)){
-                    testMethodConfirmSheets.forEach(testMethodConfirmSheet -> {
-                        testMethodConfirmSheet.setAuditStatus(5);
-                    });
-                    testMethodConfirmSheetService.updateBatchById(testMethodConfirmSheets);
+        }else {
+            // 解封项目课题方案
+            List<TProjectProposal> projectProposals = projectProposalService.list(Wrappers.lambdaQuery(TProjectProposal.class)
+                    .eq(TProjectProposal::getTeamId, dto.getId()));
+            if(!CollectionUtils.isEmpty(projectProposals)){
+                for (TProjectProposal projectProposal : projectProposals) {
+                    projectProposal.setAuditStatus(projectProposal.getOldStatus());
                 }
-
-                // 封存试验方案
-                List<TExperimentScheme> experimentSchemes = experimentSchemeService.list(Wrappers.lambdaQuery(TExperimentScheme.class)
-                        .in(TExperimentScheme::getDispatchId, dispatchIds));
-                if(!CollectionUtils.isEmpty(experimentSchemes)){
-                    experimentSchemes.forEach(experimentScheme -> {
-                        experimentScheme.setStatus(5);
+                projectProposalService.updateBatchById(projectProposals);
+                List<String> projectIds = projectProposals.stream().map(TProjectProposal::getId).collect(Collectors.toList());
+                // 封存实验调度
+                List<TExperimentDispatch> experimentDispatches = experimentDispatchService.list(Wrappers.lambdaQuery(TExperimentDispatch.class)
+                        .in(TExperimentDispatch::getProposalId, projectIds));
+                if(!CollectionUtils.isEmpty(experimentDispatches)){
+                    experimentDispatches.forEach(experimentDispatch -> {
+                        experimentDispatch.setStatus(experimentDispatch.getOldStatus());
                     });
-                    experimentSchemeService.updateBatchById(experimentSchemes);
-                }
+                    experimentDispatchService.updateBatchById(experimentDispatches);
 
-                // 封存取样记录
-                List<TSamplingRecord> samplingRecords = samplingRecordService.list(Wrappers.lambdaQuery(TSamplingRecord.class)
-                        .in(TSamplingRecord::getDispatchId, dispatchIds));
-                if(!CollectionUtils.isEmpty(samplingRecords)){
-                    samplingRecords.forEach(samplingRecord -> {
-                        samplingRecord.setStatus(3);
-                    });
-                    samplingRecordService.updateBatchById(samplingRecords);
-                }
+                    // 封存检验方法
+                    List<String> dispatchIds = experimentDispatches.stream().map(TExperimentDispatch::getId).collect(Collectors.toList());
+                    List<TTestMethodConfirmSheet> testMethodConfirmSheets = testMethodConfirmSheetService.list(Wrappers.lambdaQuery(TTestMethodConfirmSheet.class)
+                            .in(TTestMethodConfirmSheet::getDispatchId, dispatchIds));
+                    if(!CollectionUtils.isEmpty(testMethodConfirmSheets)){
+                        testMethodConfirmSheets.forEach(testMethodConfirmSheet -> {
+                            testMethodConfirmSheet.setAuditStatus(testMethodConfirmSheet.getAuditStatus());
+                        });
+                        testMethodConfirmSheetService.updateBatchById(testMethodConfirmSheets);
+                    }
 
-                // 封存结果汇报
-                List<TExperimentResultReport> experimentResultReports = experimentResultReportService.list(Wrappers.lambdaQuery(TExperimentResultReport.class)
-                        .in(TExperimentResultReport::getDispatchId, dispatchIds));
-                if(!CollectionUtils.isEmpty(experimentResultReports)){
-                    experimentResultReports.forEach(experimentResultReport -> {
-                        experimentResultReport.setStatus(4);
-                    });
-                    experimentResultReportService.updateBatchById(experimentResultReports);
-                }
+                    // 封存试验方案
+                    List<TExperimentScheme> experimentSchemes = experimentSchemeService.list(Wrappers.lambdaQuery(TExperimentScheme.class)
+                            .in(TExperimentScheme::getDispatchId, dispatchIds));
+                    if(!CollectionUtils.isEmpty(experimentSchemes)){
+                        experimentSchemes.forEach(experimentScheme -> {
+                            experimentScheme.setStatus(experimentScheme.getOldStatus());
+                        });
+                        experimentSchemeService.updateBatchById(experimentSchemes);
+                    }
 
+                    // 封存取样记录
+                    List<TSamplingRecord> samplingRecords = samplingRecordService.list(Wrappers.lambdaQuery(TSamplingRecord.class)
+                            .in(TSamplingRecord::getDispatchId, dispatchIds));
+                    if(!CollectionUtils.isEmpty(samplingRecords)){
+                        samplingRecords.forEach(samplingRecord -> {
+                            samplingRecord.setStatus(samplingRecord.getOldStatus());
+                        });
+                        samplingRecordService.updateBatchById(samplingRecords);
+                    }
+
+                    // 封存结果汇报
+                    List<TExperimentResultReport> experimentResultReports = experimentResultReportService.list(Wrappers.lambdaQuery(TExperimentResultReport.class)
+                            .in(TExperimentResultReport::getDispatchId, dispatchIds));
+                    if(!CollectionUtils.isEmpty(experimentResultReports)){
+                        experimentResultReports.forEach(experimentResultReport -> {
+                            experimentResultReport.setStatus(experimentResultReport.getOldStatus());
+                        });
+                        experimentResultReportService.updateBatchById(experimentResultReports);
+                    }
+                }
             }
         }
-
-        // 封存检测项
-//        List<TQaTestItem> qaTestItems = qaTestItemService.list(Wrappers.lambdaQuery(TQaTestItem.class)
-//                .eq(TQaTestItem::getTeamId, dto.getId()));
-//        if(!CollectionUtils.isEmpty(qaTestItems)){
-//            qaTestItems.forEach(qaTestItem -> {
-//                qaTestItem.setStatus(4);
-//            });
-//            qaTestItemService.updateBatchById(qaTestItems);
-//        }
-
-        // 封存中试
-//        List<TQaProduceReport> qaProduceReports = qaProduceReportService.list(Wrappers.lambdaQuery(TQaProduceReport.class)
-//                .eq(TQaProduceReport::getTeamId, dto.getId()));
-//        if(!CollectionUtils.isEmpty(qaProduceReports)){
-//            qaProduceReports.forEach(qaProduceReport -> {
-//                qaProduceReport.setStatus(4);
-//            });
-//            qaProduceReportService.updateBatchById(qaProduceReports);
-//        }
-
-        // 封存可行等报告
-//        List<TFeasibilityStudyReport> feasibilityStudyReports = feasibilityStudyReportService.list(Wrappers.lambdaQuery(TFeasibilityStudyReport.class)
-//                .eq(TFeasibilityStudyReport::getTeamId, dto.getId()));
-//        if(!CollectionUtils.isEmpty(feasibilityStudyReports)){
-//            feasibilityStudyReports.forEach(feasibilityStudyReport -> {
-//                feasibilityStudyReport.setStatus(4);
-//            });
-//            feasibilityStudyReportService.updateBatchById(feasibilityStudyReports);
-//        }
-
 
         return R.ok();
     }

--
Gitblit v1.7.1