From c77cab7ca85f219df136ec2aac24a22efa7837f8 Mon Sep 17 00:00:00 2001
From: luohairen <3399054449@qq.com>
Date: 星期五, 29 十一月 2024 02:38:46 +0800
Subject: [PATCH] 项目计划审批

---
 business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java              |    2 +
 business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java     |   11 ++++-
 business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java  |   29 ++++++++++----
 business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java           |   11 ++++-
 business/src/main/java/com/ycl/controller/ProjectInfoController.java                  |    5 ++
 business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java               |   20 ++++++++--
 business/src/main/java/com/ycl/service/ProjectInfoService.java                        |    2 +
 business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java |    1 
 8 files changed, 64 insertions(+), 17 deletions(-)

diff --git a/business/src/main/java/com/ycl/controller/ProjectInfoController.java b/business/src/main/java/com/ycl/controller/ProjectInfoController.java
index 22c73e9..f2e314c 100644
--- a/business/src/main/java/com/ycl/controller/ProjectInfoController.java
+++ b/business/src/main/java/com/ycl/controller/ProjectInfoController.java
@@ -99,4 +99,9 @@
     public Result generateProjectCode() {
         return Result.ok().data(ProjectCodeGenerator.generateProjectCode());
     };
+
+    @GetMapping("/getManagerFlag/{recordId}")
+    public Result getManagerFlag(@PathVariable("recordId") Integer recordId) {
+        return projectInfoService.getManagerFlag(recordId);
+    }
 }
diff --git a/business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java b/business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java
index 169c98f..982ed76 100644
--- a/business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java
+++ b/business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java
@@ -90,8 +90,13 @@
         return projectPlanExamineRecordService.planLog(projectPlanRecordId);
     }
 
-    @PostMapping("/replyDepartmentApproval")
-    public Result replyDepartmentApproval(@RequestBody ProjectPlanExamineRecordForm form) {
-        return projectPlanExamineRecordService.replyDepartmentApproval(form);
+    @PostMapping("/saveExamine")
+    public Result saveExamine(@RequestBody ProjectPlanExamineRecordForm form) {
+        return projectPlanExamineRecordService.saveExamine(form);
+    }
+
+    @PostMapping("/replyExamine")
+    public Result replyExamine(@RequestBody ProjectPlanExamineRecordForm form) {
+        return projectPlanExamineRecordService.replyExamine(form);
     }
 }
diff --git a/business/src/main/java/com/ycl/service/ProjectInfoService.java b/business/src/main/java/com/ycl/service/ProjectInfoService.java
index 5e3a90f..e98c556 100644
--- a/business/src/main/java/com/ycl/service/ProjectInfoService.java
+++ b/business/src/main/java/com/ycl/service/ProjectInfoService.java
@@ -75,4 +75,6 @@
     Result docDetail(Integer id);
 
     Result addDoc(DocumentInfoForm form);
+
+    Result getManagerFlag(Integer recordId);
 }
diff --git a/business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java b/business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java
index 3464ca2..112824f 100644
--- a/business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java
+++ b/business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java
@@ -78,9 +78,16 @@
     Result planLog(Integer projectPlanRecordId);
 
     /**
-     *  涓婄骇鍥炲
+     *  鍥炲瀹℃壒
      * @param form
      * @return
      */
-    Result replyDepartmentApproval(ProjectPlanExamineRecordForm form);
+    Result replyExamine(ProjectPlanExamineRecordForm form);
+
+    /**
+     * 淇濆瓨瀹℃壒
+     * @param form
+     * @return
+     */
+    Result saveExamine(ProjectPlanExamineRecordForm form);
 }
