From 78667db7845e68c59cea853db3fee67c1611d239 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期五, 10 一月 2025 11:02:21 +0800
Subject: [PATCH] 赋码任务调整
---
business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java | 95 +++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 87 insertions(+), 8 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..5b149f2 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,15 @@
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.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;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -14,6 +20,7 @@
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.List;
@@ -30,9 +37,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 +55,7 @@
/**
* 淇敼
+ *
* @param form
* @return
*/
@@ -61,6 +72,7 @@
/**
* 鎵归噺鍒犻櫎
+ *
* @param ids
* @return
*/
@@ -72,6 +84,7 @@
/**
* id鍒犻櫎
+ *
* @param id
* @return
*/
@@ -83,6 +96,7 @@
/**
* 鍒嗛〉鏌ヨ
+ *
* @param query
* @return
*/
@@ -95,11 +109,12 @@
/**
* 鏍规嵁id鏌ユ壘
+ *
* @param id
* @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);
@@ -107,6 +122,7 @@
/**
* 鍒楄〃
+ *
* @return
*/
@Override
@@ -119,14 +135,77 @@
}
@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));
+ }
+
+ /**
+ * 鍥炲瀹℃壒浜嬮」
+ *
+ * @param form
+ * @return
+ */
+ @Override
+ public Result replyExamine(ProjectPlanExamineRecordForm form) {
+ ProjectPlanExamineRecord projectPlanExamineRecord = ProjectPlanExamineRecordForm.getEntityByForm(form, null);
+ 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) {
+ 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();
+ }
+ 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(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