From 91921823fb85dbd1ee236020c7b81f6bdf6d7edb Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: Mon, 24 Mar 2025 13:51:16 +0800
Subject: [PATCH] 调整业务逻辑
---
expert-system/src/main/java/com/gkhy/system/domain/vo/request/SysExpertInfoRoundReq.java | 3 +++
expert-system/src/main/resources/mapper/system/ProjectExpertMapper.xml | 4 ++++
expert-system/src/main/java/com/gkhy/system/mapper/ProjectExpertMapper.java | 3 +++
expert-system/src/main/resources/mapper/system/ProjectManagementMapper.xml | 7 ++++---
expert-system/src/main/java/com/gkhy/system/domain/vo/response/ProjectExpertManagementInfoRes.java | 6 ++++++
expert-system/src/main/java/com/gkhy/system/service/impl/ProjectManagementServiceImpl.java | 17 +++++++++++------
expert-system/src/main/resources/mapper/system/SysExpertInfoMapper.xml | 4 ++++
7 files changed, 35 insertions(+), 9 deletions(-)
diff --git a/expert-system/src/main/java/com/gkhy/system/domain/vo/request/SysExpertInfoRoundReq.java b/expert-system/src/main/java/com/gkhy/system/domain/vo/request/SysExpertInfoRoundReq.java
index 433e608..809cb06 100644
--- a/expert-system/src/main/java/com/gkhy/system/domain/vo/request/SysExpertInfoRoundReq.java
+++ b/expert-system/src/main/java/com/gkhy/system/domain/vo/request/SysExpertInfoRoundReq.java
@@ -25,4 +25,7 @@
@ApiModelProperty("处室")
private Long deptId;
+
+ @ApiModelProperty("已选中的组长id")
+ private Long selectedUserId;
}
diff --git a/expert-system/src/main/java/com/gkhy/system/domain/vo/response/ProjectExpertManagementInfoRes.java b/expert-system/src/main/java/com/gkhy/system/domain/vo/response/ProjectExpertManagementInfoRes.java
index b161de3..7cfeddf 100644
--- a/expert-system/src/main/java/com/gkhy/system/domain/vo/response/ProjectExpertManagementInfoRes.java
+++ b/expert-system/src/main/java/com/gkhy/system/domain/vo/response/ProjectExpertManagementInfoRes.java
@@ -66,6 +66,12 @@
private Long step;
/**
+ * 专家人数
+ */
+ @ApiModelProperty(value = "专家人数")
+ private Long expertNum;
+
+ /**
* 项目预计开始日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
diff --git a/expert-system/src/main/java/com/gkhy/system/mapper/ProjectExpertMapper.java b/expert-system/src/main/java/com/gkhy/system/mapper/ProjectExpertMapper.java
index bb3edcc..29e40af 100644
--- a/expert-system/src/main/java/com/gkhy/system/mapper/ProjectExpertMapper.java
+++ b/expert-system/src/main/java/com/gkhy/system/mapper/ProjectExpertMapper.java
@@ -60,6 +60,9 @@
*/
public int deleteProjectExpertById(Long id);
+
+ int deleteProjectExpertByProjectId(Long id);
+
/**
* 批量删除项目专家关联
*
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 0cc440c..7ec8f93 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
@@ -140,13 +140,9 @@
// throw new ServiceException("固定专家不能为空!");
// }
- if ((projectManagement1.getStep() == 1 || projectManagement1.getStep() == 2) && (projectManagement.getStep() == 2 ) ){
+ if ((projectManagement1.getStep() == 1 || projectManagement1.getStep() == 2) && (projectManagement.getStep() == 2 ) ){
projectManagementSave.setStep(2L);
projectManagementSave.setState(1L);
- }else if (projectManagement1.getStep() == 2 && projectManagement.getStep() == 3){
- projectManagementSave.setStep(2L);
- projectManagementSave.setState(2L);
- projectManagementSave.setProjectCheckTime(new Date());
List<ProjectExpertSaveReqDto> collect = saveData.stream()
.filter(dto -> "1".equals(dto.getTeamLeader().toString()))
.collect(Collectors.toList());
@@ -159,6 +155,11 @@
}
projectManagementSave.setExpertName(collect.get(0).getExpertName());
projectManagementSave.setExpertId(collect.get(0).getExpertId());
+ }else if (projectManagement1.getStep() == 2 && projectManagement.getStep() == 3){
+ projectManagementSave.setStep(2L);
+ projectManagementSave.setState(2L);
+ projectManagementSave.setProjectCheckTime(new Date());
+
}
List<ProjectExpertSaveReqDto> saveList = saveData.stream()
@@ -286,12 +287,16 @@
if (req.getState() == 3){
projectManagementUp.setStep(3L);
}else if (req.getState() == 1){
- projectManagementUp.setStep(2L);
+ projectManagementUp.setExpertName("");
+ projectManagementUp.setExpertId(0l);
+ projectManagementUp.setExpertNum(0L);
+ projectManagementUp.setStep(1L);
}
int i = projectManagementMapper.updateProjectManagement(projectManagementUp);
//驳回删
if (req.getState() == 1){
projectFileMapper.deleteProjectFileByIdAndType(req.getId(), "1");
+ projectExpertMapper.deleteProjectExpertByProjectId(req.getId());
}
if (i > 0 && StringUtils.isNotEmpty(projectFile) && req.getState() == 3){
//删除之前的该类型
diff --git a/expert-system/src/main/resources/mapper/system/ProjectExpertMapper.xml b/expert-system/src/main/resources/mapper/system/ProjectExpertMapper.xml
index 8d44d68..2ff51f7 100644
--- a/expert-system/src/main/resources/mapper/system/ProjectExpertMapper.xml
+++ b/expert-system/src/main/resources/mapper/system/ProjectExpertMapper.xml
@@ -232,6 +232,10 @@
update project_expert set del_flag= 1 where id = #{id}
</update>
+ <update id="deleteProjectExpertByProjectId" parameterType="Long">
+ update project_expert set del_flag= 1 where project_id = #{id}
+ </update>
+
<update id="deleteProjectExpertByIds" parameterType="String">
update project_expert set del_flag= 1 where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
diff --git a/expert-system/src/main/resources/mapper/system/ProjectManagementMapper.xml b/expert-system/src/main/resources/mapper/system/ProjectManagementMapper.xml
index 395a7ac..8b98a56 100644
--- a/expert-system/src/main/resources/mapper/system/ProjectManagementMapper.xml
+++ b/expert-system/src/main/resources/mapper/system/ProjectManagementMapper.xml
@@ -45,6 +45,7 @@
<result property="step" column="step" />
<result property="jobCategory" column="job_category" />
<result property="projectAddress" column="project_address" />
+ <result property="expertNum" column="expert_num" />
<!-- <result property="deptUserName" column="dept_user_name" />-->
<result property="projectDateStart" column="project_date_start" />
<result property="projectDateEnd" column="project_date_end" />
@@ -176,7 +177,7 @@
<if test="evaluationState != null">evaluation_state = #{evaluationState},</if>
<if test="expertNum != null">expert_num = #{expertNum},</if>
<if test="expertId != null">expert_id = #{expertId},</if>
- <if test="expertName != null and expertName != ''">expert_name = #{expertName},</if>
+ <if test="expertName != null">expert_name = #{expertName},</if>
<if test="projectEndTime != null">project_end_time = #{projectEndTime},</if>
<if test="desc != null and desc != ''">`desc` = #{desc},</if>
<if test="delFlag != null">del_flag = #{delFlag},</if>
@@ -202,12 +203,12 @@
<select id="projectExpertCheckInfo" parameterType="Long" resultMap="ProjectManagementInfoResult">
select a.id,a.step, a.project_name, a.dept_name, a.job_category, a.project_address, a.project_date_start, a.project_date_end, a.remark,a.project_check_time,a.state,
b.id project_expert_id,b.expert_id expert_id_info,c.name,c.sex,c.id_card,c.domain,c.rating_level,b.selection_mode,b.team_leader,
- c.company_name,c.phone,a.create_time selection_time,c.remark expert_remark,a.project_code
+ c.company_name,c.phone,a.create_time selection_time,c.remark expert_remark,a.project_code,a.expert_num
from project_management a
left join project_expert b on a.id = b.project_id and b.del_flag = 0
left join sys_expert_info c on b.expert_id = c.id
where a.id = #{id}
- order by b.team_leader asc , b.create_time desc
+ order by b.team_leader desc , b.create_time desc
</select>
<select id="getProjectExpertSate" parameterType="com.gkhy.system.domain.vo.request.ProjectExpertStateReq" resultType="com.gkhy.system.domain.vo.response.ProjectExpertStateResp">
select a.id, a.project_name, a.evaluation_state, a.project_check_time, a.project_end_time, a.dept_name, a.expert_num
diff --git a/expert-system/src/main/resources/mapper/system/SysExpertInfoMapper.xml b/expert-system/src/main/resources/mapper/system/SysExpertInfoMapper.xml
index 00a1709..b0131ec 100644
--- a/expert-system/src/main/resources/mapper/system/SysExpertInfoMapper.xml
+++ b/expert-system/src/main/resources/mapper/system/SysExpertInfoMapper.xml
@@ -164,6 +164,10 @@
#{item}
</foreach>
</if>
+ <!--去除掉组长-->
+ <if test="selectedUserId != null">
+ and id != #{selectedUserId}
+ </if>
ORDER BY RAND()
LIMIT #{num}
</select>
--
Gitblit v1.9.2