<?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.WxSubBusinessMapper">
	<resultMap id="BaseResultMap" type="com.iformall.domain.po.WxSubBusiness">
		<id column="id" jdbcType="INTEGER" property="id" />
		<result column="title" jdbcType="VARCHAR" property="title" />
		<result column="business_id" jdbcType="INTEGER" property="businessId" />
		<result column="business_title" jdbcType="VARCHAR" property="businessTitle" />
		<result column="create_date" jdbcType="TIMESTAMP" property="createDate" />
		<result column="update_date" jdbcType="TIMESTAMP" property="updateDate" />
	</resultMap>
	
	<sql id="allColumns">
	    `id`,`title`,`business_id`,`business_title`,`create_date`,`update_date`
	</sql>

	<sql id="dynamicWhereConditions">
	        where 1 = 1
	    
		<if test=" null != id "> 
		and `id` = #{id}
		</if>
	    
		<if test=" null != title "> 
		and `title`  like concat('%', #{title},'%')
		</if>

		<if test=" null != businessId ">
			and `business_id` = #{businessId}
		</if>

		<if test=" null != businessTitle ">
			and `business_title`  like concat('%', #{businessTitle},'%')
		</if>

		<if test=" null != createDate "> 
		and `create_date` = #{createDate}
		</if>    
	    
		<if test=" null != updateDate "> 
		and `update_date` = #{updateDate}
		</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.WxSubBusiness" resultMap="BaseResultMap">
		select <include refid="allColumns" /> from wx_sub_business
		<include refid="dynamicWhereConditions" />
	</select>

	<select id="findListAll"  resultMap="BaseResultMap">
		select <include refid="allColumns" /> from wx_sub_business
		order by create_date asc
    </select>

</mapper>
