From 13b61a3d8909a579e88c346756d621728b59855c Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期二, 10 十二月 2024 16:11:43 +0800
Subject: [PATCH] 任务发起人信息设置
---
business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java | 97 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 97 insertions(+), 0 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 9ad060e..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,8 +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;
@@ -15,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;
@@ -29,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
*/
@@ -44,6 +57,7 @@
/**
* 淇敼
+ *
* @param form
* @return
*/
@@ -60,6 +74,7 @@
/**
* 鎵归噺鍒犻櫎
+ *
* @param ids
* @return
*/
@@ -71,6 +86,7 @@
/**
* id鍒犻櫎
+ *
* @param id
* @return
*/
@@ -82,6 +98,7 @@
/**
* 鍒嗛〉鏌ヨ
+ *
* @param query
* @return
*/
@@ -94,6 +111,7 @@
/**
* 鏍规嵁id鏌ユ壘
+ *
* @param id
* @return
*/
@@ -106,6 +124,7 @@
/**
* 鍒楄〃
+ *
* @return
*/
@Override
@@ -116,4 +135,82 @@
.collect(Collectors.toList());
return Result.ok().data(vos);
}
+
+ @Override
+ public Result departmentApproval(Integer projectPlanRecordId) {
+ List<DepartmentApprovalResponseVO> vo = baseMapper.selectInfo(projectPlanRecordId);
+ return Result.ok().data(vo);
+ }
+
+ @Override
+ public Result planLog(Integer 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