From 363cf83f55c886bacb8ccab451071442a3313e67 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期五, 29 十一月 2024 04:04:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java |   71 ++++++++++++++++++++++++++++++++---
 1 files changed, 65 insertions(+), 6 deletions(-)

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 e18139b..ab00a4e 100644
--- a/business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java
@@ -2,27 +2,28 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
+import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ycl.common.base.Result;
-import com.ycl.domain.entity.ProgressPlan;
-import com.ycl.domain.entity.ProjectPlanInfo;
-import com.ycl.domain.entity.ProjectPlanRecord;
+import com.ycl.common.enums.business.FileTypeEnum;
+import com.ycl.domain.entity.*;
 import com.ycl.domain.form.ProgressPlanForm;
 import com.ycl.domain.query.ProgressPlanQuery;
 import com.ycl.domain.vo.ProgressPlanInfoFlag;
 import com.ycl.domain.vo.ProgressPlanInfoResponseVO;
 import com.ycl.domain.vo.ProgressPlanVO;
+import com.ycl.domain.vo.ProjectProgressFileListsRequest;
 import com.ycl.framework.utils.PageUtil;
-import com.ycl.mapper.ProgressPlanMapper;
-import com.ycl.mapper.ProjectPlanInfoMapper;
-import com.ycl.mapper.ProjectPlanRecordMapper;
+import com.ycl.mapper.*;
 import com.ycl.service.ProgressPlanService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.Assert;
 
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -39,6 +40,8 @@
     private final ProgressPlanMapper progressPlanMapper;
     private final ProjectPlanRecordMapper projectPlanRecordMapper;
     private final ProjectPlanInfoMapper projectPlanInfoMapper;
+    private final PlanMapper planMapper;
+    private final FileMapper fileMapper;
 
     /**
      * 娣诲姞
@@ -187,4 +190,60 @@
                 .collect(Collectors.toList());
         return Result.ok().data(vos);
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Result saveProjectProgressFileLists(ProjectProgressFileListsRequest request) {
+            new LambdaUpdateChainWrapper<>(fileMapper)
+                    .eq(File::getBusId, request.getProjectReportId())
+                    .eq(File::getType, FileTypeEnum.PROJECT_SITUATION_DESCRIPTION.getType())
+                    .set(File::getDeleted,1)
+                    .update();
+
+            request.getSituationDescriptionFileList().stream()
+                    .forEach(file -> {
+                        file.setId(null);
+                        file.setBusId(request.getProjectReportId().longValue());
+                        file.setType(FileTypeEnum.PROJECT_SITUATION_DESCRIPTION);
+                        file.setGmtCreate(new Date());
+                        file.setGmtUpdate(new Date());
+                        file.setDeleted(0);
+                        fileMapper.insert(file);
+                    });
+
+            new LambdaUpdateChainWrapper<>(fileMapper)
+                    .eq(File::getBusId, request.getProjectReportId())
+                    .eq(File::getType, FileTypeEnum.PROJECT_COMPLETE_REPORT.getType())
+                    .set(File::getDeleted,1)
+                    .update();
+
+            request.getCompletedReportFileList().stream()
+                    .forEach(file -> {
+                        file.setId(null);
+                        file.setBusId(request.getProjectReportId().longValue());
+                        file.setType(FileTypeEnum.PROJECT_COMPLETE_REPORT);
+                        file.setGmtCreate(new Date());
+                        file.setGmtUpdate(new Date());
+                        file.setDeleted(0);
+                        fileMapper.insert(file);
+                    });
+        return Result.ok("淇濆瓨鎴愬姛");
+    }
+
+    @Override
+    public Result getProjectProgressForm(Integer id) {
+        ProjectProgressFileListsRequest result = new ProjectProgressFileListsRequest();
+        result.setProjectReportId(id);
+        result.setCompletedReportFileList(new LambdaQueryChainWrapper<>(fileMapper)
+                .eq(File::getBusId, id)
+                .eq(File::getType, FileTypeEnum.PROJECT_COMPLETE_REPORT)
+                .eq(File::getDeleted, 0)
+                .list());
+        result.setSituationDescriptionFileList(new LambdaQueryChainWrapper<>(fileMapper)
+                .eq(File::getBusId, id)
+                .eq(File::getType, FileTypeEnum.PROJECT_SITUATION_DESCRIPTION)
+                .eq(File::getDeleted, 0)
+                .list());
+        return Result.ok().data(result);
+    }
 }

--
Gitblit v1.8.0