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 ++++++++++++++++-
business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java | 3
business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java | 29 +++++--
business/src/main/java/com/ycl/domain/vo/ProjectProgressFileListsRequest.java | 17 ++++
business/src/main/java/com/ycl/controller/ProgressPlanController.java | 14 +++
start/src/main/resources/application.yml | 2
business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java | 11 ++
business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java | 11 ++
business/src/main/java/com/ycl/controller/ProjectInfoController.java | 5 +
common/src/main/java/com/ycl/common/enums/business/FileTypeEnum.java | 6 +
business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java | 20 ++++-
business/src/main/java/com/ycl/service/ProgressPlanService.java | 11 ++
business/src/main/java/com/ycl/service/ProjectInfoService.java | 2
business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java | 30 +++++++
14 files changed, 206 insertions(+), 26 deletions(-)
diff --git a/business/src/main/java/com/ycl/controller/ProgressPlanController.java b/business/src/main/java/com/ycl/controller/ProgressPlanController.java
index ef2147b..6c2e2c0 100644
--- a/business/src/main/java/com/ycl/controller/ProgressPlanController.java
+++ b/business/src/main/java/com/ycl/controller/ProgressPlanController.java
@@ -6,6 +6,8 @@
import com.ycl.common.group.Update;
import com.ycl.domain.form.ProgressPlanForm;
import com.ycl.domain.query.ProgressPlanQuery;
+import com.ycl.domain.vo.ProjectProgressFileListsRequest;
+import com.ycl.mapper.FileMapper;
import com.ycl.service.ProgressPlanService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -31,6 +33,7 @@
public class ProgressPlanController {
private final ProgressPlanService progressPlanService;
+ private final FileMapper fileMapper;
@PostMapping
@ApiOperation(value = "娣诲姞", notes = "娣诲姞")
@@ -80,4 +83,15 @@
public Result list() {
return progressPlanService.all();
}
+
+ @PostMapping("/saveProjectProgressFileLists")
+ public Result saveProjectProgressFileLists(@RequestBody ProjectProgressFileListsRequest request) {
+ return progressPlanService.saveProjectProgressFileLists(request);
+ }
+
+ @GetMapping("/getProjectProgressForm/{id}")
+ public Result getProjectProgressForm(@PathVariable("id") Integer id) {
+ return progressPlanService.getProjectProgressForm(id);
+ }
+
}
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/domain/vo/ProgressReportResponseVO.java b/business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java
index 0ab14d6..dfa3ff4 100644
--- a/business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java
+++ b/business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java
@@ -1,12 +1,14 @@
package com.ycl.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ycl.domain.entity.File;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
import java.util.Date;
+import java.util.List;
@Data
@AllArgsConstructor
@@ -33,5 +35,6 @@
private Integer manageExamine;
private String manageApproval;
private String manageApprovalReply;
+ private List<File> fileList;
}
diff --git a/business/src/main/java/com/ycl/domain/vo/ProjectProgressFileListsRequest.java b/business/src/main/java/com/ycl/domain/vo/ProjectProgressFileListsRequest.java
new file mode 100644
index 0000000..02bdab1
--- /dev/null
+++ b/business/src/main/java/com/ycl/domain/vo/ProjectProgressFileListsRequest.java
@@ -0,0 +1,17 @@
+package com.ycl.domain.vo;
+
+import com.ycl.domain.entity.File;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class ProjectProgressFileListsRequest {
+ private Integer projectReportId;
+ private List<File> completedReportFileList;
+ private List<File> situationDescriptionFileList;
+}
diff --git a/business/src/main/java/com/ycl/service/ProgressPlanService.java b/business/src/main/java/com/ycl/service/ProgressPlanService.java
index 2b0b005..aee7fc4 100644
--- a/business/src/main/java/com/ycl/service/ProgressPlanService.java
+++ b/business/src/main/java/com/ycl/service/ProgressPlanService.java
@@ -5,6 +5,8 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ycl.domain.form.ProgressPlanForm;
import com.ycl.domain.query.ProgressPlanQuery;
+import com.ycl.domain.vo.ProjectProgressFileListsRequest;
+
import java.util.List;
/**
@@ -62,4 +64,13 @@
* @return
*/
Result all();
+
+ /**
+ * 淇濆瓨绔e伐鎶ュ憡銆佹儏鍐佃鏄庨檮浠�
+ * @param request
+ * @return
+ */
+ Result saveProjectProgressFileLists(ProjectProgressFileListsRequest request);
+
+ Result getProjectProgressForm(Integer id);
}
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 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);
+ }
}
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 39d69d4..8c29fb9 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java
@@ -25,10 +25,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;
/**
@@ -260,4 +257,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 5d53406..ae2e7e6 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java
@@ -1,13 +1,17 @@
package com.ycl.service.impl;
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.ycl.common.base.Result;
+import com.ycl.common.enums.business.FileTypeEnum;
+import com.ycl.domain.entity.File;
import com.ycl.domain.entity.ProjectPlanExamineRecord;
import com.ycl.domain.entity.ProjectPlanInfo;
import com.ycl.domain.entity.ProjectPlanProgressReport;
import com.ycl.domain.vo.ProgressReportResponseVO;
import com.ycl.framework.utils.PageUtil;
+import com.ycl.mapper.FileMapper;
import com.ycl.mapper.ProjectPlanExamineRecordMapper;
import com.ycl.mapper.ProjectPlanInfoMapper;
import com.ycl.mapper.ProjectPlanProgressReportMapper;
@@ -24,6 +28,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
+import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@@ -42,6 +47,8 @@
private final ProjectPlanExamineRecordMapper projectPlanExamineRecordMapper;
@Autowired
private ProjectPlanInfoMapper projectPlanInfoMapper;
+ @Autowired
+ private FileMapper fileMapper;
/**
* 娣诲姞
@@ -51,7 +58,6 @@
@Transactional(rollbackFor = Exception.class)
@Override
public Result add(ProgressReportResponseVO form) {
-
ProjectPlanProgressReport projectPlanProgressReport = new ProjectPlanProgressReport();
projectPlanProgressReport.setProjectPlanInfoId(form.getId().longValue());
projectPlanProgressReport.setStartTime(form.getActualStartTime());
@@ -64,6 +70,25 @@
projectPlanProgressReport.setId(form.getProgressReportId());
// baseMapper.updateOne(projectPlanProgressReport);
baseMapper.updateById(projectPlanProgressReport);
+ }
+
+ // 鏂囦欢涓婁紶
+ new LambdaUpdateChainWrapper<>(fileMapper)
+ .eq(File::getBusId, form.getId())
+ .eq(File::getType, FileTypeEnum.PROJECT_PROGRESS_INFO_REPORT.getType())
+ .set(File::getDeleted,1)
+ .update();
+ 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());
+ file.setGmtUpdate(new Date());
+ file.setDeleted(0);
+ fileMapper.insert(file);
+ });
}
// 鏇存柊涓婄骇鎵瑰
@@ -139,6 +164,9 @@
@Override
public Result detail(Integer id) {
ProgressReportResponseVO vo = baseMapper.getDetail(id);
+ if (vo != null) {
+ vo.setFileList(new LambdaQueryChainWrapper<>(fileMapper).eq(File::getBusId, id).eq(File::getType, FileTypeEnum.PROJECT_PROGRESS_INFO_REPORT).list());
+ }
return Result.ok().data(vo);
}
diff --git a/common/src/main/java/com/ycl/common/enums/business/FileTypeEnum.java b/common/src/main/java/com/ycl/common/enums/business/FileTypeEnum.java
index 610936c..88a8fe9 100644
--- a/common/src/main/java/com/ycl/common/enums/business/FileTypeEnum.java
+++ b/common/src/main/java/com/ycl/common/enums/business/FileTypeEnum.java
@@ -14,7 +14,11 @@
public enum FileTypeEnum {
PROJECT_INFO("project_info", "椤圭洰鍩烘湰淇℃伅"),
INVEST_POLICY("invest_policy","鎶曡祫椤圭洰浜т笟鏀跨瓥绗﹀悎鎯呭喌"),
- DOCUMENT_INFO("document_info","鐩稿叧鏂囦欢");
+ DOCUMENT_INFO("document_info","鐩稿叧鏂囦欢"),
+ PROJECT_COMPLETE_REPORT("project_complete_report", "椤圭洰绔e伐鎶ュ憡"),
+ PROJECT_SITUATION_DESCRIPTION("project_situation_description", "椤圭洰鎯呭喌璇存槑"),
+ PROJECT_PROGRESS_INFO_REPORT("project_progress_info_report", "椤圭洰杩涘害璁″垝椤逛笂鎶�");
+
@EnumValue // 鏍囨槑璇ュ瓧娈靛瓨鍏ユ暟鎹簱
private final String type;
diff --git a/start/src/main/resources/application.yml b/start/src/main/resources/application.yml
index 841764e..2156745 100644
--- a/start/src/main/resources/application.yml
+++ b/start/src/main/resources/application.yml
@@ -71,7 +71,7 @@
devtools:
restart:
# 鐑儴缃插紑鍏�
- enabled: true
+ enabled: false
# token閰嶇疆
token:
--
Gitblit v1.8.0