<?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.hzya.frame.sysnew.integtationTaskLog.dao.impl.IntegrationTaskLogDaoImpl">

    <resultMap id="get-IntegrationTaskLogEntity-result"
               type="com.hzya.frame.sysnew.integtationTaskLog.entity.IntegrationTaskLogEntity">
       <result property="id" column="id" jdbcType="VARCHAR"/>
           <result property="taskLinvingId" column="task_linving_id" jdbcType="VARCHAR"/>
        <result property="taskId" column="task_id" jdbcType="VARCHAR"/>
        <result property="taskCode" column="task_code" jdbcType="VARCHAR"/>
        <result property="taskName" column="task_name" jdbcType="VARCHAR"/>
        <result property="remark" column="remark" jdbcType="VARCHAR"/>
        <result property="taskStatus" column="task_status" jdbcType="VARCHAR"/>
        <result property="startTime" column="start_time" jdbcType="TIMESTAMP"/>
        <result property="endTime" column="end_time" jdbcType="TIMESTAMP"/>
        <result property="diffTime" column="diff_time" jdbcType="VARCHAR"/>
        <result property="sorts" column="sorts" jdbcType="INTEGER"/>
           <result property="create_user_id" column="create_user_id" jdbcType="VARCHAR"/>
        <result property="create_time" column="create_time" jdbcType="TIMESTAMP"/>
        <result property="modify_user_id" column="modify_user_id" jdbcType="VARCHAR"/>
           <result property="modify_time" column="modify_time" jdbcType="TIMESTAMP"/>
           <result property="sts" column="sts" jdbcType="VARCHAR"/>
        <result property="org_id" column="org_id" jdbcType="VARCHAR"/>
        <result property="companyId" column="company_id" jdbcType="VARCHAR"/>
        </resultMap>
    <!-- 查询的字段-->
    <sql id="IntegrationTaskLogEntity_Base_Column_List">
        id
       ,task_linving_id 
        ,task_id
        ,task_code
        ,task_name
        ,remark
        ,task_status
        ,start_time
        ,end_time
        ,diff_time
        ,sorts
        ,create_user_id 
        ,create_time
        ,modify_user_id
        ,modify_time
        ,sts 
        ,org_id
        ,company_id
     </sql>
    <!--通过ID获取数据 -->
    <select id="entity_get" resultMap="get-IntegrationTaskLogEntity-result">
        select
        <include refid="IntegrationTaskLogEntity_Base_Column_List"/>
        from integration_task_log where id = #{id} and sts = 'Y'
    </select>
 <!-- 查询 采用==查询 -->
    <select id="entity_list_base" resultMap="get-IntegrationTaskLogEntity-result"
            parameterType="com.hzya.frame.sysnew.integtationTaskLog.entity.IntegrationTaskLogEntity">
    select
        <include refid="IntegrationTaskLogEntity_Base_Column_List"/>
        from integration_task_log
    <trim prefix="where" prefixOverrides="and"> 
            <if test="id != null and id != ''">and id = #{id}</if>
            <if test="taskLinvingId != null and taskLinvingId != ''">and task_linving_id = #{taskLinvingId}</if>
            <if test="taskId != null and taskId != ''">and task_id = #{taskId}</if>
            <if test="taskCode != null and taskCode != ''">and task_code = #{taskCode}</if>
            <if test="taskName != null and taskName != ''">and task_name = #{taskName}</if>
            <if test="remark != null and remark != ''">and remark = #{remark}</if>
            <if test="taskStatus != null and taskStatus != ''">and task_status = #{taskStatus}</if>
            <if test="startTime != null">and start_time = #{startTime}</if>
            <if test="endTime != null">and end_time = #{endTime}</if>
            <if test="diffTime != null and diffTime != ''">and diff_time = #{diffTime}</if>
            <if test="sorts != null">and sorts = #{sorts}</if>
            <if test="create_user_id != null and create_user_id != ''">and create_user_id = #{create_user_id}</if>
            <if test="create_time != null">and create_time = #{create_time}</if>
            <if test="modify_user_id != null and modify_user_id != ''">and modify_user_id = #{modify_user_id}</if>
            <if test="modify_time != null">and modify_time = #{modify_time}</if>
            <if test="sts != null and sts != ''">and sts = #{sts}</if>
            <if test="org_id != null and org_id != ''">and org_id = #{org_id}</if>
            <if test="companyId != null and companyId != ''">and company_id = #{companyId}</if>
            and sts='Y'
    </trim>
        <if test=" sort == null or sort == ''.toString() ">order by sorts asc</if>
    <if test=" sort !='' and sort!=null and order !='' and order!=null ">order by ${sort} ${order}</if>
