<?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.matrix.system.hive.dao.SysSmsShopDao"> 
 | 
    <!-- 定义SysSmsTemplate 的复杂关联map --> 
 | 
    <resultMap type="com.matrix.system.hive.bean.SysSmsShop" id="SysSmsShopMap"> 
 | 
        <id property="id" column="id" /> 
 | 
        <result property="shopId" column="shop_id" /> 
 | 
        <result property="remainingCnt" column="remaining_cnt" /> 
 | 
  
 | 
        <result property="shopName" column="shop_name" /> 
 | 
    </resultMap> 
 | 
  
 | 
     
 | 
    <!-- 字段sql --> 
 | 
    <sql id="columns"> 
 | 
            id, 
 | 
            shop_id, 
 | 
            remaining_cnt 
 | 
    </sql> 
 | 
     
 | 
    <!-- 属性sql --> 
 | 
    <sql id="propertys"> 
 | 
            #{item.id}, 
 | 
            #{item.shopId}, 
 | 
            #{item.remainingCnt} 
 | 
    </sql> 
 | 
     
 | 
    <!-- where sql --> 
 | 
    <sql id="where_sql"> 
 | 
          
 | 
         <if test="record!=null"> 
 | 
            <if test="(record.id!=null and record.id!='') or  (record.id!='' and record.id==0)  "> 
 | 
                and id  = #{record.id}  
 | 
            </if> 
 | 
            <if test="(record.shopId!=null and record.shopId!='') or  (record.shopId!='' and record.shopId==0)  "> 
 | 
                and shop_id  = #{record.shopId} 
 | 
            </if> 
 | 
            <if test="(record.remainingCnt!=null and record.remainingCnt!='') or  (record.remainingCnt!='' and record.remainingCnt==0)  "> 
 | 
                and remaining_cnt  = #{record.remainingCnt} 
 | 
            </if> 
 | 
        </if> 
 | 
          
 | 
    </sql> 
 | 
     
 | 
    <!--  插入方法   --> 
 | 
    <insert id="insert" parameterType="com.matrix.system.hive.bean.SysSmsShop" 
 | 
        useGeneratedKeys="true" keyProperty="item.id"> 
 | 
        INSERT INTO sys_sms_shop ( 
 | 
             <include refid="columns"></include> 
 | 
        ) 
 | 
    VALUES ( 
 | 
         <include refid="propertys"></include> 
 | 
    ) 
 | 
    </insert> 
 | 
     
 | 
     
 | 
     
 | 
    <!--  批量插入   --> 
 | 
    <insert id="batchInsert" parameterType="java.util.List"> 
 | 
        INSERT INTO sys_sms_shop ( 
 | 
        <include refid="columns"></include>     
 | 
        ) 
 | 
    VALUES  
 | 
    <foreach collection="list" item="item" index="index" separator=",">( 
 | 
        <include refid="propertys"></include>     
 | 
    )</foreach> 
 | 
    </insert> 
 | 
     
 | 
  
 | 
    <!--  根据对象更新 部分更新   --> 
 | 
    <update id="updateByModel" parameterType="Long"> 
 | 
        UPDATE sys_sms_shop 
 | 
        <set> 
 | 
            <if test="record.shopId != null and record.shopId != '' "> 
 | 
                shop_id  = #{record.shopId}, 
 | 
            </if> 
 | 
            <if test="record.remainingCnt != null"> 
 | 
                remaining_cnt  = #{record.remainingCnt}, 
 | 
            </if> 
 | 
        </set> 
 | 
        WHERE id=#{record.id}  
 | 
    </update> 
 | 
     
 | 
     
 | 
    <!-- 分页查询 --> 
 | 
    <select id="selectInPage" resultMap="SysSmsShopMap"> 
 | 
        select t1.*, t2.shop_name 
 | 
        from sys_sms_shop t1 
 | 
        left join sys_shop_info t2 on t1.shop_id=t2.id and t2.company_id=#{record.companyId} 
 | 
        <where> 
 | 
          <include refid="where_sql"></include> 
 | 
         </where> 
 | 
        <if test="pageVo !=null"><!-- 判断pageVo对象是否为空 --> 
 | 
            <if test="pageVo.sort !=null  and pageVo.order !=null"> 
 | 
                order by 
 | 
                ${pageVo.sort} ${pageVo.order} 
 | 
            </if> 
 | 
            <if test="pageVo.offset >=0  and pageVo.limit >0"> 
 | 
                limit 
 | 
                #{pageVo.offset},#{pageVo.limit} 
 | 
            </if> 
 | 
        </if> 
 | 
    </select> 
 | 
     
 | 
    <!-- 查询总条数 --> 
 | 
    <select id="selectTotalRecord" parameterType="long"   resultType="java.lang.Integer"> 
 | 
    select count(*) 
 | 
    from sys_sms_shop t1 
 | 
    left join sys_shop_info t2 on t1.shop_id=t2.id and t2.company_id=#{record.companyId} 
 | 
        <where> 
 | 
           <include refid="where_sql"></include> 
 | 
        </where> 
 | 
    </select> 
 | 
  
 | 
    <select id="selectById" resultMap="SysSmsShopMap"> 
 | 
        select * from sys_sms_shop 
 | 
        where id=#{id} 
 | 
    </select> 
 | 
  
 | 
    <select id="selectByShopId" resultMap="SysSmsShopMap"> 
 | 
        select * from sys_sms_shop 
 | 
        where shop_id=#{shopId} 
 | 
    </select> 
 | 
</mapper> 
 |