<?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.tworice.client.dao.-tworice_name-Dao">

    <cache eviction="LRU" flushInterval="60000" size="1024" readOnly="true"/>

    <insert id="insert" parameterType="cn.tworice.common.entity.code.-tworice_name-">
        -tworice_insert_sql-
    </insert>
    <insert id="insertList">
        -tworice_insert_list_sql-
    </insert>
    <update id="update" parameterType="cn.tworice.common.entity.code.-tworice_name-">
        -tworice_update_sql-
    </update>

    <delete id="delList">
        DELETE FROM -tworice_table_name- WHERE id IN (
            <foreach collection="ids" separator="," item="item">
                #{item}
            </foreach>
        )
    </delete>

    <update id="del">
        UPDATE -tworice_table_name- SET deleted=1 WHERE id IN (
            <foreach collection="ids" separator="," item="item">
                #{item}
            </foreach>
        )
    </update>

    <select id="queryList" resultType="cn.tworice.common.entity.code.-tworice_name-">
        SELECT a.* FROM -tworice_table_name- a -tworice_join_table-
        <trim prefix="WHERE" prefixOverrides="AND">
            AND a.deleted=0
            <if test="entity.id!=null">
                AND a.id = #{entity.id}
            </if>
            -tworice_query_list_where-
        </trim>
        ORDER BY a.id DESC LIMIT #{param1},#{param2}
    </select>
    <select id="queryTotal" resultType="java.lang.Integer">
        SELECT COUNT(*) FROM -tworice_table_name- a
        <trim prefix="WHERE" prefixOverrides="AND">
            AND a.deleted=0
            <if test="id!=null">
                AND a.id = #{id}
            </if>
            -tworice_query_total-
        </trim>
    </select>

    <select id="queryInfo" resultType="cn.tworice.common.entity.code.-tworice_name-">
        SELECT * FROM -tworice_table_name- WHERE id=#{id}
    </select>
</mapper>