yujian
2019-01-22 88b54772dbcf5ecab1e2316e4e4626ac901b8908
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<?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.yeshi.fanli.dao.mybatis.user.ShamUserMapper">
  <resultMap id="BaseResultMap" type="com.yeshi.fanli.entity.bus.user.ShamUser">
    <id column="id" property="id" jdbcType="BIGINT"/>
    <result column="name" property="name" jdbcType="VARCHAR"/>
    <result column="picUrl" property="picUrl" jdbcType="VARCHAR"/>
  </resultMap>
  <sql id="Base_Column_List">id,name,picUrl</sql>
  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Long">select
    <include refid="Base_Column_List"/>from yeshi_ec_sham_user where id = #{id,jdbcType=BIGINT}
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">delete from yeshi_ec_sham_user where id = #{id,jdbcType=BIGINT}</delete>
  <insert id="insert" parameterType="com.yeshi.fanli.entity.bus.user.ShamUser" useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_sham_user (id,name,picUrl) values (#{id,jdbcType=BIGINT},#{name,jdbcType=VARCHAR},#{picUrl,jdbcType=VARCHAR})</insert>
  <insert id="insertSelective" parameterType="com.yeshi.fanli.entity.bus.user.ShamUser" useGeneratedKeys="true" keyProperty="id">insert into yeshi_ec_sham_user
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="id != null">id,</if>
      <if test="name != null">name,</if>
      <if test="picUrl != null">picUrl,</if>
    </trim>values
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="id != null">#{id,jdbcType=BIGINT},</if>
      <if test="name != null">#{name,jdbcType=VARCHAR},</if>
      <if test="picUrl != null">#{picUrl,jdbcType=VARCHAR},</if>
    </trim>
  </insert>
  <update id="updateByPrimaryKey" parameterType="com.yeshi.fanli.entity.bus.user.ShamUser">update yeshi_ec_sham_user set name = #{name,jdbcType=VARCHAR},picUrl = #{picUrl,jdbcType=VARCHAR} where id = #{id,jdbcType=BIGINT}</update>
  <update id="updateByPrimaryKeySelective" parameterType="com.yeshi.fanli.entity.bus.user.ShamUser">update yeshi_ec_sham_user
    <set>
      <if test="name != null">name=#{name,jdbcType=VARCHAR},</if>
      <if test="picUrl != null">picUrl=#{picUrl,jdbcType=VARCHAR},</if>
    </set> where id = #{id,jdbcType=BIGINT}
  </update>
  
  <insert id="insertBatch"  useGeneratedKeys="true" keyProperty="id"  parameterType="java.util.List">
          insert into yeshi_ec_sham_user
        (<include refid="Base_Column_List" />) values
          <foreach collection="list" item="item" separator=",">
              (
                 #{item.id,jdbcType=BIGINT},
                 #{item.name,jdbcType=VARCHAR},
                 #{item.picUrl,jdbcType=VARCHAR}
             )
          </foreach>
  </insert>
  
  <update id="updateBatchSelective" parameterType="java.util.List">
        update yeshi_ec_sham_user
            <trim prefix="set" suffixOverrides=",">
                <trim prefix="name =case" suffix="end,">
                    <foreach collection="list" item="item" index="index">
                               <if test="item.name !=null">
                         when id=#{item.id} then #{item.name}
                               </if>
                    </foreach>
                </trim>
               <trim prefix="picUrl =case" suffix="end,">
                    <foreach collection="list" item="item" index="index">
                               <if test="item.picUrl !=null">
                         when id=#{item.id} then #{item.picUrl}
                               </if>
                    </foreach>
                </trim>
              </trim>
        where id in
      <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
            #{item.id,jdbcType=BIGINT}
        </foreach>
     </update>
  
   <select id="listShamUserByKey" resultMap="BaseResultMap">
      <!-- 根据条件查询所有标签 -->
        SELECT  <include refid="Base_Column_List" />  FROM yeshi_ec_sham_user
        WHERE 1=1
           <if test='key != null and key != ""'>
                  AND (id like '%${key}%' OR name like '%${key}%') 
           </if>
           ORDER BY  id DESC
        LIMIT ${start},${count}
   </select>
 
   <select id="countShamUserByKey" resultType="java.lang.Long">
           SELECT count(id)  FROM yeshi_ec_sham_user
        WHERE 1=1
           <if test='key != null and key != ""'>
                  AND (id like '%${key}%' OR name like '%${key}%') 
           </if>
    </select>
    
    
    <select id="listByDistinctPicUrl" resultMap="BaseResultMap">
        SELECT B.* FROM 
            (SELECT DISTINCT(f.`picUrl`),f.`id` FROM `yeshi_ec_sham_user` f ORDER BY  id DESC 
             LIMIT ${start},${count})A 
        LEFT JOIN yeshi_ec_sham_user B ON  A.id = B.id
    </select>
 
     <select id="listRand" resultMap="BaseResultMap">
        SELECT <include refid="Base_Column_List" /> FROM yeshi_ec_sham_user ORDER BY  RAND() LIMIT #{count}
    </select>
    
</mapper>