From 99a3c99d3e3bc046b3fcb0f23051d91a0c2edba0 Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期一, 09 十二月 2024 12:12:32 +0800 Subject: [PATCH] 项目库添加“使用状态”字段 --- business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java | 88 +++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 86 insertions(+), 2 deletions(-) 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 729eeba..c8a6e44 100644 --- a/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java @@ -1,9 +1,17 @@ package com.ycl.service.impl; 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.entity.ProjectPlanInfo; +import com.ycl.domain.entity.ProjectPlanRecord; import com.ycl.domain.vo.DepartmentApprovalResponseVO; +import com.ycl.domain.vo.ProgressReportResponseVO; +import com.ycl.domain.vo.ProjectProcessToDoVo; import com.ycl.mapper.ProjectPlanExamineRecordMapper; +import com.ycl.mapper.ProjectPlanInfoMapper; +import com.ycl.mapper.ProjectPlanRecordMapper; import com.ycl.service.ProjectPlanExamineRecordService; import com.ycl.common.base.Result; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -16,6 +24,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.util.Assert; +import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -30,9 +39,12 @@ public class ProjectPlanExamineRecordServiceImpl extends ServiceImpl<ProjectPlanExamineRecordMapper, ProjectPlanExamineRecord> implements ProjectPlanExamineRecordService { private final ProjectPlanExamineRecordMapper projectPlanExamineRecordMapper; + private final ProjectPlanRecordMapper projectPlanRecordMapper; + private final ProjectPlanInfoMapper projectPlanInfoMapper; /** * 娣诲姞 + * * @param form * @return */ @@ -45,6 +57,7 @@ /** * 淇敼 + * * @param form * @return */ @@ -61,6 +74,7 @@ /** * 鎵归噺鍒犻櫎 + * * @param ids * @return */ @@ -72,6 +86,7 @@ /** * id鍒犻櫎 + * * @param id * @return */ @@ -83,6 +98,7 @@ /** * 鍒嗛〉鏌ヨ + * * @param query * @return */ @@ -95,6 +111,7 @@ /** * 鏍规嵁id鏌ユ壘 + * * @param id * @return */ @@ -107,6 +124,7 @@ /** * 鍒楄〃 + * * @return */ @Override @@ -120,13 +138,79 @@ @Override public Result departmentApproval(Integer projectPlanRecordId) { - List<DepartmentApprovalResponseVO> vo =baseMapper.selectInfo(projectPlanRecordId); + List<DepartmentApprovalResponseVO> vo = baseMapper.selectInfo(projectPlanRecordId); return Result.ok().data(vo); } @Override public Result planLog(Integer projectPlanRecordId) { - List<DepartmentApprovalResponseVO> vo =baseMapper.getPlanLog(projectPlanRecordId); + List<DepartmentApprovalResponseVO> vo = baseMapper.getPlanLog(projectPlanRecordId); return Result.ok().data(vo); } + + /** + * 鍥炲瀹℃壒浜嬮」 + * + * @param form + * @return + */ + @Override + 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 item = ProjectPlanExamineRecordForm.getEntityByForm(form, null); + item.setId(form.getId().longValue()); + item.setDepartmentUserId(SecurityUtils.getUserId()); + item.setManagerUserId(SecurityUtils.getUserId()); + baseMapper.updateById(item); + Long projectPlanRecordId = baseMapper.selectById(item.getId()).getProjectPlanRecordId(); + // 濡傛灉鍚屾剰锛岃鍒掗」鐘舵�佷负宸查�氳繃锛屽苟涓旀柊澧炰竴鏉¢」鐩繘搴﹀鏍歌褰曪紝鍚﹀垯涓哄凡椹冲洖 + if (null != form.getDepartmentExamine() && null != form.getManageExamine() && form.getDepartmentExamine() == 0 && form.getManageExamine() == 0) { + new LambdaUpdateChainWrapper<>(projectPlanInfoMapper) + .eq(ProjectPlanInfo::getId, form.getProjectPlanInfoId()) + .set(ProjectPlanInfo::getPlanStatus, 2) + .update(); + // 鏂板椤圭洰杩涘害瀹℃牳璁板綍 + ProjectPlanExamineRecord newItem = new ProjectPlanExamineRecord(); + newItem.setProjectPlanRecordId(projectPlanRecordId); // 椤圭洰璁″垝璁板綍ID + newItem.setProjectPlanInfoId(item.getProjectPlanInfoId()); // 椤圭洰璁″垝椤笽D + newItem.setEventType(2); // 杩涘害涓婃姤 + newItem.setDeleted(0); // 鏈垹闄� + baseMapper.insert(newItem); + }else{ + new LambdaUpdateChainWrapper<>(projectPlanInfoMapper) + .eq(ProjectPlanInfo::getId, form.getProjectPlanInfoId()) + .set(ProjectPlanInfo::getPlanStatus, 1) + .update(); + } + return Result.ok("瀹℃壒鎴愬姛"); + } + + @Override + public Result todoList(Long userId, ProjectPlanExamineRecordQuery query) { + + IPage<ProjectProcessToDoVo> page = PageUtil.getPage(query, ProjectProcessToDoVo.class); + + baseMapper.todoList(page, query, userId); + return Result.ok().data(page.getRecords()).total(page.getTotal()); + } + + @Override + public Result reply(ProgressReportResponseVO form) { + new LambdaUpdateChainWrapper<>(baseMapper) + .eq(ProjectPlanExamineRecord::getId, form.getExamineRecordId()) + .set(ProjectPlanExamineRecord::getDepartmentApprovalReply, form.getDepartmentApprovalReply()) + .set(ProjectPlanExamineRecord::getManageApprovalReply, form.getManageApprovalReply()) + .update(); + return Result.ok("鍥炲鎴愬姛"); + } } -- Gitblit v1.8.0