From 6f094df5ca2b3fd83f6c2c64c72dd177756d4601 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期五, 06 十二月 2024 14:04:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java | 6 +++
business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java | 5 ++
business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java | 3 +
business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java | 11 +++++
business/src/main/java/com/ycl/domain/vo/ProjectPlanResponseVO.java | 6 +-
business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java | 4 ++
business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml | 11 ++++-
business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java | 64 +++++++++++++++++---------------
8 files changed, 73 insertions(+), 37 deletions(-)
diff --git a/business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java b/business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java
index 4f4652f..099bf2d 100644
--- a/business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java
+++ b/business/src/main/java/com/ycl/controller/ProjectPlanExamineRecordController.java
@@ -6,6 +6,7 @@
import com.ycl.common.group.Update;
import com.ycl.domain.form.ProjectPlanExamineRecordForm;
import com.ycl.domain.query.ProjectPlanExamineRecordQuery;
+import com.ycl.domain.vo.ProgressReportResponseVO;
import com.ycl.service.ProjectPlanExamineRecordService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -108,4 +109,8 @@
return projectPlanExamineRecordService.todoList(getUserId(),query);
}
+ @PostMapping("/reply")
+ public Result reply(@RequestBody ProgressReportResponseVO form) {
+ return projectPlanExamineRecordService.reply(form);
+ }
}
diff --git a/business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java b/business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java
index dfa3ff4..920c4c6 100644
--- a/business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java
+++ b/business/src/main/java/com/ycl/domain/vo/ProgressReportResponseVO.java
@@ -23,11 +23,12 @@
private Integer planTime;
private Integer PlanTimeFlag;
private String title;
+ private Integer progressStatusInt;
private Date startTime;
private Date endTime;
private Date actualStartTime;
private Date actualEndTime;
- private String progressStatus;
+ private String progressStatusStr;
private BigDecimal actualInvest;
private Integer departmentExamine;
private String departmentApproval;
diff --git a/business/src/main/java/com/ycl/domain/vo/ProjectPlanResponseVO.java b/business/src/main/java/com/ycl/domain/vo/ProjectPlanResponseVO.java
index b12c748..e5ed1df 100644
--- a/business/src/main/java/com/ycl/domain/vo/ProjectPlanResponseVO.java
+++ b/business/src/main/java/com/ycl/domain/vo/ProjectPlanResponseVO.java
@@ -12,11 +12,11 @@
private String projectName;
private Integer reportStatus;
private String projectCode;
- private Integer projectType;
+ private String projectType;
private Integer projectPhase;
private Integer monthStatus;
private Integer seasonStatus;
private Integer yearStatus;
- private Integer projectStatus;
- private Integer investType;
+ private String projectStatus;
+ private String investType;
}
diff --git a/business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java b/business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java
index 79393e9..6aa2acb 100644
--- a/business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java
+++ b/business/src/main/java/com/ycl/service/ProjectPlanExamineRecordService.java
@@ -5,6 +5,8 @@
import com.ycl.common.base.Result;
import com.ycl.domain.form.ProjectPlanExamineRecordForm;
import com.ycl.domain.query.ProjectPlanExamineRecordQuery;
+import com.ycl.domain.vo.ProgressReportResponseVO;
+
import java.util.List;
/**
@@ -92,4 +94,6 @@
Result saveExamine(ProjectPlanExamineRecordForm form);
Result todoList(Long userId,ProjectPlanExamineRecordQuery query);
+
+ Result reply(ProgressReportResponseVO form);
}
diff --git a/business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java
index ab00a4e..ef903c0 100644
--- a/business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProgressPlanServiceImpl.java
@@ -129,6 +129,8 @@
progressPlanInfoFlag.setPlanInfoList(
new LambdaQueryChainWrapper<>(projectPlanInfoMapper)
.eq(ProjectPlanInfo::getProjectPlanRecordId, record.getId())
+ .eq(ProjectPlanInfo::getDeleted, 0) // 鏈垹闄�
+ .eq(ProjectPlanInfo::getPlanStatus, 2) // 璁″垝椤瑰鎵归�氳繃
.list()
);
monthProgress.add(progressPlanInfoFlag);
@@ -146,6 +148,8 @@
progressPlanInfoFlag.setPlanInfoList(
new LambdaQueryChainWrapper<>(projectPlanInfoMapper)
.eq(ProjectPlanInfo::getProjectPlanRecordId, record.getId())
+ .eq(ProjectPlanInfo::getDeleted, 0) // 鏈垹闄�
+ .eq(ProjectPlanInfo::getPlanStatus, 2) // 璁″垝椤瑰鎵归�氳繃
.list()
);
seasonProgress.add(progressPlanInfoFlag);
@@ -163,6 +167,8 @@
progressPlanInfoFlag.setPlanInfoList(
new LambdaQueryChainWrapper<>(projectPlanInfoMapper)
.eq(ProjectPlanInfo::getProjectPlanRecordId, record.getId())
+ .eq(ProjectPlanInfo::getDeleted, 0) // 鏈垹闄�
+ .eq(ProjectPlanInfo::getPlanStatus, 2) // 璁″垝椤瑰鎵归�氳繃
.list()
);
yearProgress.add(progressPlanInfoFlag);
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 a176a1c..c8a6e44 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectPlanExamineRecordServiceImpl.java
@@ -7,6 +7,7 @@
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;
@@ -202,4 +203,14 @@
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("鍥炲鎴愬姛");
+ }
}
diff --git a/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java
index 1a1384a..58300ba 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectPlanProgressReportServiceImpl.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.ycl.common.base.Result;
import com.ycl.common.enums.business.FileTypeEnum;
+import com.ycl.common.utils.SecurityUtils;
import com.ycl.domain.entity.File;
import com.ycl.domain.entity.ProjectPlanExamineRecord;
import com.ycl.domain.entity.ProjectPlanInfo;
@@ -62,12 +63,15 @@
projectPlanProgressReport.setProjectPlanInfoId(form.getId().longValue());
projectPlanProgressReport.setStartTime(form.getActualStartTime());
projectPlanProgressReport.setEndTime(form.getActualEndTime());
- projectPlanProgressReport.setProgressStatus(form.getProgressStatus());
+ projectPlanProgressReport.setProgressStatus(form.getProgressStatusStr());
projectPlanProgressReport.setActualInvest(form.getActualInvest());
- if (form.getProgressReportId() == null) {
- baseMapper.insertOne(projectPlanProgressReport);
- }else {
- projectPlanProgressReport.setId(form.getProgressReportId());
+
+ // 鍒ゆ柇涓婃姤鐘舵��
+ if (form.getProgressStatusInt() == 0) { // 鏈紑濮� 涓婃姤杩涘害
+ // 鏂板杩涘害涓婃姤鍐呭
+ baseMapper.insert(projectPlanProgressReport);
+ }else if (form.getProgressStatusInt() == 2) { // 宸查┏鍥� 閲嶆柊涓婃姤
+ // 鏇存柊杩涘害涓婃姤鍐呭
baseMapper.updateById(projectPlanProgressReport);
}
@@ -89,15 +93,7 @@
fileMapper.insert(file);
});
}
-
- // 鏇存柊涓婄骇鎵瑰
- new LambdaUpdateChainWrapper<>(projectPlanExamineRecordMapper)
- .eq(ProjectPlanExamineRecord::getId, form.getExamineRecordId())
- .set(ProjectPlanExamineRecord::getDepartmentApprovalReply, form.getDepartmentApprovalReply())
- .set(ProjectPlanExamineRecord::getManageApprovalReply, form.getManageApprovalReply())
- .update();
-
- // 鏇存柊涓婃姤鐘舵��
+ // 鏇存柊璁″垝椤圭殑杩涘害鐘舵�佷负鏈鏍�
new LambdaUpdateChainWrapper<>(projectPlanInfoMapper)
.eq(ProjectPlanInfo::getId, form.getId())
.set(ProjectPlanInfo::getProgressStatus, 1)
@@ -184,29 +180,37 @@
@Override
public Result examine(ProgressReportResponseVO form) {
- // 鏇存柊瀹℃壒璁板綍
- ProjectPlanExamineRecord record = new ProjectPlanExamineRecord();
- record.setId(form.getExamineRecordId().longValue());
- record.setDepartmentExamine(form.getDepartmentExamine());
- record.setDepartmentApproval(form.getDepartmentApproval());
- record.setManageExamine(form.getManageExamine());
- record.setManageApproval(form.getManageApproval());
- projectPlanExamineRecordMapper.updateById(record);
+ // 鑾峰緱瀹℃壒璁板綍鍓湰
+ ProjectPlanExamineRecord record = projectPlanExamineRecordMapper.selectById(form.getExamineRecordId());
- // 鏇存柊璁″垝椤圭姸鎬�
- if (form.getDepartmentExamine() == 0 && form.getManageExamine() == 0){
+ // 鏂板涓�鏉″鎵硅褰�
+ ProjectPlanExamineRecord newRecord = new ProjectPlanExamineRecord();;
+ newRecord.setProjectPlanRecordId(record.getProjectPlanRecordId());
+ newRecord.setProjectPlanInfoId(record.getProjectPlanInfoId());
+ newRecord.setDepartmentUserId(SecurityUtils.getUserId());
+ newRecord.setDepartmentExamine(form.getDepartmentExamine());
+ newRecord.setDepartmentApproval(form.getDepartmentApproval());
+ newRecord.setManagerUserId(SecurityUtils.getUserId());
+ newRecord.setManageExamine(form.getManageExamine());
+ newRecord.setManageApproval(form.getManageApproval());
+ newRecord.setEventType(2);
+ newRecord.setDeleted(0);
+ projectPlanExamineRecordMapper.insert(newRecord);
+
+ // 鍒ゆ柇瀹℃壒缁撴灉
+ if (form.getDepartmentExamine() == 0 && form.getManageExamine() == 0) { // 瀹℃壒閫氳繃
+ // 璁″垝椤硅繘搴︾姸鎬佹洿鏂颁负宸插畬鎴�
new LambdaUpdateChainWrapper<>(projectPlanInfoMapper)
- .eq(ProjectPlanInfo::getId, form.getId())
- .set(ProjectPlanInfo::getProgressStatus, 3)
- .update();
- }else {
+ .eq(ProjectPlanInfo::getId, form.getId())
+ .set(ProjectPlanInfo::getProgressStatus, 3)
+ .update();
+ }else { // 瀹℃壒涓嶉�氳繃
+ // 璁″垝椤硅繘搴︾姸鎬佹洿鏂颁负宸查┏鍥�
new LambdaUpdateChainWrapper<>(projectPlanInfoMapper)
.eq(ProjectPlanInfo::getId, form.getId())
.set(ProjectPlanInfo::getProgressStatus, 2)
.update();
}
-
-
return Result.ok("瀹℃壒鎴愬姛");
}
}
diff --git a/business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml b/business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml
index 8d2b74d..893f1cb 100644
--- a/business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml
+++ b/business/src/main/resources/mapper/ProjectPlanProgressReportMapper.xml
@@ -76,11 +76,12 @@
ppr.plan_time,
ppr.plan_time_flag,
ppi.title,
+ ppi.progress_status AS progress_status_int,
ppi.start_time,
ppi.end_time,
pppr.start_time AS actual_start_time,
pppr.end_time AS actual_end_time,
- pppr.progress_status,
+ pppr.progress_status AS progress_status_str,
pppr.actual_invest,
pper.department_examine,
pper.department_approval,
@@ -91,8 +92,12 @@
FROM t_project_plan_info AS ppi
INNER JOIN t_project_plan_record AS ppr ON ppi.project_plan_record_id = ppr.id
LEFT JOIN t_project_plan_progress_report AS pppr ON pppr.project_plan_info_id = ppi.id
- RIGHT JOIN t_project_plan_examine_record AS pper ON pper.project_plan_info_id = ppi.id
- WHERE ppi.id = #{id}
+ LEFT JOIN t_project_plan_examine_record AS pper ON pper.project_plan_info_id = ppi.id
+ WHERE
+ ppi.id = #{id}
+ AND pper.event_type = 2
+ AND pper.deleted = 0
+ ORDER BY pper.gmt_create DESC LIMIT 1
</select>
</mapper>
--
Gitblit v1.8.0