From 421e1dc40f619e8bb44c0662325e0b1729ca79e8 Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: Fri, 08 May 2026 17:27:41 +0800
Subject: [PATCH] 功能
---
expert-system/src/main/java/com/gkhy/system/service/IProjectManagementService.java | 7 +++++++
expert-system/src/main/java/com/gkhy/system/service/impl/ProjectManagementServiceImpl.java | 37 +++++++++++++++++++++++++++++++++++++
expert-admin/src/main/java/com/gkhy/web/controller/bussiness/ProjectManagementController.java | 10 ++++++++++
3 files changed, 54 insertions(+), 0 deletions(-)
diff --git a/expert-admin/src/main/java/com/gkhy/web/controller/bussiness/ProjectManagementController.java b/expert-admin/src/main/java/com/gkhy/web/controller/bussiness/ProjectManagementController.java
index aad4c0c..27624fb 100644
--- a/expert-admin/src/main/java/com/gkhy/web/controller/bussiness/ProjectManagementController.java
+++ b/expert-admin/src/main/java/com/gkhy/web/controller/bussiness/ProjectManagementController.java
@@ -264,4 +264,14 @@
return R.ok(projectManagementService.projectExpertExportList(projectId));
}
+
+ @GetMapping("/projectBackEvaluation")
+ @ApiOperation(value = "项目评审退回")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "query", name = "id", dataType = "long", required = true, value = "项目id")
+ })
+ public R projectBackEvaluation(@RequestParam("id") Long id){
+ projectManagementService.projectBackEvaluation( id);
+ return R.ok();
+ }
}
diff --git a/expert-system/src/main/java/com/gkhy/system/service/IProjectManagementService.java b/expert-system/src/main/java/com/gkhy/system/service/IProjectManagementService.java
index 60c401a..50b9fea 100644
--- a/expert-system/src/main/java/com/gkhy/system/service/IProjectManagementService.java
+++ b/expert-system/src/main/java/com/gkhy/system/service/IProjectManagementService.java
@@ -146,4 +146,11 @@
* @return 导出专家数据
*/
public List<ProjectDataResp> selectProjectData(ProjectManagement projectManagement);
+
+ /**
+ * 评审状态退回
+ * @param id
+ */
+
+ void projectBackEvaluation(Long id);
}
\ No newline at end of file
diff --git a/expert-system/src/main/java/com/gkhy/system/service/impl/ProjectManagementServiceImpl.java b/expert-system/src/main/java/com/gkhy/system/service/impl/ProjectManagementServiceImpl.java
index c9de6c5..4c68953 100644
--- a/expert-system/src/main/java/com/gkhy/system/service/impl/ProjectManagementServiceImpl.java
+++ b/expert-system/src/main/java/com/gkhy/system/service/impl/ProjectManagementServiceImpl.java
@@ -808,6 +808,43 @@
return projectManagementMapper.selectProjectData(projectManagement);
}
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void projectBackEvaluation(Long id) {
+ if (!SecurityUtils.isAdmin(SecurityUtils.getUserId())){
+ throw new ServiceException("非管理员无权操作!");
+ }
+ ProjectManagement projectManagement = projectManagementMapper.selectProjectManagementById(id);
+ if (null == projectManagement){
+ throw new ServiceException("项目不存在");
+ }
+ if (projectManagement.getState() != 4) {
+ throw new ServiceException("项目未完成,无权操作!");
+ }
+ if (projectManagement.getEvaluationState() != 1){
+ throw new ServiceException("未完成评审不可退回!");
+ }
+ LambdaUpdateWrapper<ProjectManagement> updateWrapper = new LambdaUpdateWrapper<>();
+ updateWrapper.eq(ProjectManagement::getId, id)
+ .set(ProjectManagement::getEvaluationState, 0).set(ProjectManagement::getUpdateBy, SecurityUtils.getUsername())
+ .set(ProjectManagement::getUpdateTime, new Date());
+ int update = projectManagementMapper.update(null, updateWrapper);
+ if (update > 0){
+ LambdaUpdateWrapper<OutProjectExpert> updateWrapper1 = new LambdaUpdateWrapper<>();
+ updateWrapper1.eq(OutProjectExpert::getProjectId, id)
+ .set(OutProjectExpert::getEvaluationState, 0).set(OutProjectExpert::getUpdateBy, SecurityUtils.getUsername())
+ .set(OutProjectExpert::getUpdateTime, new Date());
+ outProjectExpertMapper.update(null, updateWrapper1);
+ LambdaUpdateWrapper<ProjectExpert> updateWrapper2 = new LambdaUpdateWrapper<>();
+ updateWrapper2.eq(ProjectExpert::getProjectId, id).set(ProjectExpert::getEvaluationState, 0)
+ .set(ProjectExpert::getUpdateBy, SecurityUtils.getUsername())
+ .set(ProjectExpert::getUpdateTime, new Date());
+ projectExpertMapper.update(null, updateWrapper2);
+ }
+
+
+ }
+
private List<ProjectExpertDetail> dealData(List<ProjectExpertScoreSaveReq.Score> data, Long projectExpertId) {
List<ProjectExpertDetail> dealData = new ArrayList<>();
data.forEach(dto -> {
--
Gitblit v1.9.2