wanghui лет назад: 8
Родитель
Сommit
6c3c503792
1 измененных файлов с 687 добавлено и 0 удалено
  1. 687 0
      src/main/java/com/goafanti/common/mapper/CustomerMapper.xml

+ 687 - 0
src/main/java/com/goafanti/common/mapper/CustomerMapper.xml

@@ -0,0 +1,687 @@
+<?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.goafanti.common.dao.CustomerMapper">
+  <resultMap id="BaseResultMap" type="com.goafanti.common.model.Customer">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="aid" jdbcType="VARCHAR" property="aid" />
+    <result column="paid" jdbcType="VARCHAR" property="paid" />
+    <result column="share_type" jdbcType="INTEGER" property="shareType" />
+    <result column="customer_type" jdbcType="INTEGER" property="customerType" />
+    <result column="customer_status" jdbcType="INTEGER" property="customerStatus" />
+    <result column="company_intention" jdbcType="CHAR" property="companyIntention" />
+    <result column="follow_situation" jdbcType="INTEGER" property="followSituation" />
+    <result column="tag" jdbcType="VARCHAR" property="tag" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="follow_id" jdbcType="VARCHAR" property="followId" />
+    <result column="effective" jdbcType="INTEGER" property="effective" />
+    <result column="company_name" jdbcType="VARCHAR" property="companyName" />
+    <result column="location_province" jdbcType="CHAR" property="locationProvince" />
+    <result column="location_city" jdbcType="CHAR" property="locationCity" />
+    <result column="location_area" jdbcType="CHAR" property="locationArea" />
+    <result column="address" jdbcType="VARCHAR" property="address" />
+    <result column="company_industry" jdbcType="VARCHAR" property="companyIndustry" />
+    <result column="remarks" jdbcType="VARCHAR" property="remarks" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    id, aid, paid, share_type, customer_type, customer_status, company_intention, follow_situation, 
+    tag, create_time, follow_id, effective, company_name, location_province, location_city, 
+    location_area, address, company_industry, remarks
+  </sql>
+  <select id="selectByExample" parameterType="com.goafanti.common.model.CustomerExample" resultMap="BaseResultMap">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from customer
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    select 
+    <include refid="Base_Column_List" />
+    from customer
+    where id = #{id,jdbcType=VARCHAR}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    delete from customer
+    where id = #{id,jdbcType=VARCHAR}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.goafanti.common.model.CustomerExample">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    delete from customer
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.goafanti.common.model.Customer">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    insert into customer (id, aid, paid, 
+      share_type, customer_type, customer_status, 
+      company_intention, follow_situation, tag, 
+      create_time, follow_id, effective, 
+      company_name, location_province, location_city, 
+      location_area, address, company_industry, 
+      remarks)
+    values (#{id,jdbcType=VARCHAR}, #{aid,jdbcType=VARCHAR}, #{paid,jdbcType=VARCHAR}, 
+      #{shareType,jdbcType=INTEGER}, #{customerType,jdbcType=INTEGER}, #{customerStatus,jdbcType=INTEGER}, 
+      #{companyIntention,jdbcType=CHAR}, #{followSituation,jdbcType=INTEGER}, #{tag,jdbcType=VARCHAR}, 
+      #{createTime,jdbcType=TIMESTAMP}, #{followId,jdbcType=VARCHAR}, #{effective,jdbcType=INTEGER}, 
+      #{companyName,jdbcType=VARCHAR}, #{locationProvince,jdbcType=CHAR}, #{locationCity,jdbcType=CHAR}, 
+      #{locationArea,jdbcType=CHAR}, #{address,jdbcType=VARCHAR}, #{companyIndustry,jdbcType=VARCHAR}, 
+      #{remarks,jdbcType=VARCHAR})
+  </insert>
+  <insert id="insertSelective" parameterType="com.goafanti.common.model.Customer">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    insert into customer
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="aid != null">
+        aid,
+      </if>
+      <if test="paid != null">
+        paid,
+      </if>
+      <if test="shareType != null">
+        share_type,
+      </if>
+      <if test="customerType != null">
+        customer_type,
+      </if>
+      <if test="customerStatus != null">
+        customer_status,
+      </if>
+      <if test="companyIntention != null">
+        company_intention,
+      </if>
+      <if test="followSituation != null">
+        follow_situation,
+      </if>
+      <if test="tag != null">
+        tag,
+      </if>
+      <if test="createTime != null">
+        create_time,
+      </if>
+      <if test="followId != null">
+        follow_id,
+      </if>
+      <if test="effective != null">
+        effective,
+      </if>
+      <if test="companyName != null">
+        company_name,
+      </if>
+      <if test="locationProvince != null">
+        location_province,
+      </if>
+      <if test="locationCity != null">
+        location_city,
+      </if>
+      <if test="locationArea != null">
+        location_area,
+      </if>
+      <if test="address != null">
+        address,
+      </if>
+      <if test="companyIndustry != null">
+        company_industry,
+      </if>
+      <if test="remarks != null">
+        remarks,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=VARCHAR},
+      </if>
+      <if test="aid != null">
+        #{aid,jdbcType=VARCHAR},
+      </if>
+      <if test="paid != null">
+        #{paid,jdbcType=VARCHAR},
+      </if>
+      <if test="shareType != null">
+        #{shareType,jdbcType=INTEGER},
+      </if>
+      <if test="customerType != null">
+        #{customerType,jdbcType=INTEGER},
+      </if>
+      <if test="customerStatus != null">
+        #{customerStatus,jdbcType=INTEGER},
+      </if>
+      <if test="companyIntention != null">
+        #{companyIntention,jdbcType=CHAR},
+      </if>
+      <if test="followSituation != null">
+        #{followSituation,jdbcType=INTEGER},
+      </if>
+      <if test="tag != null">
+        #{tag,jdbcType=VARCHAR},
+      </if>
+      <if test="createTime != null">
+        #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="followId != null">
+        #{followId,jdbcType=VARCHAR},
+      </if>
+      <if test="effective != null">
+        #{effective,jdbcType=INTEGER},
+      </if>
+      <if test="companyName != null">
+        #{companyName,jdbcType=VARCHAR},
+      </if>
+      <if test="locationProvince != null">
+        #{locationProvince,jdbcType=CHAR},
+      </if>
+      <if test="locationCity != null">
+        #{locationCity,jdbcType=CHAR},
+      </if>
+      <if test="locationArea != null">
+        #{locationArea,jdbcType=CHAR},
+      </if>
+      <if test="address != null">
+        #{address,jdbcType=VARCHAR},
+      </if>
+      <if test="companyIndustry != null">
+        #{companyIndustry,jdbcType=VARCHAR},
+      </if>
+      <if test="remarks != null">
+        #{remarks,jdbcType=VARCHAR},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.goafanti.common.model.CustomerExample" resultType="java.lang.Long">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    select count(*) from customer
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    update customer
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=VARCHAR},
+      </if>
+      <if test="record.aid != null">
+        aid = #{record.aid,jdbcType=VARCHAR},
+      </if>
+      <if test="record.paid != null">
+        paid = #{record.paid,jdbcType=VARCHAR},
+      </if>
+      <if test="record.shareType != null">
+        share_type = #{record.shareType,jdbcType=INTEGER},
+      </if>
+      <if test="record.customerType != null">
+        customer_type = #{record.customerType,jdbcType=INTEGER},
+      </if>
+      <if test="record.customerStatus != null">
+        customer_status = #{record.customerStatus,jdbcType=INTEGER},
+      </if>
+      <if test="record.companyIntention != null">
+        company_intention = #{record.companyIntention,jdbcType=CHAR},
+      </if>
+      <if test="record.followSituation != null">
+        follow_situation = #{record.followSituation,jdbcType=INTEGER},
+      </if>
+      <if test="record.tag != null">
+        tag = #{record.tag,jdbcType=VARCHAR},
+      </if>
+      <if test="record.createTime != null">
+        create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.followId != null">
+        follow_id = #{record.followId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.effective != null">
+        effective = #{record.effective,jdbcType=INTEGER},
+      </if>
+      <if test="record.companyName != null">
+        company_name = #{record.companyName,jdbcType=VARCHAR},
+      </if>
+      <if test="record.locationProvince != null">
+        location_province = #{record.locationProvince,jdbcType=CHAR},
+      </if>
+      <if test="record.locationCity != null">
+        location_city = #{record.locationCity,jdbcType=CHAR},
+      </if>
+      <if test="record.locationArea != null">
+        location_area = #{record.locationArea,jdbcType=CHAR},
+      </if>
+      <if test="record.address != null">
+        address = #{record.address,jdbcType=VARCHAR},
+      </if>
+      <if test="record.companyIndustry != null">
+        company_industry = #{record.companyIndustry,jdbcType=VARCHAR},
+      </if>
+      <if test="record.remarks != null">
+        remarks = #{record.remarks,jdbcType=VARCHAR},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    update customer
+    set id = #{record.id,jdbcType=VARCHAR},
+      aid = #{record.aid,jdbcType=VARCHAR},
+      paid = #{record.paid,jdbcType=VARCHAR},
+      share_type = #{record.shareType,jdbcType=INTEGER},
+      customer_type = #{record.customerType,jdbcType=INTEGER},
+      customer_status = #{record.customerStatus,jdbcType=INTEGER},
+      company_intention = #{record.companyIntention,jdbcType=CHAR},
+      follow_situation = #{record.followSituation,jdbcType=INTEGER},
+      tag = #{record.tag,jdbcType=VARCHAR},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      follow_id = #{record.followId,jdbcType=VARCHAR},
+      effective = #{record.effective,jdbcType=INTEGER},
+      company_name = #{record.companyName,jdbcType=VARCHAR},
+      location_province = #{record.locationProvince,jdbcType=CHAR},
+      location_city = #{record.locationCity,jdbcType=CHAR},
+      location_area = #{record.locationArea,jdbcType=CHAR},
+      address = #{record.address,jdbcType=VARCHAR},
+      company_industry = #{record.companyIndustry,jdbcType=VARCHAR},
+      remarks = #{record.remarks,jdbcType=VARCHAR}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.Customer">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    update customer
+    <set>
+      <if test="aid != null">
+        aid = #{aid,jdbcType=VARCHAR},
+      </if>
+      <if test="paid != null">
+        paid = #{paid,jdbcType=VARCHAR},
+      </if>
+      <if test="shareType != null">
+        share_type = #{shareType,jdbcType=INTEGER},
+      </if>
+      <if test="customerType != null">
+        customer_type = #{customerType,jdbcType=INTEGER},
+      </if>
+      <if test="customerStatus != null">
+        customer_status = #{customerStatus,jdbcType=INTEGER},
+      </if>
+      <if test="companyIntention != null">
+        company_intention = #{companyIntention,jdbcType=CHAR},
+      </if>
+      <if test="followSituation != null">
+        follow_situation = #{followSituation,jdbcType=INTEGER},
+      </if>
+      <if test="tag != null">
+        tag = #{tag,jdbcType=VARCHAR},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="followId != null">
+        follow_id = #{followId,jdbcType=VARCHAR},
+      </if>
+      <if test="effective != null">
+        effective = #{effective,jdbcType=INTEGER},
+      </if>
+      <if test="companyName != null">
+        company_name = #{companyName,jdbcType=VARCHAR},
+      </if>
+      <if test="locationProvince != null">
+        location_province = #{locationProvince,jdbcType=CHAR},
+      </if>
+      <if test="locationCity != null">
+        location_city = #{locationCity,jdbcType=CHAR},
+      </if>
+      <if test="locationArea != null">
+        location_area = #{locationArea,jdbcType=CHAR},
+      </if>
+      <if test="address != null">
+        address = #{address,jdbcType=VARCHAR},
+      </if>
+      <if test="companyIndustry != null">
+        company_industry = #{companyIndustry,jdbcType=VARCHAR},
+      </if>
+      <if test="remarks != null">
+        remarks = #{remarks,jdbcType=VARCHAR},
+      </if>
+    </set>
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.goafanti.common.model.Customer">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+      This element was generated on Mon Nov 06 08:45:21 CST 2017.
+    -->
+    update customer
+    set aid = #{aid,jdbcType=VARCHAR},
+      paid = #{paid,jdbcType=VARCHAR},
+      share_type = #{shareType,jdbcType=INTEGER},
+      customer_type = #{customerType,jdbcType=INTEGER},
+      customer_status = #{customerStatus,jdbcType=INTEGER},
+      company_intention = #{companyIntention,jdbcType=CHAR},
+      follow_situation = #{followSituation,jdbcType=INTEGER},
+      tag = #{tag,jdbcType=VARCHAR},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      follow_id = #{followId,jdbcType=VARCHAR},
+      effective = #{effective,jdbcType=INTEGER},
+      company_name = #{companyName,jdbcType=VARCHAR},
+      location_province = #{locationProvince,jdbcType=CHAR},
+      location_city = #{locationCity,jdbcType=CHAR},
+      location_area = #{locationArea,jdbcType=CHAR},
+      address = #{address,jdbcType=VARCHAR},
+      company_industry = #{companyIndustry,jdbcType=VARCHAR},
+      remarks = #{remarks,jdbcType=VARCHAR}
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+	 
+  <select id="selectCustomer" resultType="com.goafanti.customer.bo.CustomerOut">
+    select a.id,a.aid,a.customer_type as customerType,a.share_type as shareType,a.company_intention as CompanyIntention,
+    a.tag,a.follow_situation as followSituation,a.customer_status as customerStatus,
+    a.company_name as companyName,a.location_province as locationProvince,
+    b.follow_date as followDate,
+    c.name as contactName ,c.mobile,c.tel_num as telNum,
+    e.name as adminName,
+    b.follow_date as followDate
+    from customer a
+    left join follow_up_record b on a.follow_id = b.id 
+    left join customer_user_info c on b.cuid = c.id 
+    left join admin e on a.aid = e.id 
+    where a.effective = 0
+     <if test="aid != null and aid != ''">
+    	and (a.aid = #{aid,jdbcType=VARCHAR}
+    </if>
+    <if test="aid == null or aid == ''">
+    	and (1=1
+    </if>
+    <if test="paid != null and paid != ''">
+    	or a.paid like concat('%',#{paid,jdbcType=VARCHAR},'%'))
+    </if>
+    <if test="paid == null or paid == ''">
+    	)
+    </if>
+    <if test="shareType != null">
+        and a.share_type = #{shareType,jdbcType=INTEGER}
+    </if>
+    <if test="customerType != null">
+        and a.customer_type = #{customerType,jdbcType=INTEGER}
+    </if>
+    <if test="customerStauts != null">
+    	and a.customer_status = #{customerStauts,jdbcType=INTEGER}
+    </if>
+    <if test="companyIntention != null">
+    	and a.company_intention = #{companyIntention,jdbcType=INTEGER}
+    </if>
+    <if test="followSituation != null">
+    	and a.follow_situation = #{followSituation,jdbcType=INTEGER}
+    </if>
+    <if test="locationProvince != null">
+    	and a.location_province = #{locationProvince,jdbcType=VARCHAR}
+    </if>
+    <if test="companyName != null and companyName != ''">
+    	and a.company_name like concat('%',#{companyName,jdbcType=VARCHAR},'%')
+    </if>
+    <if test="contactName != null">
+    	and c.name = #{contactName,jdbcType=VARCHAR}
+    </if>
+    <if test="contactTel != null">
+    	 and c.tel_num = #{contactTel,jdbcType=VARCHAR}
+    </if>
+   	<if test="adminName != null and adminName != ''">
+   	 	and e.name like concat('%',#{adminName,jdbcType=VARCHAR},'%')
+   	</if>
+   	<if test="startDate != null and startDate != ''">
+   	 	and  b.follow_date &gt; STR_TO_DATE(#{startDate},'%Y-%m-%d %H:%i:%s')
+   	</if>
+   	<if test="endDate != null and endDate != ''">
+   	 	and  b.follow_date &lt; STR_TO_DATE(#{endDate},'%Y-%m-%d %H:%i:%s')
+   	</if>
+   	order by a.create_time desc
+   	<if test="page_sql!=null">
+		${page_sql}
+	</if>
+  </select>
+  
+  <select id="selectCustomerCount" resultType="java.lang.Integer">
+    select count(0)
+    from customer a
+    left join follow_up_record b on a.follow_id = b.id 
+    left join customer_user_info c on b.cuid = c.id 
+    left join admin e on a.aid = e.id 
+    where a.effective = 0
+    <if test="aid != null and aid != ''">
+    	and (a.aid = #{aid,jdbcType=VARCHAR}
+    </if>
+    <if test="aid == null or aid == ''">
+    	and (1=1
+    </if>
+    <if test="paid != null and paid != ''">
+    	or a.paid like concat('%',#{paid,jdbcType=VARCHAR},'%'))
+    </if>
+    <if test="paid == null or paid == ''">
+    	)
+    </if>
+    <if test="shareType != null">
+        and a.share_type = #{shareType,jdbcType=INTEGER}
+    </if>
+    <if test="customerType != null">
+        and a.customer_type = #{customerType,jdbcType=INTEGER}
+    </if>
+    <if test="customerStauts != null">
+    	and a.customer_status = #{customerStauts,jdbcType=INTEGER}
+    </if>
+    <if test="companyIntention != null">
+    	and a.company_intention = #{companyIntention,jdbcType=INTEGER}
+    </if>
+    <if test="followSituation != null">
+    	and a.follow_situation = #{followSituation,jdbcType=INTEGER}
+    </if>
+     <if test="companyName != null and companyName != ''">
+    	and a.company_name like concat('%',#{companyName,jdbcType=VARCHAR},'%')
+    </if>
+    <if test="locationProvince != null">
+    	and a.location_province = #{locationProvince,jdbcType=VARCHAR}
+    </if>
+    <if test="contactName != null">
+    	and c.name = #{contactName,jdbcType=VARCHAR}
+    </if>
+    <if test="contactTel != null">
+    	 and c.tel_num = #{contactTel,jdbcType=VARCHAR}
+    </if> 
+   	<if test="adminName != null and adminName != ''">
+   	 	and e.name like concat('%',#{adminName,jdbcType=VARCHAR},'%')
+   	</if>
+   	<if test="startDate != null and startDate != ''">
+   	 	and  b.follow_date &gt; STR_TO_DATE(#{startDate},'%Y-%m-%d %H:%i:%s')
+   	</if>
+   	<if test="endDate != null and endDate != ''">
+   	 	and  b.follow_date &lt; STR_TO_DATE(#{endDate},'%Y-%m-%d %H:%i:%s')
+   	</if>
+  </select>
+  
+  <select id="selectCustomerById" parameterType="java.lang.String" resultType="com.goafanti.customer.bo.CustomerOut">
+    select
+    a.id as cid, 
+    a.tag,
+    a.customer_type as customerType,
+    a.share_type as shareType,
+    a.company_intention as companyIntention,
+    a.create_time as createTime,
+    a.follow_situation as followSituation,
+    a.customer_status as customerStatus,
+    a.company_name as companyName,
+    a.location_province as locationProvince,
+    a.company_industry as companyIndustry,
+    a.address,
+    a.remarks,
+    d.name as adminName
+    from customer a 
+    left join admin d on a.aid=d.id
+    where a.id = #{id,jdbcType=VARCHAR}
+  </select> 
+
+  <select id="selectByLadderId" parameterType="java.lang.String" resultMap="BaseResultMap">
+  	select 
+    <include refid="Base_Column_List" />
+    from customer
+    where aid = #{ladderId} or paid like concat('%',#{ladderId},'%')
+  </select>
+  
+  <select id="findCustomerHistory" parameterType="java.lang.String" resultType="com.goafanti.customer.bo.CustomerOut">
+  	select 
+		a.id as cid,a.aid, a.create_time as createTime,
+		a.follow_situation as followSituation,a.customer_status as customerStatus,
+		a.company_name as customerName,
+		c.followCount,
+		d.follow_date as followDate,
+		e.name as contactName,
+		f.operatorTime,
+		g.name as adminName
+	from  customer  a 
+	left join (select ifnull(0,count(0)) as followCount,r.aid,r.cid from follow_up_record r group by r.aid,r.cid) c 
+		on a.id = c.cid and a.aid = c.aid
+	left join follow_up_record d on a.follow_id = d.id
+	left join customer_user_info e on d.cuid = e.id
+	left join (select l1.cid,l1.operator_time as operatorTime from customer_log l1 ,
+		(select cid, max(operator_time) as operator_time from customer_log  group by cid ) l2 
+		where l1.cid = l2.cid and l1.operator_time = l2.operator_time)f 
+		on a.id = f.cid
+	left join admin g on a.aid = g.id 
+	where a.id = #{id,jdbcType=VARCHAR}
+  </select>
+  
+  <select id="findCustomerByName" parameterType="java.lang.String" resultType="java.lang.Integer">
+  	select count(0) from customer  where company_name = #{companyName,jdbcType=VARCHAR}
+  </select>
+</mapper>