<?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.ILanguageDao">
    <!-- 表字段 -->
    <sql id="column_list">
        languageid,name,speaking,writing,reading,resumeid,createdatetime,updatedatetime,status,bak1,bak2,bak3,bak4,bak5
    </sql>
	<!-- 将实体属性与表字段对接开始 -->    
    <resultMap id="resultMap" type="com.mingsoft.job.entity.LanguageEntity">
       <id column="languageid" property="languageid" />
       <result column="name" property="name" />
       <result column="speaking" property="speaking" />
       <result column="writing" property="writing" />
       <result column="reading" property="reading" />
       <result column="resumeid" property="resumeid" />
       <result column="createdatetime" property="createdatetime" />
       <result column="updatedatetime" property="updatedatetime" />
       <result column="status" property="status" />
       <result column="bak1" property="bak1" />
       <result column="bak2" property="bak2" />
       <result column="bak3" property="bak3" />
       <result column="bak4" property="bak4" />
       <result column="bak5" property="bak5" />

    </resultMap>
	<!-- 将实体属性与表字段对接结束 -->
    <!-- 新增 -->
    <insert id="saveEntity" useGeneratedKeys="true" keyProperty="languageid"
       parameterType="com.mingsoft.job.entity.LanguageEntity">
       insert into resume_language
       <trim prefix="(" suffix=")" suffixOverrides=",">
           <if test="name != null">name,</if>
           <if test="speaking != null">speaking,</if>
           <if test="writing != null">writing,</if>
           <if test="reading != null">reading,</if>
           <if test="resumeid != null">resumeid,</if>
           <if test="createdatetime != null">createdatetime,</if>
           <if test="updatedatetime != null">updatedatetime,</if>
           <if test="status != null">status,</if>
           <if test="bak1 != null">bak1,</if>
           <if test="bak2 != null">bak2,</if>
           <if test="bak3 != null">bak3,</if>
           <if test="bak4 != null">bak4,</if>
           <if test="bak5 != null">bak5,</if>
       </trim>
       <trim prefix="values (" suffix=")" suffixOverrides=",">
           <if test="name != null">#{name},</if>
           <if test="speaking != null">#{speaking},</if>
           <if test="writing != null">#{writing},</if>
           <if test="reading != null">#{reading},</if>
           <if test="resumeid != null">#{resumeid},</if>
           <if test="resumeid != null">#{resumeid},</if>
           <if test="createdatetime != null">#{createdatetime},</if>
           <if test="updatedatetime != null">#{updatedatetime},</if>
           <if test="status != null">#{status},</if>
           <if test="bak1 != null">#{bak1},</if>
           <if test="bak2 != null">#{bak2},</if>
           <if test="bak3 != null">#{bak3},</if>
           <if test="bak4 != null">#{bak4},</if>
           <if test="bak5 != null">#{bak5},</if>
       </trim>
    </insert>
    <!-- 查询 -->
    <select id="queryAll" resultMap="resultMap" parameterType="java.lang.String">
       select
       <include refid="column_list" />
       from resume_language
    </select>
    <!-- 查询带分页 -->
    <select id="query" resultMap="resultMap" parameterType="java.util.Map">
       select
       <include refid="column_list" />
       from resume_language r
       <where>
	   	<if test="whereMap!=null">
	   		<if test="whereMap.languageid!=null">
	   			and r.languageid = #{languageid}
	   		</if>
	   		<if test="whereMap.name!=null">
	   			and r.name = #{name}
	   		</if>	
	   		<if test="whereMap.resumeid!=null">
	   			and r.resumeid = #{resumeid}
	   		</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_language where languageid = #{languageid}
	</select> 
    <!-- 更新 -->
    <update id="updateEntity" parameterType="com.mingsoft.job.entity.LanguageEntity">
       update resume_language
       <set>
           <if test="name != null">name=#{name},</if>
           <if test="speaking != null">speaking=#{speaking},</if>
           <if test="writing != null">writing=#{writing},</if>
           <if test="reading != null">reading=#{reading},</if>
           <if test="resumeid != null">resumeid=#{resumeid},</if>
           <if test="createdatetime != null">createdatetime=#{createdatetime},</if>
           <if test="updatedatetime != null">updatedatetime=#{updatedatetime},</if>
           <if test="status != null">status=#{status},</if>
           <if test="bak1 != null">bak1=#{bak1},</if>
           <if test="bak2 != null">bak2=#{bak2},</if>
           <if test="bak3 != null">bak3=#{bak3},</if>
           <if test="bak4 != null">bak4=#{bak4},</if>
           <if test="bak5 != null">bak5=#{bak5},</if>
       </set>
       where languageid=#{languageid}
    </update>
    <!-- 删除 -->
    <delete id="deleteEntity" parameterType="java.lang.Integer">
       delete from resume_language
       where languageid =
       #{languageid}
    </delete>
</mapper>
