From ec9a95eb994018cc1ba28a80946165f795001dea Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期五, 29 十一月 2024 16:49:24 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java | 61 +++++++++++++++++++++++++++++- 1 files changed, 58 insertions(+), 3 deletions(-) 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 65e7358..1a1384a 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()); @@ -62,8 +68,26 @@ baseMapper.insertOne(projectPlanProgressReport); }else { 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); + }); } // 鏇存柊涓婄骇鎵瑰 @@ -76,7 +100,7 @@ // 鏇存柊涓婃姤鐘舵�� new LambdaUpdateChainWrapper<>(projectPlanInfoMapper) .eq(ProjectPlanInfo::getId, form.getId()) - .set(ProjectPlanInfo::getProgressStatus, 2) + .set(ProjectPlanInfo::getProgressStatus, 1) .update(); return Result.ok("娣诲姞鎴愬姛"); } @@ -139,6 +163,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); } @@ -154,4 +181,32 @@ .collect(Collectors.toList()); return Result.ok().data(vos); } + + @Override + public Result examine(ProgressReportResponseVO form) { + // 鏇存柊瀹℃壒璁板綍 + ProjectPlanExamineRecord record = new ProjectPlanExamineRecord(); + record.setId(form.getExamineRecordId().longValue()); + record.setDepartmentExamine(form.getDepartmentExamine()); + record.setDepartmentApproval(form.getDepartmentApproval()); + record.setManageExamine(form.getManageExamine()); + record.setManageApproval(form.getManageApproval()); + projectPlanExamineRecordMapper.updateById(record); + + // 鏇存柊璁″垝椤圭姸鎬� + if (form.getDepartmentExamine() == 0 && form.getManageExamine() == 0){ + new LambdaUpdateChainWrapper<>(projectPlanInfoMapper) + .eq(ProjectPlanInfo::getId, form.getId()) + .set(ProjectPlanInfo::getProgressStatus, 3) + .update(); + }else { + new LambdaUpdateChainWrapper<>(projectPlanInfoMapper) + .eq(ProjectPlanInfo::getId, form.getId()) + .set(ProjectPlanInfo::getProgressStatus, 2) + .update(); + } + + + return Result.ok("瀹℃壒鎴愬姛"); + } } -- Gitblit v1.8.0