<?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.aps.job.mapper.ApsBomHeaderJobMapper"> 
 | 
     
 | 
    <resultMap type="com.aps.job.domain.ApsBomHeaderJob" id="ApsBomHeaderJobResult"> 
 | 
        <result property="id"    column="id"    /> 
 | 
        <result property="bomHeaderId"    column="bom_header_id"    /> 
 | 
        <result property="itemCode"    column="item_code"    /> 
 | 
        <result property="itemName"    column="item_name"    /> 
 | 
        <result property="startDate"    column="start_date"    /> 
 | 
        <result property="endDate"    column="end_date"    /> 
 | 
        <result property="orgCode"    column="org_code"    /> 
 | 
        <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="selectApsBomHeaderJobVo"> 
 | 
        select id, bom_header_id, item_code, item_name, start_date, end_date, org_code, del_flag, create_by, create_time, update_by, update_time from aps_bom_header_job 
 | 
    </sql> 
 | 
  
 | 
    <select id="selectApsBomHeaderJobList" parameterType="com.aps.job.domain.ApsBomHeaderJob" resultMap="ApsBomHeaderJobResult"> 
 | 
        <include refid="selectApsBomHeaderJobVo"/> 
 | 
        <where>   
 | 
            <if test="bomHeaderId != null  and bomHeaderId != ''"> and bom_header_id = #{bomHeaderId}</if> 
 | 
            <if test="itemCode != null  and itemCode != ''"> and item_code = #{itemCode}</if> 
 | 
            <if test="itemName != null  and itemName != ''"> and item_name like concat('%', #{itemName}, '%')</if> 
 | 
            <if test="startDate != null "> and start_date = #{startDate}</if> 
 | 
            <if test="endDate != null "> and end_date = #{endDate}</if> 
 | 
            <if test="orgCode != null  and orgCode != ''"> and org_code = #{orgCode}</if> 
 | 
        </where> 
 | 
    </select> 
 | 
     
 | 
    <select id="selectApsBomHeaderJobById" parameterType="Long" resultMap="ApsBomHeaderJobResult"> 
 | 
        <include refid="selectApsBomHeaderJobVo"/> 
 | 
        where id = #{id} 
 | 
    </select> 
 | 
  
 | 
    <insert id="insertApsBomHeaderJob" parameterType="com.aps.job.domain.ApsBomHeaderJob"> 
 | 
        insert into aps_bom_header_job 
 | 
        <trim prefix="(" suffix=")" suffixOverrides=","> 
 | 
            <if test="id != null">id,</if> 
 | 
            <if test="bomHeaderId != null">bom_header_id,</if> 
 | 
            <if test="itemCode != null">item_code,</if> 
 | 
            <if test="itemName != null">item_name,</if> 
 | 
            <if test="startDate != null">start_date,</if> 
 | 
            <if test="endDate != null">end_date,</if> 
 | 
            <if test="orgCode != null">org_code,</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="id != null">#{id},</if> 
 | 
            <if test="bomHeaderId != null">#{bomHeaderId},</if> 
 | 
            <if test="itemCode != null">#{itemCode},</if> 
 | 
            <if test="itemName != null">#{itemName},</if> 
 | 
            <if test="startDate != null">#{startDate},</if> 
 | 
            <if test="endDate != null">#{endDate},</if> 
 | 
            <if test="orgCode != null">#{orgCode},</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> 
 | 
  
 | 
    <update id="updateApsBomHeaderJob" parameterType="com.aps.job.domain.ApsBomHeaderJob"> 
 | 
        update aps_bom_header_job 
 | 
        <trim prefix="SET" suffixOverrides=","> 
 | 
            <if test="bomHeaderId != null">bom_header_id = #{bomHeaderId},</if> 
 | 
            <if test="itemCode != null">item_code = #{itemCode},</if> 
 | 
            <if test="itemName != null">item_name = #{itemName},</if> 
 | 
            <if test="startDate != null">start_date = #{startDate},</if> 
 | 
            <if test="endDate != null">end_date = #{endDate},</if> 
 | 
            <if test="orgCode != null">org_code = #{orgCode},</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> 
 | 
  
 | 
    <delete id="deleteApsBomHeaderJobById" parameterType="Long"> 
 | 
        delete from aps_bom_header_job where id = #{id} 
 | 
    </delete> 
 | 
  
 | 
    <delete id="deleteApsBomHeaderJobByIds" parameterType="String"> 
 | 
        delete from aps_bom_header_job where id in  
 | 
        <foreach item="id" collection="array" open="(" separator="," close=")"> 
 | 
            #{id} 
 | 
        </foreach> 
 | 
    </delete> 
 | 
  
 | 
    <insert id="insertApsBomHeaderJobBatch"> 
 | 
        INSERT INTO aps_bom_header_job ( 
 | 
        id, 
 | 
        bom_header_id, 
 | 
        item_code, 
 | 
        item_name, 
 | 
        start_date, 
 | 
        end_date, 
 | 
        org_code, 
 | 
        create_by, 
 | 
        create_time 
 | 
        ) VALUES 
 | 
        <foreach collection="list" item="item" separator=","> 
 | 
            ( 
 | 
            #{item.id}, 
 | 
            #{item.bomHeaderId}, 
 | 
            #{item.itemCode}, 
 | 
            #{item.itemName}, 
 | 
            #{item.startDate}, 
 | 
            #{item.endDate}, 
 | 
            #{item.orgCode}, 
 | 
            #{item.createBy}, 
 | 
            now() 
 | 
            ) 
 | 
        </foreach> 
 | 
    </insert> 
 | 
  
 | 
    <!-- 插入数据到 aps_bom_header --> 
 | 
    <insert id="insertIntoApsBomHeader"> 
 | 
        INSERT INTO aps_bom_header ( 
 | 
            id, 
 | 
            bom_header_id, 
 | 
            item_code, 
 | 
            item_name, 
 | 
            start_date, 
 | 
            end_date, 
 | 
            org_code, 
 | 
            create_by, 
 | 
            create_time 
 | 
        ) 
 | 
        SELECT 
 | 
            id, 
 | 
            bom_header_id, 
 | 
            item_code, 
 | 
            item_name, 
 | 
            start_date, 
 | 
            end_date, 
 | 
            org_code, 
 | 
            create_by, 
 | 
            now() 
 | 
        FROM aps_bom_header_job 
 | 
--         FROM aps_bom_header_job as a 
 | 
--         LEFT JOIN aps_material_storage_management as b ON a.item_code = b.item_number 
 | 
--         where b.material_type='制造件' 
 | 
    </insert> 
 | 
  
 | 
    <!-- 删除 aps_bom_header 表中的数据 --> 
 | 
    <delete id="deleteApsBomHeader"> 
 | 
        DELETE FROM aps_bom_header 
 | 
    </delete> 
 | 
  
 | 
    <!-- 删除 aps_bom_header_job 表中的数据 --> 
 | 
    <delete id="deleteApsBomHeaderJob"> 
 | 
        DELETE FROM aps_bom_header_job 
 | 
    </delete> 
 | 
  
 | 
</mapper> 
 |