diff --git a/business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java
index a591d53..ab00a4e 100644
--- a/business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java
@@ -202,6 +202,7 @@
 
             request.getSituationDescriptionFileList().stream()
                     .forEach(file -> {
+                        file.setId(null);
                         file.setBusId(request.getProjectReportId().longValue());
                         file.setType(FileTypeEnum.PROJECT_SITUATION_DESCRIPTION);
                         file.setGmtCreate(new Date());
@@ -218,6 +219,7 @@
 
             request.getCompletedReportFileList().stream()
                     .forEach(file -> {
+                        file.setId(null);
                         file.setBusId(request.getProjectReportId().longValue());
                         file.setType(FileTypeEnum.PROJECT_COMPLETE_REPORT);
                         file.setGmtCreate(new Date());
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 26368cf..05a25e8 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
@@ -23,10 +23,7 @@
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.Assert;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -239,4 +236,19 @@
         fileService.saveBatch(fileList);
         return Result.ok();
     }
+
+    @Override
+    public Result getManagerFlag(Integer recordId) {
+        ProjectInfo projectInfo = baseMapper.selectById(recordId);
+        // 鍒ゆ柇褰撳墠鐢ㄦ埛id鏄惁鍦ㄤ富绠″垪琛ㄤ腑
+        String competentDepartment = projectInfo.getCompetentDepartment();
+        List<String> list = Arrays.asList(competentDepartment.split(","));
+        // 鑾峰緱褰撳墠鐢ㄦ埛id
+        Long userId = SecurityUtils.getUserId();
+        if (list.contains(userId.toString())) {
+            return Result.ok().data(true);
+        } else {
+            return Result.ok().data(false);
+        }
+    }
 }
diff --git a/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java
index 0404651..d6086a7 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
+import com.ycl.common.utils.SecurityUtils;
 import com.ycl.domain.entity.ProjectPlanExamineRecord;
 import com.ycl.domain.vo.DepartmentApprovalResponseVO;
 import com.ycl.mapper.ProjectPlanExamineRecordMapper;
@@ -132,15 +133,27 @@
         return Result.ok().data(vo);
     }
 
+    /**
+     * 鍥炲瀹℃壒浜嬮」
+     * @param form
+     * @return
+     */
     @Override
-    public Result replyDepartmentApproval(ProjectPlanExamineRecordForm form) {
-        baseMapper.updateByForm(form);
-//        new LambdaUpdateChainWrapper<>(baseMapper)
-//               .eq(ProjectPlanExamineRecord::getId, form.getId())
-//                .set(ProjectPlanExamineRecord::getDepartmentApprovalReply,form.getDepartmentApprovalReply())
-//                .set(ProjectPlanExamineRecord::getManageApprovalReply, form.getManageApprovalReply())
-//                .set(ProjectPlanExamineRecord::getGmtUpdate ,new Date())
-//                .update();
+    public Result replyExamine(ProjectPlanExamineRecordForm form) {
+        ProjectPlanExamineRecord projectPlanExamineRecord = ProjectPlanExamineRecordForm.getEntityByForm(form, null);
+        projectPlanExamineRecord.setId(form.getId().longValue());
+        projectPlanExamineRecord.setDepartmentUserId(SecurityUtils.getUserId());
+        projectPlanExamineRecord.setManagerUserId(SecurityUtils.getUserId());
+        baseMapper.updateById(projectPlanExamineRecord);
+        return Result.ok("鍥炲鎴愬姛");
+    }
+
+    @Override
+    public Result saveExamine(ProjectPlanExamineRecordForm form) {
+        ProjectPlanExamineRecord projectPlanExamineRecord = ProjectPlanExamineRecordForm.getEntityByForm(form, null);
+        projectPlanExamineRecord.setDepartmentUserId(SecurityUtils.getUserId());
+        projectPlanExamineRecord.setManagerUserId(SecurityUtils.getUserId());
+        baseMapper.updateById(projectPlanExamineRecord);
         return Result.ok("鍥炲鎴愬姛");
     }
 }
diff --git a/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java
index 408768c..ae2e7e6 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java
@@ -81,6 +81,7 @@
         if (form.getFileList() != null && form.getFileList().size() > 0) {
             form.getFileList().stream()
                     .forEach(file -> {
+                        file.setId(null);
                         file.setBusId(form.getId().longValue());
                         file.setType(FileTypeEnum.PROJECT_PROGRESS_INFO_REPORT);
                         file.setGmtCreate(new Date());

--
Gitblit v1.8.0