<?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.mingsoft.job.dao.IResumeDao">
    <!-- 表字段 -->
    <sql id="column_list">
        resumeid,peopleId,sex,email,pic,nation,phone,idcard,workyear,education,birthday,marriageStatus,city,createdatetime,updatedatetime,status,certype,name,filepath,school,major
    </sql>
	<!-- 将实体属性与表字段对接开始 -->    
    <resultMap id="resultMap" type="com.mingsoft.job.entity.ResumeEntity">
       <id column="resumeid" property="resumeid" />
       <result column="peopleId" property="peopleId" />
       <result column="sex" property="sex" />
       <result column="email" property="email" />
       <result column="pic" property="pic" />
       <result column="nation" property="nation" />
       <result column="phone" property="phone" />
       <result column="idcard" property="idcard" />
       <result column="workyear" property="workyear" />
       <result column="education" property="education" />
       <result column="birthday" property="birthday" />
       <result column="marriageStatus" property="marriageStatus" />
       <result column="city" property="city" />
       <result column="createdatetime" property="createdatetime" />
       <result column="updatedatetime" property="updatedatetime" />
       <result column="status" property="status" />
       <result column="certype" property="certype" />
       <result column="name" property="name" />
       <result column="filepath" property="filepath" />
       <result column="school" property="school" />
       <result column="major" property="major" />
       
    </resultMap>
	<!-- 将实体属性与表字段对接结束 -->
    <!-- 新增 -->
    <insert id="saveEntity" useGeneratedKeys="true" keyProperty="resumeid"
       parameterType="com.mingsoft.job.entity.ResumeEntity">
       insert into resume
       <trim prefix="(" suffix=")" suffixOverrides=",">
           <if test="peopleId != null">peopleId,</if>
           <if test="sex != null">sex,</if>
           <if test="email != null">email,</if>
           <if test="pic != null">pic,</if>
           <if test="nation != null">nation,</if>
           <if test="phone != null">phone,</if>
           <if test="idcard != null">idcard,</if>
           <if test="workyear != null">workyear,</if>
           <if test="education != null">education,</if>
           <if test="birthday != null">birthday,</if>
           <if test="marriageStatus != null">marriageStatus,</if>
           <if test="city != null">city,</if>
           <if test="createdatetime != null">createdatetime,</if>
           <if test="updatedatetime != null">updatedatetime,</if>
           <if test="status != null">status,</if>
           <if test="certype != null">certype,</if>
           <if test="name != null">name,</if>
           <if test="filepath != null">filepath,</if>
           <if test="school != null">school,</if>
           <if test="major != null">major,</if>
       </trim>
       <trim prefix="values (" suffix=")" suffixOverrides=",">
           <if test="peopleId != null">#{peopleId},</if>
           <if test="sex != null">#{sex},</if>
           <if test="email != null">#{email},</if>
           <if test="pic != null">#{pic},</if>
           <if test="nation != null">#{nation},</if>
           <if test="phone != null">#{phone},</if>
           <if test="idcard != null">#{idcard},</if>
           <if test="workyear != null">#{workyear},</if>
           <if test="education != null">#{education},</if>
           <if test="birthday != null">#{birthday},</if>
           <if test="marriageStatus != null">#{marriageStatus},</if>
           <if test="city != null">#{city},</if>
           <if test="createdatetime != null">#{createdatetime},</if>
           <if test="updatedatetime != null">#{updatedatetime},</if>
           <if test="status != null">#{status},</if>
           <if test="certype != null">#{certype},</if>
           <if test="name != null">#{name},</if>
           <if test="filepath != null">#{filepath},</if>
           <if test="school != null">#{school},</if>
           <if test="major != null">#{major},</if>
       </trim>
    </insert>
    <!--根据peopleId查询简历  -->
    <select id="getResumeByPeopleId" resultMap="resultMap">
    	select 
       <include refid="column_list" />
       from resume 
       where peopleId = #{peopleId}
    </select>
    
    <!-- 查询 -->
    <select id="queryAll" resultMap="resultMap" parameterType="java.lang.String">
       select
       <include refid="column_list" />
       from resume
    </select>
    <!-- 查询带分页 -->
    <select id="query" resultMap="resultMap" parameterType="java.util.Map">
       select
       <include refid="column_list" />
       from resume r
       <where>
	   	<if test="whereMap!=null">
	   		<if test="whereMap.peopleId!=null">
	   			and r.peopleId = #{whereMap.peopleId}
	   		</if>
	   		<if test="whereMap.idcard!=null">
	   			and r.idcard = #{whereMap.idcard}
	   		</if>
			<if test="whereMap.education!=null">
				and r.education in #{whereMap.education}
			</if>
			<if test="whereMap.school!=null">
				and r.school in #{whereMap.school}
			</if>
			<if test="whereMap.major!=null">
				and r.major in #{whereMap.major}
			</if>						
			<if test="whereMap.status!=null">
				and r.status in 
				<foreach collection="whereMap.status" item="status" index="index" open="(" separator="," close=")">
					#{status}
				</foreach>
			</if>
	   			   			   			   		
	   	</if>
	   </where>
       <if test="orderBy != null">
           order by ${orderBy}
       </if>
       <if test="order != null">
           ${order}
       </if>
    </select>
    
	<!-- 根据ID查找实体 -->
	<select id="getEntity" resultMap="resultMap" parameterType="int">
       select
       <include refid="column_list" />
       from resume where resumeid = #{resumeid}
	</select>
	<!-- 查找文章管理的信息 结束 -->
    
    
    <!-- 更新 -->
    <update id="updateEntity" parameterType="com.mingsoft.job.entity.ResumeEntity">
       update resume
       <set>
           <if test="sex != null">sex=#{sex},</if>
           <if test="email != null">email=#{email},</if>
           <if test="pic != null">pic=#{pic},</if>
           <if test="nation != null">nation=#{nation},</if>
           <if test="phone != null">phone=#{phone},</if>
           <if test="idcard != null">idcard=#{idcard},</if>
           <if test="workyear != null">workyear=#{workyear},</if>
           <if test="education != null">education=#{education},</if>
           <if test="birthday != null">birthday=#{birthday},</if>
           <if test="marriageStatus != null">marriageStatus=#{marriageStatus},</if>
           <if test="city != null">city=#{city},</if>
           <if test="createdatetime != null">createdatetime=#{createdatetime},</if>
           <if test="updatedatetime != null">updatedatetime=#{updatedatetime},</if>
           <if test="status != null">status=#{status},</if>
           <if test="certype != null">certype=#{certype},</if>
           <if test="name != null">name=#{name},</if>
           <if test="filepath != null">filepath=#{filepath},</if>
           <if test="school != null">school=#{school},</if>
           <if test="major != null">major=#{major},</if>           
       </set>
       where resumeid=#{resumeid}
    </update>
    
    <!-- 更新状态 -->
    <update id="updateJobStatus" parameterType="com.mingsoft.job.entity.ResumeEntity">
       update resume
       <set>
           <if test="updatedatetime != null">updatedatetime=#{updatedatetime},</if>
           <if test="status != null">status=#{status},</if>
       </set>
       where resumeid=#{resumeid}
    </update> 
    
    <!-- 更新简历附件保存路径 -->
    <update id="updateResumeFilepath" >
       update resume
       <set>
           <if test="updatedatetime != null">updatedatetime=#{updatedatetime},</if>
           <if test="filepath != null">filepath=#{filepath},</if>
       </set>
       where resumeid=#{resumeid}
    </update>     
       
    <!-- 删除resume -->
    <delete id="deleteEntity" parameterType="java.lang.Integer">
       delete from resume
       where resumeid =
       #{resumeid}
    </delete>
    
</mapper>
