From 7b0c58ee03a3f2ab497fc6407e91e88474c0b58a Mon Sep 17 00:00:00 2001
From: luohairen <3399054449@qq.com>
Date: 星期二, 24 十二月 2024 17:40:55 +0800
Subject: [PATCH] 调整

---
 business/src/main/java/com/ycl/controller/ProjectInfoController.java    |    6 +++
 business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java |   59 ++++++++++++++++++++++++++++-
 business/src/main/java/com/ycl/domain/form/ProjectForm.java             |   17 ++++++++
 business/src/main/java/com/ycl/service/ProjectInfoService.java          |    3 +
 4 files changed, 82 insertions(+), 3 deletions(-)

diff --git a/business/src/main/java/com/ycl/controller/ProjectInfoController.java b/business/src/main/java/com/ycl/controller/ProjectInfoController.java
index 5ab6f3c..b590707 100644
--- a/business/src/main/java/com/ycl/controller/ProjectInfoController.java
+++ b/business/src/main/java/com/ycl/controller/ProjectInfoController.java
@@ -8,6 +8,7 @@
 import com.ycl.common.utils.excel.OutputExcelUtils;
 import com.ycl.domain.excel.ProjectExcelTemplate;
 import com.ycl.domain.form.DocumentInfoForm;
+import com.ycl.domain.form.ProjectForm;
 import com.ycl.domain.form.ProjectInfoForm;
 import com.ycl.domain.query.ProjectExportQuery;
 import com.ycl.domain.query.ProjectInfoQuery;
@@ -163,4 +164,9 @@
         projectInfoService.importProject(file);
         return Result.ok();
     }
+
+    @PostMapping("/editProject")
+    public Result editProject(@RequestBody ProjectForm form) {
+        return projectInfoService.editProject(form);
+    }
 }
diff --git a/business/src/main/java/com/ycl/domain/form/ProjectForm.java b/business/src/main/java/com/ycl/domain/form/ProjectForm.java
new file mode 100644
index 0000000..3c7dad2
--- /dev/null
+++ b/business/src/main/java/com/ycl/domain/form/ProjectForm.java
@@ -0,0 +1,17 @@
+package com.ycl.domain.form;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class ProjectForm {
+    private ProjectInfoForm projectInfoForm;
+    private ProjectInvestmentInfoForm projectInvestmentInfoForm;
+    private ProjectInvestmentFundingForm projectInvestmentFundingForm;
+    private ProjectInvestmentPolicyComplianceForm projectInvestmentPolicyComplianceForm;
+    private ProjectUnitRegistrationInfoForm projectUnitRegistrationInfoForm;
+    private DocumentInfoForm documentInfoForm;
+}
diff --git a/business/src/main/java/com/ycl/service/ProjectInfoService.java b/business/src/main/java/com/ycl/service/ProjectInfoService.java
index 5eee464..e1b026f 100644
--- a/business/src/main/java/com/ycl/service/ProjectInfoService.java
+++ b/business/src/main/java/com/ycl/service/ProjectInfoService.java
@@ -4,6 +4,7 @@
 import com.ycl.common.base.Result;
 import com.ycl.domain.entity.ProjectInfo;
 import com.ycl.domain.form.DocumentInfoForm;
+import com.ycl.domain.form.ProjectForm;
 import com.ycl.domain.form.ProjectInfoForm;
 import com.ycl.domain.query.ProjectExportQuery;
 import com.ycl.domain.query.ProjectInfoQuery;
@@ -87,4 +88,6 @@
     Result updateUsedStatus(Integer id, Integer usedStatus);
 
     void importProject(MultipartFile file);
+
+    Result editProject(ProjectForm form);
 }
diff --git a/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
index 7a70638..8191b18 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
@@ -28,11 +28,10 @@
 import com.ycl.common.utils.file.FileUploadUtils;
 import com.ycl.common.utils.file.FileUtils;
 import com.ycl.common.utils.poi.ExcelUtil;
