business/src/main/java/com/ycl/controller/ProgressPlanController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
business/src/main/java/com/ycl/domain/vo/ProjectProgressFileListsRequest.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
business/src/main/java/com/ycl/service/ProgressPlanService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
common/src/main/java/com/ycl/common/enums/business/FileTypeEnum.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
start/src/main/resources/application.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
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,10 @@ public Result list() { return progressPlanService.all(); } @PostMapping("/saveProjectProgressFileLists") public Result saveProjectProgressFileLists(@RequestBody ProjectProgressFileListsRequest request) { return progressPlanService.saveProjectProgressFileLists(request); } } 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; } business/src/main/java/com/ycl/domain/vo/ProjectProgressFileListsRequest.java
New file @@ -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 projectInfoId; private List<File> completedReportFileList; private List<File> situationDescriptionFileList; } 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,11 @@ * @return */ Result all(); /** * 保存竣工报告、情况说明附件 * @param request * @return */ Result saveProjectProgressFileLists(ProjectProgressFileListsRequest request); } 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,45 @@ .collect(Collectors.toList()); return Result.ok().data(vos); } @Override @Transactional(rollbackFor = Exception.class) public Result saveProjectProgressFileLists(ProjectProgressFileListsRequest request) { // 判断是否存在附件 if(request.getSituationDescriptionFileList() != null && !request.getSituationDescriptionFileList().isEmpty()){ new LambdaUpdateChainWrapper<>(fileMapper) .eq(File::getBusId, request.getProjectInfoId()) .eq(File::getType, FileTypeEnum.PROJECT_SITUATION_DESCRIPTION.getType()) .set(File::getDeleted,1) .update(); request.getSituationDescriptionFileList().stream() .forEach(file -> { file.setBusId(request.getProjectInfoId().longValue()); file.setType(FileTypeEnum.PROJECT_SITUATION_DESCRIPTION); file.setGmtCreate(new Date()); file.setGmtUpdate(new Date()); file.setDeleted(0); fileMapper.insert(file); }); } if(request.getCompletedReportFileList() != null && !request.getCompletedReportFileList().isEmpty()){ new LambdaUpdateChainWrapper<>(fileMapper) .eq(File::getBusId, request.getProjectInfoId()) .eq(File::getType, FileTypeEnum.PROJECT_COMPLETE_REPORT.getType()) .set(File::getDeleted,1) .update(); request.getCompletedReportFileList().stream() .forEach(file -> { file.setBusId(request.getProjectInfoId().longValue()); file.setType(FileTypeEnum.PROJECT_COMPLETE_REPORT); file.setGmtCreate(new Date()); file.setGmtUpdate(new Date()); file.setDeleted(0); fileMapper.insert(file); }); } return Result.ok("保存成功"); } } business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java
@@ -3,11 +3,14 @@ import com.baomidou.mybatisplus.core.metadata.IPage; 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 +27,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 +46,8 @@ private final ProjectPlanExamineRecordMapper projectPlanExamineRecordMapper; @Autowired private ProjectPlanInfoMapper projectPlanInfoMapper; @Autowired private FileMapper fileMapper; /** * 添加 @@ -51,7 +57,6 @@ @Transactional(rollbackFor = Exception.class) @Override public Result add(ProgressReportResponseVO form) { ProjectPlanProgressReport projectPlanProgressReport = new ProjectPlanProgressReport(); projectPlanProgressReport.setProjectPlanInfoId(form.getId().longValue()); projectPlanProgressReport.setStartTime(form.getActualStartTime()); @@ -66,6 +71,24 @@ 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.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); }); } // 更新上级批复 new LambdaUpdateChainWrapper<>(projectPlanExamineRecordMapper) .eq(ProjectPlanExamineRecord::getId, form.getExamineRecordId()) common/src/main/java/com/ycl/common/enums/business/FileTypeEnum.java
@@ -12,7 +12,10 @@ */ @Getter public enum FileTypeEnum { PROJECT_INFO("project_info", "项目基本信息"); PROJECT_INFO("project_info", "项目基本信息"), PROJECT_COMPLETE_REPORT("project_complete_report", "项目竣工报告"), PROJECT_SITUATION_DESCRIPTION("project_situation_description", "项目情况说明"), PROJECT_PROGRESS_INFO_REPORT("project_progress_info_report", "项目进度计划项上报"); @EnumValue // 标明该字段存入数据库 private final String type; start/src/main/resources/application.yml
@@ -71,7 +71,7 @@ devtools: restart: # 热部署开关 enabled: true enabled: false # token配置 token: