<?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.iformall.mapper.WxBrandMapper">
	<resultMap id="BaseResultMap" type="com.iformall.domain.po.WxBrand">
		<id column="id" jdbcType="BIGINT" property="id" />
		<result column="name" jdbcType="VARCHAR" property="name" />
		<result column="createtime" jdbcType="TIMESTAMP" property="createtime" />
		<result column="updatetime" jdbcType="TIMESTAMP" property="updatetime" />
		<result column="tenant_id" jdbcType="VARCHAR" property="tenantId" />
		<result column="logo" jdbcType="VARCHAR" property="logo"/>
		<result column="summary" jdbcType="VARCHAR" property="summary"/>
		<result column="createdate" jdbcType="TIMESTAMP" property="createdate"/>
		<result column="is_del" property="isDel"/>
	</resultMap>
	
	<sql id="allColumns">
	    `id`,`name`,`createtime`,`updatetime`,`tenant_id`,`logo`,`summary`,`createdate`,is_del
	</sql>

	<sql id="dynamicWhereConditions">
	        where is_del = 0
		<if test=" null != id "> and `id` = #{id} </if>    
		<if test=" null != name "> and `name` like concat('%',#{name},'%') </if>
		<if test=" null != createtime "> and `createtime` = #{createtime} </if>    
		<if test=" null != updatetime "> and `updatetime` = #{updatetime} </if>
		<if test=" null != tenantId "> and `tenant_id` = #{tenantId} </if>
		<if test=" null != ids ">
		 	and id in  
			<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">
			#{idItem}
			</foreach>
		</if>		
		<if test=" null != sortColumns"> order by ${sortColumns} </if>
	</sql>
	
	<select id="findList" parameterType="com.iformall.domain.po.WxBrand" resultMap="BaseResultMap">
		select <include refid="allColumns" /> from wx_brand
		<include refid="dynamicWhereConditions" />
	</select>
	
	<select id="queryBrandByTenant" parameterType="com.iformall.domain.po.WxBrand" resultType="hashmap">
		select id,`name` value from wx_brand
		<where>
			<if test=" null != tenantId "> and `tenant_id` = #{tenantId} </if>
		</where>
	</select>
	
	<select id="hasBrand" parameterType="com.iformall.domain.po.WxBrand" resultType="Integer">
		select count(*) from wx_brand where tenant_id=#{tenantId} and `name`=#{name}
		<if test=" null != id">
			and id != #{id}
		</if>
	</select>
	
	
</mapper>
