From caf2acbee7e25afde41c169a0eba471e5b08b523 Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: Thu, 28 Aug 2025 13:02:09 +0800
Subject: [PATCH] 版本改造
---
expert-system/src/main/resources/mapper/system/ProjectManagementMapper.xml | 235 ++++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 209 insertions(+), 26 deletions(-)
diff --git a/expert-system/src/main/resources/mapper/system/ProjectManagementMapper.xml b/expert-system/src/main/resources/mapper/system/ProjectManagementMapper.xml
index 484be7f..838b11e 100644
--- a/expert-system/src/main/resources/mapper/system/ProjectManagementMapper.xml
+++ b/expert-system/src/main/resources/mapper/system/ProjectManagementMapper.xml
@@ -7,19 +7,27 @@
<resultMap type="ProjectManagement" id="ProjectManagementResult">
<result property="id" column="id" />
<result property="projectName" column="project_name" />
+ <result property="projectCode" column="project_code" />
<result property="deptId" column="dept_id" />
<result property="deptName" column="dept_name" />
- <result property="companyName" column="company_name" />
+ <result property="jobCategory" column="job_category" />
<result property="projectAddress" column="project_address" />
- <result property="deptUserName" column="dept_user_name" />
+<!-- <result property="deptUserName" column="dept_user_name" />-->
+ <result property="deptPostName" column="dept_post_name" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" />
<result property="version" column="version" />
<result property="state" column="state" />
<result property="remark" column="remark" />
<result property="projectDateStart" column="project_date_start" />
<result property="projectDateEnd" column="project_date_end" />
+ <result property="projectCheckTime" column="project_check_time" />
<result property="expertCertificate" column="expert_certificate" />
- <result property="envaluationState" column="envaluation_state" />
+ <result property="evaluationState" column="evaluation_state" />
<result property="expertNum" column="expert_num" />
+ <result property="expertId" column="expert_id" />
+ <result property="expertName" column="expert_name" />
+ <result property="projectEndTime" column="project_end_time" />
+ <result property="desc" column="desc" />
+ <result property="step" column="step" />
<result property="delFlag" column="del_flag" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
@@ -27,50 +35,173 @@
<result property="updateTime" column="update_time" />
</resultMap>
+ <resultMap type="com.gkhy.system.domain.vo.response.ProjectExpertManagementInfoRes" id="ProjectManagementInfoResult">
+ <result property="id" column="id" />
+ <result property="projectName" column="project_name" />
+ <result property="projectCode" column="project_code" />
+ <result property="deptName" column="dept_name" />
+ <result property="remark" column="remark" />
+ <result property="state" column="state" />
+ <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" />
+ <result property="projectCheckTime" column="project_check_time" />
+ <result property="createTime" column="create_time"/>
+<!-- <collection property="projectExpertCheckResp" javaType="java.util.List" resultMap="ExpertCheck" />-->
+ <collection property="projectExpertCheckResp"
+ javaType="java.util.List"
+ ofType="com.gkhy.system.domain.vo.response.ProjectExpertCheckResp"
+ select="selectExpertsByProjectId"
+ column="id">
+ </collection>
+
+ </resultMap>
+ <resultMap id="ExpertCheck" type="com.gkhy.system.domain.vo.response.ProjectExpertCheckResp">
+ <result property="id" column="project_expert_id" />
+ <result property="expertId" column="expert_id_info" />
+ <result property="name" column="name" />
+ <result property="sex" column="sex" />
+ <result property="idCard" column="id_card" />
+ <result property="domain" column="domain" />
+ <result property="ratingLevel" column="rating_level" />
+ <result property="selectionMode" column="selection_mode" />
+ <result property="teamLeader" column="team_leader" />
+ <result property="companyName" column="company_name" />
+ <result property="phone" column="phone" />
+ <result property="selectionTime" column="selection_time" />
+ <result property="expertRemark" column="expert_remark" />
+ <result property="expertType" column="expert_type" />
+ </resultMap>
+
<sql id="selectProjectManagementVo">
- select id, project_name, dept_id, dept_name, company_name, project_address, dept_user_name, version, state, remark, project_date_start, project_date_end, expert_certificate, envaluation_state, expert_num, del_flag, create_by, create_time, update_by, update_time from project_management
+ select id, project_name, dept_id, dept_name, job_category, project_address,dept_post_name,
+ version, state, remark, project_date_start, project_date_end, expert_certificate,
+ evaluation_state, expert_num, del_flag, create_by, create_time, update_by, update_time,project_check_time,expert_id,
+ expert_name,project_end_time,`desc`,step,project_code
+ from project_management
</sql>
<select id="selectProjectManagementList" parameterType="ProjectManagement" resultMap="ProjectManagementResult">
<include refid="selectProjectManagementVo"/>
- <where>
+ <where>
+ and del_flag = 0
<if test="projectName != null and projectName != ''"> and project_name like concat('%', #{projectName}, '%')</if>
+ <if test="projectCode != null and projectCode != ''"> and project_code like concat('%', #{projectCode}, '%')</if>
<if test="deptId != null "> and dept_id = #{deptId}</if>
+ <if test="deptIds != null and deptIds.size() > 0">
+ AND dept_id IN
+ <foreach item="deptId" collection="deptIds" open="(" separator="," close=")">
+ #{deptId}
+ </foreach>
+ </if>
<if test="deptName != null and deptName != ''"> and dept_name like concat('%', #{deptName}, '%')</if>
- <if test="companyName != null and companyName != ''"> and company_name like concat('%', #{companyName}, '%')</if>
+ <if test="jobCategory != null and jobCategory != ''"> and job_category like concat('%', #{jobCategory}, '%')</if>
<if test="projectAddress != null and projectAddress != ''"> and project_address = #{projectAddress}</if>
- <if test="deptUserName != null and deptUserName != ''"> and dept_user_name like concat('%', #{deptUserName}, '%')</if>
+<!-- <if test="deptUserName != null and deptUserName != ''"> and dept_user_name like concat('%', #{deptUserName}, '%')</if>-->
<if test="version != null "> and version = #{version}</if>
<if test="state != null "> and state = #{state}</if>
- <if test="projectDateStart != null "> and project_date_start = #{projectDateStart}</if>
- <if test="projectDateEnd != null "> and project_date_end = #{projectDateEnd}</if>
+ <if test="step!= null "> and step = #{step}</if>
+ <if test="projectDateStart != null "> and date_format(project_date_start,'%Y%m%d') >= date_format(#{projectDateStart},'%Y%m%d')</if>
+ <if test="projectDateEnd != null "> and date_format(project_date_end,'%Y%m%d') <= date_format(#{projectDateEnd},'%Y%m%d')</if>
<if test="expertCertificate != null and expertCertificate != ''"> and expert_certificate = #{expertCertificate}</if>
- <if test="envaluationState != null "> and envaluation_state = #{envaluationState}</if>
+ <if test="evaluationState != null "> and evaluation_state = #{evaluationState}</if>
<if test="expertNum != null "> and expert_num = #{expertNum}</if>
</where>
+ order by create_time desc
</select>
+
+ <select id="selectProjectData" parameterType="ProjectManagement" resultType="com.gkhy.system.domain.vo.response.ProjectDataResp">
+ select a.dept_name deptName,c.name expertName,b.tax_expert_fee expertFee,a.create_time createTime,a.project_name projectName,
+ b.major_dangers majorDangers,b.general_hazards generalHazards,b.travel_expenses travelExpenses,b.accommodation_fee accommodationFee
+ from project_management a
+ left join project_expert b on a.id = b.project_id and b.del_flag = 0 and b.evaluation_state = 1
+ left join sys_expert_info c on b.expert_id = c.id
+ where a.del_flag = 0 and a.state = 4 and a.evaluation_state = 1
+ <if test="projectName != null and projectName != ''"> and a.project_name like concat('%', #{projectName}, '%')</if>
+ <if test="projectCode != null and projectCode != ''"> and a.project_code like concat('%', #{projectCode}, '%')</if>
+ <if test="deptId != null "> and a.dept_id = #{deptId}</if>
+ <if test="deptIds != null and deptIds.size() > 0">
+ AND a.dept_id IN
+ <foreach item="deptId" collection="deptIds" open="(" separator="," close=")">
+ #{deptId}
+ </foreach>
+ </if>
+ <if test="projectDateStart != null "> and date_format(a.project_date_start,'%Y%m%d') >= date_format(#{projectDateStart},'%Y%m%d')</if>
+ <if test="projectDateEnd != null "> and date_format(a.project_date_end,'%Y%m%d') <= date_format(#{projectDateEnd},'%Y%m%d')</if>
+
+ UNION ALL
+
+ select a.dept_name deptName,b.name expertName,b.tax_expert_fee expertFee,a.create_time createTime,a.project_name projectName,
+ b.major_dangers majorDangers,b.general_hazards generalHazards,b.travel_expenses travelExpenses,b.accommodation_fee accommodationFee
+ from project_management a
+ left join out_project_expert b on a.id = b.project_id and b.del_flag = 0 and b.evaluation_state = 1
+ where a.del_flag = 0 and a.state = 4 and a.evaluation_state = 1
+ <if test="projectName != null and projectName != ''"> and a.project_name like concat('%', #{projectName}, '%')</if>
+ <if test="projectCode != null and projectCode != ''"> and a.project_code like concat('%', #{projectCode}, '%')</if>
+ <if test="deptId != null "> and a.dept_id = #{deptId}</if>
+ <if test="deptIds != null and deptIds.size() > 0">
+ AND a.dept_id IN
+ <foreach item="deptId" collection="deptIds" open="(" separator="," close=")">
+ #{deptId}
+ </foreach>
+ </if>
+ <if test="projectDateStart != null "> and date_format(a.project_date_start,'%Y%m%d') >= date_format(#{projectDateStart},'%Y%m%d')</if>
+ <if test="projectDateEnd != null "> and date_format(a.project_date_end,'%Y%m%d') <= date_format(#{projectDateEnd},'%Y%m%d')</if>
+
+
+ order BY deptName asc ,expertName desc
+ </select>
+
+ <select id="selectProjectDataOut" parameterType="ProjectManagement" resultType="com.gkhy.system.domain.vo.response.ProjectDataResp">
+ select a.dept_name deptName,b.name expertName,b.tax_expert_fee expertFee,a.create_time createTime,a.project_name projectName,
+ b.major_dangers majorDangers,b.general_hazards generalHazards,b.travel_expenses travelExpenses,b.accommodation_fee accommodationFee
+ from project_management a
+ left join out_project_expert b on a.id = b.project_id and b.del_flag = 0 and b.evaluation_state = 1
+ where a.del_flag = 0 and a.state = 4 and a.evaluation_state = 1
+ <if test="projectName != null and projectName != ''"> and a.project_name like concat('%', #{projectName}, '%')</if>
+ <if test="projectCode != null and projectCode != ''"> and a.project_code like concat('%', #{projectCode}, '%')</if>
+ <if test="deptId != null "> and a.dept_id = #{deptId}</if>
+ <if test="deptIds != null and deptIds.size() > 0">
+ AND a.dept_id IN
+ <foreach item="deptId" collection="deptIds" open="(" separator="," close=")">
+ #{deptId}
+ </foreach>
+ </if>
+ <if test="projectDateStart != null "> and date_format(a.project_date_start,'%Y%m%d') >= date_format(#{projectDateStart},'%Y%m%d')</if>
+ <if test="projectDateEnd != null "> and date_format(a.project_date_end,'%Y%m%d') <= date_format(#{projectDateEnd},'%Y%m%d')</if>
+ order BY a.dept_name asc ,b.`name` desc
+ </select>
+
+
<select id="selectProjectManagementById" parameterType="Long" resultMap="ProjectManagementResult">
<include refid="selectProjectManagementVo"/>
- where id = #{id}
+ where id = #{id} and del_flag = 0
</select>
<insert id="insertProjectManagement" parameterType="ProjectManagement" useGeneratedKeys="true" keyProperty="id">
insert into project_management
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="projectName != null and projectName != ''">project_name,</if>
+ <if test="projectCode != null and projectCode != ''">project_code,</if>
<if test="deptId != null">dept_id,</if>
<if test="deptName != null and deptName != ''">dept_name,</if>
- <if test="companyName != null and companyName != ''">company_name,</if>
+ <if test="jobCategory != null and jobCategory != ''">job_category,</if>
<if test="projectAddress != null and projectAddress != ''">project_address,</if>
- <if test="deptUserName != null and deptUserName != ''">dept_user_name,</if>
+<!-- <if test="deptUserName != null and deptUserName != ''">dept_user_name,</if>-->
+ <if test="deptPostName != null and deptPostName != ''">dept_post_name,</if>
<if test="version != null">version,</if>
<if test="state != null">state,</if>
+ <if test="step != null">step,</if>
<if test="remark != null">remark,</if>
<if test="projectDateStart != null">project_date_start,</if>
<if test="projectDateEnd != null">project_date_end,</if>
<if test="expertCertificate != null">expert_certificate,</if>
- <if test="envaluationState != null">envaluation_state,</if>
+ <if test="evaluationState != null">evaluation_state,</if>
<if test="expertNum != null">expert_num,</if>
<if test="delFlag != null">del_flag,</if>
<if test="createBy != null">create_by,</if>
@@ -80,18 +211,21 @@
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="projectName != null and projectName != ''">#{projectName},</if>
+ <if test="projectCode != null and projectCode != ''">#{projectCode},</if>
<if test="deptId != null">#{deptId},</if>
<if test="deptName != null and deptName != ''">#{deptName},</if>
- <if test="companyName != null and companyName != ''">#{companyName},</if>
+ <if test="jobCategory != null and jobCategory != ''">#{jobCategory},</if>
<if test="projectAddress != null and projectAddress != ''">#{projectAddress},</if>
- <if test="deptUserName != null and deptUserName != ''">#{deptUserName},</if>
+<!-- <if test="deptUserName != null and deptUserName != ''">#{deptUserName},</if>-->
+ <if test="deptPostName != null and deptPostName != ''">#{deptPostName},</if>
<if test="version != null">#{version},</if>
<if test="state != null">#{state},</if>
+ <if test="step != null">#{step},</if>
<if test="remark != null">#{remark},</if>
<if test="projectDateStart != null">#{projectDateStart},</if>
<if test="projectDateEnd != null">#{projectDateEnd},</if>
<if test="expertCertificate != null">#{expertCertificate},</if>
- <if test="envaluationState != null">#{envaluationState},</if>
+ <if test="evaluationState != null">#{evaluationState},</if>
<if test="expertNum != null">#{expertNum},</if>
<if test="delFlag != null">#{delFlag},</if>
<if test="createBy != null">#{createBy},</if>
@@ -107,17 +241,25 @@
<if test="projectName != null and projectName != ''">project_name = #{projectName},</if>
<if test="deptId != null">dept_id = #{deptId},</if>
<if test="deptName != null and deptName != ''">dept_name = #{deptName},</if>
- <if test="companyName != null and companyName != ''">company_name = #{companyName},</if>
+ <if test="jobCategory != null and jobCategory != ''">job_category = #{jobCategory},</if>
<if test="projectAddress != null and projectAddress != ''">project_address = #{projectAddress},</if>
- <if test="deptUserName != null and deptUserName != ''">dept_user_name = #{deptUserName},</if>
+<!-- <if test="deptUserName != null and deptUserName != ''">dept_user_name = #{deptUserName},</if>-->
+ <if test="deptPostName != null and deptPostName != ''">dept_post_name = #{deptPostName},</if>
<if test="version != null">version = #{version},</if>
<if test="state != null">state = #{state},</if>
+ <if test="step != null">step = #{step},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="projectDateStart != null">project_date_start = #{projectDateStart},</if>
<if test="projectDateEnd != null">project_date_end = #{projectDateEnd},</if>
+ <if test="projectCheckTime != null">project_check_time = #{projectCheckTime},</if>
<if test="expertCertificate != null">expert_certificate = #{expertCertificate},</if>
- <if test="envaluationState != null">envaluation_state = #{envaluationState},</if>
+ <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">expert_name = #{expertName},</if>
+ <if test="expertType != null">expert_type = #{expertType},</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>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
@@ -127,14 +269,55 @@
where id = #{id}
</update>
- <delete id="deleteProjectManagementById" parameterType="Long">
- delete from project_management where id = #{id}
- </delete>
+ <update id="deleteProjectManagementById" parameterType="Long">
+ update project_management set del_flag = 1 where id = #{id}
+ </update>
- <delete id="deleteProjectManagementByIds" parameterType="String">
- delete from project_management where id in
+ <update id="deleteProjectManagementByIds" parameterType="String">
+ update project_management set del_flag = 1 where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
- </delete>
+ </update>
+
+ <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,
+ a.project_code,a.expert_num,a.create_time
+ from project_management a
+ where a.id = #{id}
+
+ </select>
+
+ <select id="selectExpertsByProjectId" parameterType="long" resultMap="ExpertCheck">
+ select 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,null selection_time,c.remark expert_remark, 1 as expert_type
+ from project_expert b
+ left join sys_expert_info c on b.expert_id = c.id
+ where b.project_id = #{id} and b.del_flag = 0
+ union all
+ select b.id project_expert_id,b.id expert_id_info,b.name,b.sex,b.id_card,b.domain,b.rating_level,b.selection_mode,b.team_leader,
+ b.company_name,'' as phone,null selection_time,'' as expert_remark, 2 as expert_type
+ from out_project_expert b
+ where b.project_id = #{id} and b.del_flag = 0
+ order by team_leader 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
+ from project_management a
+ where a.del_flag = 0 and a.state = 4
+ <if test="deptId != null "> and a.dept_id = #{deptId}</if>
+ <if test="projectCheckTime != null "> and a.project_check_time = #{projectCheckTime}</if>
+ <if test="projectName != null and projectName != ''"> and a.project_name like concat('%', #{projectName}, '%')</if>
+ <if test="evaluationState != null "> and a.evaluation_state = #{evaluationState}</if>
+ order by a.create_time desc
+ </select>
+
+ <select id="getDataNum" parameterType="Long" resultType="Integer">
+ select state from project_management where del_flag = 0
+ <if test="deptId != null "> and dept_id = #{deptId}</if>
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.2