<?xml version="1.0" encoding="UTF-8" ?>
|
<!DOCTYPE mapper
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="com.gkhy.system.mapper.ProjectExpertMapper">
|
|
<resultMap type="ProjectExpert" id="ProjectExpertResult">
|
<result property="id" column="id" />
|
<result property="projectId" column="project_id" />
|
<result property="expertId" column="expert_id" />
|
<result property="score" column="score" />
|
<result property="evaluationState" column="evaluation_state" />
|
<result property="selectionMode" column="selection_mode" />
|
<result property="teamLeader" column="team_leader" />
|
<result property="delFlag" column="del_flag" />
|
<result property="createBy" column="create_by" />
|
<result property="createTime" column="create_time" />
|
<result property="updateBy" column="update_by" />
|
<result property="updateTime" column="update_time" />
|
</resultMap>
|
|
<sql id="selectProjectExpertVo">
|
select id, project_id, expert_id, score, evaluation_state, selection_mode, team_leader, del_flag, create_by, create_time, update_by, update_time from project_expert
|
</sql>
|
|
<select id="selectProjectExpertList" parameterType="ProjectExpert" resultMap="ProjectExpertResult">
|
<include refid="selectProjectExpertVo"/>
|
<where>
|
and del_flag = 0
|
<if test="projectId != null "> and project_id = #{projectId}</if>
|
<if test="expertId != null "> and expert_id = #{expertId}</if>
|
<if test="score != null "> and score = #{score}</if>
|
<if test="evaluationState != null "> and evaluation_state = #{evaluationState}</if>
|
<if test="selectionMode != null "> and selection_mode = #{selectionMode}</if>
|
<if test="teamLeader != null "> and team_leader = #{teamLeader}</if>
|
</where>
|
</select>
|
|
<select id="selectProjectExpertById" parameterType="Long" resultMap="ProjectExpertResult">
|
<include refid="selectProjectExpertVo"/>
|
where id = #{id}
|
</select>
|
|
<insert id="insertProjectExpert" parameterType="ProjectExpert" useGeneratedKeys="true" keyProperty="id">
|
insert into project_expert
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<if test="projectId != null">project_id,</if>
|
<if test="expertId != null">expert_id,</if>
|
<if test="score != null">score,</if>
|
<if test="evaluationState != null">evaluation_state,</if>
|
<if test="selectionMode != null">selection_mode,</if>
|
<if test="teamLeader != null">team_leader,</if>
|
<if test="delFlag != null">del_flag,</if>
|
<if test="createBy != null">create_by,</if>
|
<if test="createTime != null">create_time,</if>
|
<if test="updateBy != null">update_by,</if>
|
<if test="updateTime != null">update_time,</if>
|
</trim>
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<if test="projectId != null">#{projectId},</if>
|
<if test="expertId != null">#{expertId},</if>
|
<if test="score != null">#{score},</if>
|
<if test="evaluationState != null">#{evaluationState},</if>
|
<if test="selectionMode != null">#{selectionMode},</if>
|
<if test="teamLeader != null">#{teamLeader},</if>
|
<if test="delFlag != null">#{delFlag},</if>
|
<if test="createBy != null">#{createBy},</if>
|
<if test="createTime != null">#{createTime},</if>
|
<if test="updateBy != null">#{updateBy},</if>
|
<if test="updateTime != null">#{updateTime},</if>
|
</trim>
|
</insert>
|
|
<insert id="batchInsertProjectExpert" parameterType="java.util.List" >
|
insert into project_expert (project_id,expert_id,selection_mode,team_leader,create_by)
|
values
|
<foreach collection="list" item="item" separator=",">
|
(#{item.projectId},#{item.expertId},#{item.selectionMode},#{item.teamLeader},#{item.createBy})
|
</foreach>
|
</insert>
|
|
|
<update id="updateProjectExpert" parameterType="ProjectExpert">
|
update project_expert
|
<trim prefix="SET" suffixOverrides=",">
|
<if test="projectId != null">project_id = #{projectId},</if>
|
<if test="expertId != null">expert_id = #{expertId},</if>
|
<if test="score != null">score = #{score},</if>
|
<if test="evaluationState != null">evaluation_state = #{evaluationState},</if>
|
<if test="selectionMode != null">selection_mode = #{selectionMode},</if>
|
<if test="teamLeader != null">team_leader = #{teamLeader},</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>
|
<if test="updateBy != null">update_by = #{updateBy},</if>
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
</trim>
|
where id = #{id}
|
</update>
|
|
<update id="batchUpdateProjectExpert" parameterType="java.util.List">
|
<foreach collection="list" item="item" separator=";">
|
update project_expert
|
<set>
|
<if test="item.projectId != null">project_id = #{item.projectId},</if>
|
<if test="item.expertId != null">expert_id = #{item.expertId},</if>
|
<if test="item.score != null">score = #{item.score},</if>
|
<if test="item.evaluationState != null">evaluation_state = #{item.evaluationState},</if>
|
<if test="item.selectionMode != null">selection_mode = #{item.selectionMode},</if>
|
<if test="item.teamLeader != null">team_leader = #{item.teamLeader},</if>
|
<if test="item.updateBy != null">update_by = #{item.updateBy}</if>
|
</set>
|
where id = #{item.id}
|
</foreach>
|
</update>
|
|
<update id="deleteProjectExpertById" parameterType="Long">
|
update project_expert set del_flag= 1 where 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=")">
|
#{id}
|
</foreach>
|
</update>
|
|
<select id="getUnEva" resultType="int" parameterType="Long">
|
select count(id) from project_expert where project_id = #{id} and del_flag = 0 and evaluation_state = 0
|
</select>
|
|
<select id="projectExpertEvaluationList" parameterType="Long" resultType="com.gkhy.system.domain.vo.response.ProjectExpertEvaluationResp">
|
select b.id ,b.expert_id expertId ,c.name,c.sex,c.id_card idCard,c.domain,c.rating_level ratingLevel,
|
b.selection_mode selectionMode,b.team_leader teamLeader,b.score,b.evaluation_state evaluationState
|
from project_expert b
|
left join sys_expert_info c on b.expert_id = c.id
|
where b.del_flag = 0 and b.project_id = #{projectId}
|
order by b.team_leader asc , b.selection_mode asc, b.create_time desc
|
</select>
|
|
|
<select id="projectExpertEvaList" parameterType="com.gkhy.system.domain.vo.request.SysProjectExpertReq" resultType="com.gkhy.system.domain.vo.response.ProjectExpertResp">
|
select a.id projectId, a.project_name projectName,
|
b.id projectExpertId,b.expert_id expertId,c.name,c.id_card idCard,c.domain,b.selection_mode selectionMode,
|
b.team_leader teamLeader,b.update_time updateTime,b.score
|
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 1=1
|
<if test="projectName != null and projectName != ''"> and a.project_name like concat('%', #{projectName}, '%')</if>
|
<if test="name != null and name != ''">
|
and c.name like concat('%', #{name}, '%')
|
</if>
|
<if test="idCard != null and idCard != ''">
|
and c.id_card like concat('%', #{idCard}, '%')
|
</if>
|
<if test="domain != null and domain != ''">
|
and c.domain like concat('%', #{domain}, '%')
|
</if>
|
<if test="startTime != null "><!-- 开始时间检索 -->
|
and date_format(b.update_time,'%y%m%d') >= date_format(#{startTime},'%y%m%d')
|
</if>
|
<if test="endTime != null "><!-- 结束时间检索 -->
|
and date_format(b.update_time,'%y%m%d') <= date_format(#{endTime},'%y%m%d')
|
</if>
|
order by b.team_leader asc , b.create_time desc
|
</select>
|
|
</mapper>
|