| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302 |
- <?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.UserFollowMapper">
- <resultMap id="BaseResultMap" type="com.goafanti.common.model.UserFollow">
- <id property="id" column="id" jdbcType="VARCHAR"/>
- <result property="uid" column="uid" jdbcType="VARCHAR"/>
- <result property="aid" column="aid" jdbcType="VARCHAR"/>
- <result property="paid" column="paid" jdbcType="VARCHAR"/>
- <result property="result" column="result" jdbcType="VARCHAR"/>
- <result property="attachmentUrl" column="attachment_url" jdbcType="VARCHAR"/>
- <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
- <result property="ocbId" column="ocb_id" jdbcType="VARCHAR"/>
- <result property="contactType" column="contact_type" jdbcType="INTEGER"/>
- <result property="effective" column="effective" jdbcType="INTEGER"/>
- <result property="timeStamp" column="time_stamp" jdbcType="TIMESTAMP"/>
- <result property="followCount" column="follow_count" jdbcType="INTEGER"/>
- <result property="guidance" column="guidance" jdbcType="VARCHAR"/>
- <result property="guidanceTime" column="guidance_time" jdbcType="TIMESTAMP"/>
- <result property="guidanceAid" column="guidance_aid" jdbcType="VARCHAR"/>
- <result property="guidanceName" column="guidance_name" jdbcType="VARCHAR"/>
- <result property="followName" column="follow_name" jdbcType="VARCHAR"/>
- <result property="followDep" column="follow_dep" jdbcType="VARCHAR"/>
- <result property="type" column="type" jdbcType="INTEGER"/>
- <result property="pid" column="pid" jdbcType="VARCHAR"/>
- </resultMap>
- <sql id="Base_Column_List">
- id,uid,aid,
- paid,result,attachment_url,
- create_time,ocb_id,contact_type,
- effective,time_stamp,follow_count,
- guidance,guidance_time,guidance_aid,
- guidance_name,follow_name,follow_dep,
- type,pid
- </sql>
- <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
- select
- <include refid="Base_Column_List" />
- from user_follow
- where id = #{id,jdbcType=VARCHAR}
- </select>
- <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
- delete from user_follow
- where id = #{id,jdbcType=VARCHAR}
- </delete>
- <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.goafanti.common.model.UserFollow" useGeneratedKeys="true">
- insert into user_follow
- ( id,uid,aid
- ,paid,result,attachment_url
- ,create_time,ocb_id,contact_type
- ,effective,time_stamp,follow_count
- ,guidance,guidance_time,guidance_aid
- ,guidance_name,follow_name,follow_dep
- ,type,pid)
- values (#{id,jdbcType=VARCHAR},#{uid,jdbcType=VARCHAR},#{aid,jdbcType=VARCHAR}
- ,#{paid,jdbcType=VARCHAR},#{result,jdbcType=VARCHAR},#{attachmentUrl,jdbcType=VARCHAR}
- ,#{createTime,jdbcType=TIMESTAMP},#{ocbId,jdbcType=VARCHAR},#{contactType,jdbcType=INTEGER}
- ,#{effective,jdbcType=INTEGER},#{timeStamp,jdbcType=TIMESTAMP},#{followCount,jdbcType=INTEGER}
- ,#{guidance,jdbcType=VARCHAR},#{guidanceTime,jdbcType=TIMESTAMP},#{guidanceAid,jdbcType=VARCHAR}
- ,#{guidanceName,jdbcType=VARCHAR},#{followName,jdbcType=VARCHAR},#{followDep,jdbcType=VARCHAR}
- ,#{type,jdbcType=INTEGER},#{pid,jdbcType=VARCHAR})
- </insert>
- <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.goafanti.common.model.UserFollow" useGeneratedKeys="true">
- insert into user_follow
- <trim prefix="(" suffix=")" suffixOverrides=",">
- <if test="id != null">id,</if>
- <if test="uid != null">uid,</if>
- <if test="aid != null">aid,</if>
- <if test="paid != null">paid,</if>
- <if test="result != null">result,</if>
- <if test="attachmentUrl != null">attachment_url,</if>
- <if test="createTime != null">create_time,</if>
- <if test="ocbId != null">ocb_id,</if>
- <if test="contactType != null">contact_type,</if>
- <if test="effective != null">effective,</if>
- <if test="timeStamp != null">time_stamp,</if>
- <if test="followCount != null">follow_count,</if>
- <if test="guidance != null">guidance,</if>
- <if test="guidanceTime != null">guidance_time,</if>
- <if test="guidanceAid != null">guidance_aid,</if>
- <if test="guidanceName != null">guidance_name,</if>
- <if test="followName != null">follow_name,</if>
- <if test="followDep != null">follow_dep,</if>
- <if test="type != null">type,</if>
- <if test="pid != null">pid,</if>
- </trim>
- <trim prefix="values (" suffix=")" suffixOverrides=",">
- <if test="id != null">#{id,jdbcType=VARCHAR},</if>
- <if test="uid != null">#{uid,jdbcType=VARCHAR},</if>
- <if test="aid != null">#{aid,jdbcType=VARCHAR},</if>
- <if test="paid != null">#{paid,jdbcType=VARCHAR},</if>
- <if test="result != null">#{result,jdbcType=VARCHAR},</if>
- <if test="attachmentUrl != null">#{attachmentUrl,jdbcType=VARCHAR},</if>
- <if test="createTime != null">#{createTime,jdbcType=TIMESTAMP},</if>
- <if test="ocbId != null">#{ocbId,jdbcType=VARCHAR},</if>
- <if test="contactType != null">#{contactType,jdbcType=INTEGER},</if>
- <if test="effective != null">#{effective,jdbcType=INTEGER},</if>
- <if test="timeStamp != null">#{timeStamp,jdbcType=TIMESTAMP},</if>
- <if test="followCount != null">#{followCount,jdbcType=INTEGER},</if>
- <if test="guidance != null">#{guidance,jdbcType=VARCHAR},</if>
- <if test="guidanceTime != null">#{guidanceTime,jdbcType=TIMESTAMP},</if>
- <if test="guidanceAid != null">#{guidanceAid,jdbcType=VARCHAR},</if>
- <if test="guidanceName != null">#{guidanceName,jdbcType=VARCHAR},</if>
- <if test="followName != null">#{followName,jdbcType=VARCHAR},</if>
- <if test="followDep != null">#{followDep,jdbcType=VARCHAR},</if>
- <if test="type != null">#{type,jdbcType=INTEGER},</if>
- <if test="pid != null">#{pid,jdbcType=VARCHAR},</if>
- </trim>
- </insert>
- <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.UserFollow">
- update user_follow
- <set>
- <if test="uid != null">
- uid = #{uid,jdbcType=VARCHAR},
- </if>
- <if test="aid != null">
- aid = #{aid,jdbcType=VARCHAR},
- </if>
- <if test="paid != null">
- paid = #{paid,jdbcType=VARCHAR},
- </if>
- <if test="result != null">
- result = #{result,jdbcType=VARCHAR},
- </if>
- <if test="attachmentUrl != null">
- attachment_url = #{attachmentUrl,jdbcType=VARCHAR},
- </if>
- <if test="createTime != null">
- create_time = #{createTime,jdbcType=TIMESTAMP},
- </if>
- <if test="ocbId != null">
- ocb_id = #{ocbId,jdbcType=VARCHAR},
- </if>
- <if test="contactType != null">
- contact_type = #{contactType,jdbcType=INTEGER},
- </if>
- <if test="effective != null">
- effective = #{effective,jdbcType=INTEGER},
- </if>
- <if test="timeStamp != null">
- time_stamp = #{timeStamp,jdbcType=TIMESTAMP},
- </if>
- <if test="followCount != null">
- follow_count = #{followCount,jdbcType=INTEGER},
- </if>
- <if test="guidance != null">
- guidance = #{guidance,jdbcType=VARCHAR},
- </if>
- <if test="guidanceTime != null">
- guidance_time = #{guidanceTime,jdbcType=TIMESTAMP},
- </if>
- <if test="guidanceAid != null">
- guidance_aid = #{guidanceAid,jdbcType=VARCHAR},
- </if>
- <if test="guidanceName != null">
- guidance_name = #{guidanceName,jdbcType=VARCHAR},
- </if>
- <if test="followName != null">
- follow_name = #{followName,jdbcType=VARCHAR},
- </if>
- <if test="followDep != null">
- follow_dep = #{followDep,jdbcType=VARCHAR},
- </if>
- <if test="type != null">
- type = #{type,jdbcType=INTEGER},
- </if>
- <if test="pid != null">
- pid = #{pid,jdbcType=VARCHAR},
- </if>
- </set>
- where id = #{id,jdbcType=VARCHAR}
- </update>
- <update id="updateByPrimaryKey" parameterType="com.goafanti.common.model.UserFollow">
- update user_follow
- set
- uid = #{uid,jdbcType=VARCHAR},
- aid = #{aid,jdbcType=VARCHAR},
- paid = #{paid,jdbcType=VARCHAR},
- result = #{result,jdbcType=VARCHAR},
- attachment_url = #{attachmentUrl,jdbcType=VARCHAR},
- create_time = #{createTime,jdbcType=TIMESTAMP},
- ocb_id = #{ocbId,jdbcType=VARCHAR},
- contact_type = #{contactType,jdbcType=INTEGER},
- effective = #{effective,jdbcType=INTEGER},
- time_stamp = #{timeStamp,jdbcType=TIMESTAMP},
- follow_count = #{followCount,jdbcType=INTEGER},
- guidance = #{guidance,jdbcType=VARCHAR},
- guidance_time = #{guidanceTime,jdbcType=TIMESTAMP},
- guidance_aid = #{guidanceAid,jdbcType=VARCHAR},
- guidance_name = #{guidanceName,jdbcType=VARCHAR},
- follow_name = #{followName,jdbcType=VARCHAR},
- follow_dep = #{followDep,jdbcType=VARCHAR},
- type = #{type,jdbcType=INTEGER},
- pid = #{pid,jdbcType=VARCHAR}
- where id = #{id,jdbcType=VARCHAR}
- </update>
- <update id="pushUserGuidance">
- update user_follow b, `user` a
- set a.guidance= #{guidance}
- where a.id=b.uid and b.id= #{id}
- </update>
- <select id="selectByUidAndUid" resultMap="BaseResultMap">
- select
- <include refid="Base_Column_List" />
- from user_follow a
- where a.uid= #{uid}
- <if test="aid !=null">
- and a.aid= #{aid}
- </if>
- </select>
- <select id="userFollowList" resultType="com.goafanti.user.bo.outUserFollowList">
- select b.nickname,b.share_type shareType ,b.channel,b.id,date_format(b.transfer_time,'%Y-%m-%d %H:%i:%s')startTimes,
- a.contact_type contactType,a.follow_name followName ,a.follow_dep followDep,a.`result` ,a.follow_count followCount,
- date_format(a.create_time ,'%Y-%m-%d %H:%i:%s')followTimes,a.guidance_name guidanceName, a.guidance ,a.type,a.pid,
- date_format(a.guidance_time,'%Y-%m-%d %H:%i:%s') guidanceTimes,c.contacts ,c.contact_mobile contactMobile,
- c.location_province province ,c.location_city city ,c.location_area area,e.bname projectName,
- c.intended_project intendedProject ,c.business_scope businessScope
- from user_follow a left join `user`b on a.uid =b.id left join organization_identity c on a.uid=c.uid
- left join admin d on a.aid =d.id left join business_project e on a.pid =e.id
- where 1=1
- <include refid="userFollowSql"/>
- order by a.create_time desc
- <if test="page_sql != null">
- ${page_sql}
- </if>
- </select>
- <sql id="userFollowSql">
- <if test="shiroType == 0">
- and a.aid= #{aid}
- </if>
- <if test="shiroType == 1">
- and a.aid in
- <foreach close=")" collection="aids" item="id" open="(" separator=",">
- #{id}
- </foreach>
- </if>
- <if test="followName != null">
- and a.follow_name like concat('%',#{followName},'%')
- </if>
- <if test="userName != null">
- and b.nickname like concat('%',#{userName},'%')
- </if>
- <if test="userType == 1">
- and b.share_type =0
- </if>
- <if test="userType == 2">
- and b.share_type =1
- </if>
- <if test="userType == 3">
- and b.share_type =2
- </if>
- <if test="userType == 4">
- and b.share_type =3
- </if>
- <if test="userType == 5">
- and a.type=1
- </if>
- <if test="contactType != null">
- and a.contact_type = #{contactType}
- </if>
- <if test="followStartTime !=null and followEndTime !=null">
- and a.create_time between #{followStartTime} and #{followEndTime}
- </if>
- <if test="createStartTime !=null and createEndTime !=null">
- and b.transfer_time between #{createStartTime} and #{createEndTime}
- </if>
- <if test="guidanceStartTime !=null and guidanceEndTime !=null">
- and a.guidance_time between #{guidanceStartTime} and #{guidanceEndTime}
- </if>
- <if test="deps != null">
- and d.department_id in
- <foreach close=")" collection="deps" item="depId" open="(" separator=",">
- #{depId}
- </foreach>
- </if>
- </sql>
- <select id="userFollowCount" resultType="java.lang.Integer">
- select count(*)
- from user_follow a left join `user`b on a.uid =b.id
- left join admin d on a.aid =d.id where 1=1
- <include refid="userFollowSql"/>
- </select>
- <select id="selectByaidAndDate" resultType="java.lang.Integer">
- select count(*)followCount
- from (select aid
- from user_follow where aid= #{aid}
- and create_time BETWEEN #{startTime} and #{endTime})a
- group by aid
- </select>
- </mapper>
|