From 1b9936ba920d65df09ab8dba79c6252568ee26e4 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期三, 26 三月 2025 12:16:02 +0800 Subject: [PATCH] 任务统计bug --- business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java | 74 +++++++++++++++++++++++------------- 1 files changed, 47 insertions(+), 27 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 381c0b0..5b149f2 100644 --- a/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java @@ -4,10 +4,11 @@ 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.ProjectPlanRecord; -import com.ycl.domain.vo.DepartmentApprovalResponseVO; +import com.ycl.domain.entity.ProjectPlanInfo; +import com.ycl.domain.form.ProgressReportResponseForm; 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; @@ -19,9 +20,9 @@ import lombok.RequiredArgsConstructor; import com.ycl.framework.utils.PageUtil; import org.springframework.beans.BeanUtils; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; -import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -37,6 +38,7 @@ private final ProjectPlanExamineRecordMapper projectPlanExamineRecordMapper; private final ProjectPlanRecordMapper projectPlanRecordMapper; + private final ProjectPlanInfoMapper projectPlanInfoMapper; /** * 娣诲姞 @@ -112,7 +114,7 @@ * @return */ @Override - public Result detail(Integer id) { + public Result detail(Long id) { ProjectPlanExamineRecordVO vo = baseMapper.getById(id); Assert.notNull(vo, "璁板綍涓嶅瓨鍦�"); return Result.ok().data(vo); @@ -133,15 +135,13 @@ } @Override - public Result departmentApproval(Integer projectPlanRecordId) { - List<DepartmentApprovalResponseVO> vo = baseMapper.selectInfo(projectPlanRecordId); - return Result.ok().data(vo); + public Result departmentApproval(Long projectPlanRecordId) { + return Result.ok().data(baseMapper.selectInfo(projectPlanRecordId)); } @Override - public Result planLog(Integer projectPlanRecordId) { - List<DepartmentApprovalResponseVO> vo = baseMapper.getPlanLog(projectPlanRecordId); - return Result.ok().data(vo); + public Result planLog(Long projectPlanRecordId) { + return Result.ok().data(baseMapper.getPlanLog(projectPlanRecordId)); } /** @@ -153,31 +153,41 @@ @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()); + projectPlanExamineRecord.setId(form.getId()); baseMapper.updateById(projectPlanExamineRecord); return Result.ok("鍥炲鎴愬姛"); } @Override + @Transactional(rollbackFor = Exception.class) public Result saveExamine(ProjectPlanExamineRecordForm form) { - // 鍒ゆ柇锛屽鏋滈兘鍚屾剰锛屽垯鐩存帴鏇存柊瀹℃壒璁板綍 + // 鏇存柊瀹℃壒璁板綍 + ProjectPlanExamineRecord entity = new ProjectPlanExamineRecord(); + BeanUtils.copyProperties(form, entity); + entity.setId(form.getId()); + entity.setDepartmentUserId(SecurityUtils.getUserId()); + entity.setManagerUserId(SecurityUtils.getUserId()); + baseMapper.updateById(entity); + Long projectPlanRecordId = baseMapper.selectById(entity.getId()).getProjectPlanRecordId(); + // 濡傛灉鍚屾剰锛岃鍒掗」鐘舵�佷负宸查�氳繃锛屽苟涓旀柊澧炰竴鏉¢」鐩繘搴﹀鏍歌褰曪紝鍚﹀垯涓哄凡椹冲洖 if (null != form.getDepartmentExamine() && null != form.getManageExamine() && form.getDepartmentExamine() == 0 && form.getManageExamine() == 0) { - ProjectPlanExamineRecord projectPlanExamineRecord = ProjectPlanExamineRecordForm.getEntityByForm(form, null); - projectPlanExamineRecord.setId(form.getId().longValue()); - projectPlanExamineRecord.setDepartmentUserId(SecurityUtils.getUserId()); - projectPlanExamineRecord.setManagerUserId(SecurityUtils.getUserId()); - baseMapper.updateById(projectPlanExamineRecord); + new LambdaUpdateChainWrapper<>(projectPlanInfoMapper) + .eq(ProjectPlanInfo::getId, form.getProjectPlanInfoId()) + .set(ProjectPlanInfo::getPlanStatus, 2) + .update(); + // 鏂板椤圭洰杩涘害瀹℃牳璁板綍 + ProjectPlanExamineRecord newItem = new ProjectPlanExamineRecord(); + newItem.setProjectPlanRecordId(projectPlanRecordId); // 椤圭洰璁″垝璁板綍ID + newItem.setProjectPlanInfoId(entity.getProjectPlanInfoId()); // 椤圭洰璁″垝椤笽D + newItem.setEventType(2); // 杩涘害涓婃姤 + baseMapper.insert(newItem); + }else{ + new LambdaUpdateChainWrapper<>(projectPlanInfoMapper) + .eq(ProjectPlanInfo::getId, form.getProjectPlanInfoId()) + .set(ProjectPlanInfo::getPlanStatus, 1) + .update(); } - // 鍚﹀垯锛屽皢椤圭洰璁板綍璁剧疆涓烘湭涓婃姤锛屽苟灏嗚褰曢�昏緫鍒犻櫎 - new LambdaUpdateChainWrapper<>(projectPlanRecordMapper) - .eq(ProjectPlanRecord::getId, form.getProjectPlanRecordId()) - .set(ProjectPlanRecord::getReportStatus, 1); - new LambdaUpdateChainWrapper<>(baseMapper) - .eq(ProjectPlanExamineRecord::getProjectPlanRecordId, form.getProjectPlanRecordId()) - .remove(); - return Result.ok("鍥炲鎴愬姛"); + return Result.ok("瀹℃壒鎴愬姛"); } @Override @@ -188,4 +198,14 @@ baseMapper.todoList(page, query, userId); return Result.ok().data(page.getRecords()).total(page.getTotal()); } + + @Override + public Result reply(ProgressReportResponseForm 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