+import com.ycl.controller.ProjectInfoController;
 import com.ycl.domain.entity.*;
 import com.ycl.domain.excel.ProjectExcelTemplate;
-import com.ycl.domain.form.DocumentInfoForm;
-import com.ycl.domain.form.PlanForm;
-import com.ycl.domain.form.ProjectInfoForm;
+import com.ycl.domain.form.*;
 import com.ycl.domain.query.ProjectExportQuery;
 import com.ycl.domain.query.ProjectInfoQuery;
 import com.ycl.domain.vo.*;
@@ -85,6 +84,10 @@
     private final FileService fileService;
     private final FileMapper fileMapper;
     private final PlanMapper planMapper;
+    private final ProjectInvestmentInfoServiceImpl projectInvestmentInfoServiceImpl;
+    private final ProjectInvestmentFundingServiceImpl projectInvestmentFundingServiceImpl;
+    private final ProjectInvestmentPolicyComplianceServiceImpl projectInvestmentPolicyComplianceServiceImpl;
+    private final ProjectUnitRegistrationInfoServiceImpl projectUnitRegistrationInfoServiceImpl;
 
     /**
      * 娣诲姞
@@ -658,6 +661,56 @@
         }
     }
 
+    @Override
+    public Result editProject(ProjectForm form) {
+        if (ObjectUtil.isNotNull(form.getProjectInfoForm())){
+            if (ObjectUtil.isNull(form.getProjectInfoForm().getId())) {
+                //鏂板
+                add(form.getProjectInfoForm());
+            }else {
+                //鏇存柊
+                update(form.getProjectInfoForm());
+            }
+        }
+        if (ObjectUtil.isNotNull(form.getProjectInvestmentInfoForm())) {
+            if (ObjectUtil.isNull(form.getProjectInvestmentInfoForm().getId())) {
+                projectInvestmentInfoServiceImpl.add(form.getProjectInvestmentInfoForm());
+            }else {
+                projectInvestmentInfoServiceImpl.update(form.getProjectInvestmentInfoForm());
+            }
+        }
+        if (ObjectUtil.isNotNull(form.getProjectInvestmentFundingForm())) {
+            if (ObjectUtil.isNull(form.getProjectInvestmentFundingForm().getId())) {
+                projectInvestmentFundingServiceImpl.add(form.getProjectInvestmentFundingForm());
+            }else {
+                projectInvestmentFundingServiceImpl.update(form.getProjectInvestmentFundingForm());
+            }
+        }
+        if (ObjectUtil.isNotNull(form.getProjectInvestmentPolicyComplianceForm())) {
+            if (ObjectUtil.isNull(form.getProjectInvestmentPolicyComplianceForm().getId())) {
+                projectInvestmentPolicyComplianceServiceImpl.add(form.getProjectInvestmentPolicyComplianceForm());
+            }else {
+                projectInvestmentPolicyComplianceServiceImpl.update(form.getProjectInvestmentPolicyComplianceForm());
+            }
+        }
+        if (ObjectUtil.isNotNull(form.getProjectUnitRegistrationInfoForm())) {
+            if (ObjectUtil.isNull(form.getProjectUnitRegistrationInfoForm().getId())) {
+                projectUnitRegistrationInfoServiceImpl.add(form.getProjectUnitRegistrationInfoForm());
+            }else {
+                projectUnitRegistrationInfoServiceImpl.update(form.getProjectUnitRegistrationInfoForm());
+            }
+        }
+        if (ObjectUtil.isNotNull(form.getDocumentInfoForm())) {
+            if (ObjectUtil.isNull(form.getDocumentInfoForm().getProjectId())){
+                return Result.error("璇峰厛淇濆瓨鎶曡祫绠$悊鍩烘湰淇℃伅");
+            }else {
+                addDoc(form.getDocumentInfoForm());
+            }
+        }
+
+        return Result.ok("鎻愪氦鎴愬姛");
+    }
+
     private static void deleteDirectoryOrFile(java.io.File file) {
         if (ObjectUtil.isNull(file)) {
             return;

--
Gitblit v1.8.0