<?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="cn.roadm.mapper.UploadSignTaskInfoMapper">

    <resultMap type="cn.roadm.bo.UploadSignTaskInfo" id="UploadSignTaskInfoResultMap">
        <id column="id" property="id" />
        <result column="task_id" property="taskId" />
        <result column="acc_id" property="accId" />
        <result column="type" property="type" />
        <result column="upload_file_path" property="uploadFilePath" />
        <result column="status" property="status" />
        <result column="create_time" property="createTime" />
        <result column="succ_num" property="succNum" />
        <result column="fail_num" property="failNum" />
        <result column="all_num" property="allNum" />
        <result column="upload_num" property="uploadNum" />
        <result column="file_batch_id" property="fileBatchId" />
    </resultMap>

    <insert id="insertUploadSignTaskInfo" parameterType="cn.roadm.bo.UploadSignTaskInfo" useGeneratedKeys="true" keyProperty="id">
        INSERT INTO upload_sign_task_info
            (task_id, acc_id, type, upload_file_path, all_num, upload_num,succ_num,fail_num,create_time,status,file_batch_id)
        VALUES
            (#{taskId}, #{accId}, #{type}, #{uploadFilePath}, #{allNum},#{uploadNum},#{succNum},#{failNum},now(),#{status},#{fileBatchId})
    </insert>

    <select id="selectUploadSignTaskInfoByTaskId" parameterType="cn.roadm.bo.UploadSignTaskInfo" resultMap="UploadSignTaskInfoResultMap">
        select * from upload_sign_task_info where task_id = #{taskId}
    </select>


    <update id="updateUploadSignTaskInfoByTaskId" parameterType="cn.roadm.bo.UploadSignTaskInfo">
        update upload_sign_task_info set
        <set>
            <if test="status!=null">
                status = #{status},
            </if>

            <if test="uploadNum!=null">
                upload_num = #{uploadNum},
            </if>

            <if test="succNum!=null">
                succ_num = #{succNum},
            </if>

            <if test="failNum!=null">
                fail_num = #{failNum},
            </if>
        </set>

        where task_id = #{taskId}
    </update>

</mapper>
