From 2cc7bcdfa41f00f879832320f3154030bdda3e1d Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期三, 19 二月 2025 00:00:04 +0800
Subject: [PATCH] 项目中标单位、项目年度投资计划表代码生成
---
business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java | 100 +++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 95 insertions(+), 5 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 5f124ab..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,20 +1,26 @@
package com.ycl.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.ycl.common.base.Result;
+import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
+import com.ycl.common.utils.SecurityUtils;
import com.ycl.domain.entity.ProjectPlanExamineRecord;
-import com.ycl.framework.utils.PageUtil;
+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;
import com.ycl.domain.form.ProjectPlanExamineRecordForm;
import com.ycl.domain.vo.ProjectPlanExamineRecordVO;
import com.ycl.domain.query.ProjectPlanExamineRecordQuery;
import org.springframework.stereotype.Service;
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;
@@ -31,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
*/
@@ -46,6 +55,7 @@
/**
* 淇敼
+ *
* @param form
* @return
*/
@@ -62,6 +72,7 @@
/**
* 鎵归噺鍒犻櫎
+ *
* @param ids
* @return
*/
@@ -73,6 +84,7 @@
/**
* id鍒犻櫎
+ *
* @param id
* @return
*/
@@ -84,6 +96,7 @@
/**
* 鍒嗛〉鏌ヨ
+ *
* @param query
* @return
*/
@@ -96,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);
@@ -108,6 +122,7 @@
/**
* 鍒楄〃
+ *
* @return
*/
@Override
@@ -118,4 +133,79 @@
.collect(Collectors.toList());
return Result.ok().data(vos);
}
+
+ @Override
+ public Result departmentApproval(Long projectPlanRecordId) {
+ return Result.ok().data(baseMapper.selectInfo(projectPlanRecordId));
+ }
+
+ @Override
+ 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