</select>
    
<!-- 查询符合条件的数量 -->
    <select id="entity_count" resultType="Integer"
            parameterType="com.hzya.frame.sysnew.integtationTaskLog.entity.IntegrationTaskLogEntity">
        select count(1) from integration_task_log
    <trim prefix="where" prefixOverrides="and"> 
            <if test="id != null and id != ''">and id = #{id}</if>
            <if test="taskLinvingId != null and taskLinvingId != ''">and task_linving_id = #{taskLinvingId}</if>
            <if test="taskId != null and taskId != ''">and task_id = #{taskId}</if>
            <if test="taskCode != null and taskCode != ''">and task_code = #{taskCode}</if>
            <if test="taskName != null and taskName != ''">and task_name = #{taskName}</if>
            <if test="remark != null and remark != ''">and remark = #{remark}</if>
            <if test="taskStatus != null and taskStatus != ''">and task_status = #{taskStatus}</if>
            <if test="startTime != null">and start_time = #{startTime}</if>
            <if test="endTime != null">and end_time = #{endTime}</if>
            <if test="diffTime != null and diffTime != ''">and diff_time = #{diffTime}</if>
            <if test="sorts != null">and sorts = #{sorts}</if>
            <if test="create_user_id != null and create_user_id != ''">and create_user_id = #{create_user_id}</if>
            <if test="create_time != null">and create_time = #{create_time}</if>
            <if test="modify_user_id != null and modify_user_id != ''">and modify_user_id = #{modify_user_id}</if>
            <if test="modify_time != null">and modify_time = #{modify_time}</if>
            <if test="sts != null and sts != ''">and sts = #{sts}</if>
            <if test="org_id != null and org_id != ''">and org_id = #{org_id}</if>
            <if test="companyId != null and companyId != ''">and company_id = #{companyId}</if>
            and sts='Y'
    </trim>
        <if test=" sort == null or sort == ''.toString() ">order by sorts asc</if>
        <if test=" sort !='' and sort!=null and order !='' and order!=null ">order by ${sort} ${order}</if>
    </select>

    <!-- 分页查询列表 采用like格式 -->
    <select id="entity_list_like" resultMap="get-IntegrationTaskLogEntity-result"
            parameterType="com.hzya.frame.sysnew.integtationTaskLog.entity.IntegrationTaskLogEntity">
    select
        <include refid="IntegrationTaskLogEntity_Base_Column_List"/>
        from integration_task_log
    <trim prefix="where" prefixOverrides="and"> 
            <if test="id != null and id != ''">and id like concat('%',#{id},'%')</if>
            <if test="taskLinvingId != null and taskLinvingId != ''">and task_linving_id like
                concat('%',#{taskLinvingId},'%')
            </if>
            <if test="taskId != null and taskId != ''">and task_id like concat('%',#{taskId},'%')</if>
            <if test="taskCode != null and taskCode != ''">and task_code like concat('%',#{taskCode},'%')</if>
            <if test="taskName != null and taskName != ''">and task_name like concat('%',#{taskName},'%')</if>
            <if test="remark != null and remark != ''">and remark like concat('%',#{remark},'%')</if>
            <if test="taskStatus != null and taskStatus != ''">and task_status like concat('%',#{taskStatus},'%')</if>
            <if test="startTime != null">and start_time like concat('%',#{startTime},'%')</if>
            <if test="endTime != null">and end_time like concat('%',#{endTime},'%')</if>
            <if test="diffTime != null and diffTime != ''">and diff_time like concat('%',#{diffTime},'%')</if>
            <if test="sorts != null">and sorts like concat('%',#{sorts},'%')</if>
            <if test="create_user_id != null and create_user_id != ''">and create_user_id like
                concat('%',#{create_user_id},'%')
            </if>
            <if test="create_time != null">and create_time like concat('%',#{create_time},'%')</if>
            <if test="modify_user_id != null and modify_user_id != ''">and modify_user_id like
                concat('%',#{modify_user_id},'%')
            </if>
            <if test="modify_time != null">and modify_time like concat('%',#{modify_time},'%')</if>
            <if test="sts != null and sts != ''">and sts like concat('%',#{sts},'%')</if>
            <if test="org_id != null and org_id != ''">and org_id like concat('%',#{org_id},'%')</if>
            <if test="companyId != null and companyId != ''">and company_id like concat('%',#{companyId},'%')</if>
            and sts='Y'
    </trim>
        <if test=" sort == null or sort == ''.toString() ">order by sorts asc</if>
    <if test=" sort !='' and sort!=null and order !='' and order!=null ">order by ${sort} ${order}</if>
</select>

<!-- 查询列表 字段采用or格式 -->
    <select id="IntegrationTaskLogentity_list_or" resultMap="get-IntegrationTaskLogEntity-result"
            parameterType="com.hzya.frame.sysnew.integtationTaskLog.entity.IntegrationTaskLogEntity">
    select
        <include refid="IntegrationTaskLogEntity_Base_Column_List"/>
        from integration_task_log
    <trim prefix="where" prefixOverrides="and"> 
            <if test="id != null and id != ''">or id = #{id}</if>
            <if test="taskLinvingId != null and taskLinvingId != ''">or task_linving_id = #{taskLinvingId}</if>
            <if test="taskId != null and taskId != ''">or task_id = #{taskId}</if>
            <if test="taskCode != null and taskCode != ''">or task_code = #{taskCode}</if>
            <if test="taskName != null and taskName != ''">or task_name = #{taskName}</if>
            <if test="remark != null and remark != ''">or remark = #{remark}</if>
            <if test="taskStatus != null and taskStatus != ''">or task_status = #{taskStatus}</if>
            <if test="startTime != null">or start_time = #{startTime}</if>
            <if test="endTime != null">or end_time = #{endTime}</if>
            <if test="diffTime != null and diffTime != ''">or diff_time = #{diffTime}</if>
            <if test="sorts != null">or sorts = #{sorts}</if>
            <if test="create_user_id != null and create_user_id != ''">or create_user_id = #{create_user_id}</if>
            <if test="create_time != null">or create_time = #{create_time}</if>
            <if test="modify_user_id != null and modify_user_id != ''">or modify_user_id = #{modify_user_id}</if>
            <if test="modify_time != null">or modify_time = #{modify_time}</if>
            <if test="sts != null and sts != ''">or sts = #{sts}</if>
            <if test="org_id != null and org_id != ''">or org_id = #{org_id}</if>
            <if test="companyId != null and companyId != ''">or company_id = #{companyId}</if>
            and sts='Y'
    </trim>
        <if test=" sort == null or sort == ''.toString()  ">order by sorts asc</if>
    <if test=" sort !='' and sort!=null and order !='' and order!=null ">order by ${sort} ${order}</if>
</select>

<!--新增所有列-->
    <insert id="entity_insert"
            parameterType="com.hzya.frame.sysnew.integtationTaskLog.entity.IntegrationTaskLogEntity">
        insert into integration_task_log(
  <trim suffix="" suffixOverrides=",">
            <if test="id != null and id != ''">id ,</if>
            <if test="taskLinvingId != null and taskLinvingId != ''">task_linving_id ,</if>
            <if test="taskId != null and taskId != ''">task_id ,</if>
            <if test="taskCode != null and taskCode != ''">task_code ,</if>
            <if test="taskName != null and taskName != ''">task_name ,</if>
            <if test="remark != null and remark != ''">remark ,</if>
            <if test="taskStatus != null and taskStatus != ''">task_status ,</if>
            <if test="startTime != null">start_time ,</if>
            <if test="endTime != null">end_time ,</if>
            <if test="diffTime != null and diffTime != ''">diff_time ,</if>
            <if test="sorts != null">sorts ,</if>
            <if test="create_user_id != null and create_user_id != ''">create_user_id ,</if>
            <if test="create_time != null">create_time ,</if>
            <if test="modify_user_id != null and modify_user_id != ''">modify_user_id ,</if>
            <if test="modify_time != null">modify_time ,</if>
            <if test="sts != null and sts != ''">sts ,</if>
            <if test="org_id != null and org_id != ''">org_id ,</if>
            <if test="companyId != null and companyId != ''">company_id ,</if>
    <if test="sts == null ">sts,</if>
  </trim>
  )values(
 <trim suffix="" suffixOverrides=",">
            <if test="id != null and id != ''">#{id} ,</if>
            <if test="taskLinvingId != null and taskLinvingId != ''">#{taskLinvingId} ,</if>
            <if test="taskId != null and taskId != ''">#{taskId} ,</if>
            <if test="taskCode != null and taskCode != ''">#{taskCode} ,</if>
            <if test="taskName != null and taskName != ''">#{taskName} ,</if>
            <if test="remark != null and remark != ''">#{remark} ,</if>
            <if test="taskStatus != null and taskStatus != ''">#{taskStatus} ,</if>
            <if test="startTime != null">#{startTime} ,</if>
            <if test="endTime != null">#{endTime} ,</if>
            <if test="diffTime != null and diffTime != ''">#{diffTime} ,</if>
            <if test="sorts != null">#{sorts} ,</if>
            <if test="create_user_id != null and create_user_id != ''">#{create_user_id} ,</if>
            <if test="create_time != null">#{create_time} ,</if>
            <if test="modify_user_id != null and modify_user_id != ''">#{modify_user_id} ,</if>
            <if test="modify_time != null">#{modify_time} ,</if>
            <if test="sts != null and sts != ''">#{sts} ,</if>
            <if test="org_id != null and org_id != ''">#{org_id} ,</if>
            <if test="companyId != null and companyId != ''">#{companyId} ,</if>

    <if test="sts == null ">'Y',</if>
  </trim>
  )  
</insert>
<!-- 批量新增 -->
    <insert id="entityInsertBatch" >
        insert into integration_task_log(task_linving_id, task_id, task_code, task_name, remark, task_status,
        start_time, end_time, diff_time, sorts, create_user_id, create_time, modify_user_id, modify_time, sts, org_id,
        company_id, sts)
    values
    <foreach collection="entities" item="entity" separator=",">
            (#{entity.taskLinvingId},#{entity.taskId},#{entity.taskCode},#{entity.taskName},#{entity.remark},#{entity.taskStatus},#{entity.startTime},#{entity.endTime},#{entity.diffTime},#{entity.sorts},#{entity.create_user_id},#{entity.create_time},#{entity.modify_user_id},#{entity.modify_time},#{entity.sts},#{entity.org_id},#{entity.companyId},
            'Y')
    </foreach>
</insert>
<!-- 批量新增或者修改-->
    <insert id="entityInsertOrUpdateBatch" >
        insert into integration_task_log(task_linving_id, task_id, task_code, task_name, remark, task_status,
        start_time, end_time, diff_time, sorts, create_user_id, create_time, modify_user_id, modify_time, sts, org_id,
        company_id)
    values
    <foreach collection="entities" item="entity" separator=",">
            (#{entity.taskLinvingId},#{entity.taskId},#{entity.taskCode},#{entity.taskName},#{entity.remark},#{entity.taskStatus},#{entity.startTime},#{entity.endTime},#{entity.diffTime},#{entity.sorts},#{entity.create_user_id},#{entity.create_time},#{entity.modify_user_id},#{entity.modify_time},#{entity.sts},#{entity.org_id},#{entity.companyId})
    </foreach>
    on duplicate key update
    task_linving_id = values(task_linving_id),
        task_id = values(task_id),
        task_code = values(task_code),
        task_name = values(task_name),
        remark = values(remark),
        task_status = values(task_status),
        start_time = values(start_time),
        end_time = values(end_time),
        diff_time = values(diff_time),
        sorts = values(sorts),
        create_user_id = values(create_user_id),
    create_time = values(create_time),
        modify_user_id = values(modify_user_id),
    modify_time = values(modify_time),
    sts = values(sts),
        org_id = values(org_id),
        company_id = values(company_id)
    </insert>
<!--通过主键修改方法-->
    <update id="entity_update"
            parameterType="com.hzya.frame.sysnew.integtationTaskLog.entity.IntegrationTaskLogEntity">
        update integration_task_log set
<trim suffix="" suffixOverrides=",">
            <if test="taskLinvingId != null and taskLinvingId != ''">task_linving_id = #{taskLinvingId},</if>
            <if test="taskId != null and taskId != ''">task_id = #{taskId},</if>
            <if test="taskCode != null and taskCode != ''">task_code = #{taskCode},</if>
            <if test="taskName != null and taskName != ''">task_name = #{taskName},</if>
            <if test="remark != null and remark != ''">remark = #{remark},</if>
            <if test="taskStatus != null and taskStatus != ''">task_status = #{taskStatus},</if>
            <if test="startTime != null">start_time = #{startTime},</if>
            <if test="endTime != null">end_time = #{endTime},</if>
            <if test="diffTime != null and diffTime != ''">diff_time = #{diffTime},</if>
            <if test="sorts != null">sorts = #{sorts},</if>
            <if test="create_user_id != null and create_user_id != ''">create_user_id = #{create_user_id},</if>
            <if test="create_time != null">create_time = #{create_time},</if>
            <if test="modify_user_id != null and modify_user_id != ''">modify_user_id = #{modify_user_id},</if>
            <if test="modify_time != null">modify_time = #{modify_time},</if>
            <if test="sts != null and sts != ''">sts = #{sts},</if>
            <if test="org_id != null and org_id != ''">org_id = #{org_id},</if>
            <if test="companyId != null and companyId != ''">company_id = #{companyId},</if>
</trim>
where id = #{id}
</update>
<!-- 逻辑删除 -->
    <update id="entity_logicDelete"
            parameterType="com.hzya.frame.sysnew.integtationTaskLog.entity.IntegrationTaskLogEntity">
update integration_task_log  set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id}
where id = #{id}
</update>
<!-- 多条件逻辑删除 -->
    <update id="entity_logicDelete_Multi_Condition"
            parameterType="com.hzya.frame.sysnew.integtationTaskLog.entity.IntegrationTaskLogEntity">
        update integration_task_log set sts= 'N' ,modify_time = #{modify_time},modify_user_id =
        #{modify_user_id}
 <trim prefix="where" prefixOverrides="and"> 
            <if test="id != null and id != ''">and id = #{id}</if>
            <if test="taskLinvingId != null and taskLinvingId != ''">and task_linving_id = #{taskLinvingId}</if>
            <if test="taskId != null and taskId != ''">and task_id = #{taskId}</if>
            <if test="taskCode != null and taskCode != ''">and task_code = #{taskCode}</if>
            <if test="taskName != null and taskName != ''">and task_name = #{taskName}</if>
            <if test="remark != null and remark != ''">and remark = #{remark}</if>
            <if test="taskStatus != null and taskStatus != ''">and task_status = #{taskStatus}</if>
            <if test="startTime != null">and start_time = #{startTime}</if>
            <if test="endTime != null">and end_time = #{endTime}</if>
            <if test="diffTime != null and diffTime != ''">and diff_time = #{diffTime}</if>
            <if test="sorts != null">and sorts = #{sorts}</if>
            <if test="sts != null and sts != ''">and sts = #{sts}</if>
            <if test="companyId != null and companyId != ''">and company_id = #{companyId}</if>
            and sts='Y'
    </trim>
</update>
<!--通过主键删除-->
<delete id="entity_delete">
    delete from integration_task_log where id = #{id}
</delete>

</mapper>

