| <?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> |