<?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">
		<!-- WARNING - @mbg.generated This element is automatically generated by 
			MyBatis Generator, do not modify. This element was generated on Sat Oct 10 
			10:18:15 CST 2020. -->
		<id column="id" jdbcType="VARCHAR" property="id" />
		<result column="uid" jdbcType="VARCHAR" property="uid" />
		<result column="aid" jdbcType="VARCHAR" property="aid" />
		<result column="paid" jdbcType="VARCHAR" property="paid" />
		<result column="result" jdbcType="VARCHAR" property="result" />
		<result column="attachment_url" jdbcType="VARCHAR"
			property="attachmentUrl" />
		<result column="create_time" jdbcType="TIMESTAMP"
			property="createTime" />
		<result column="ocb_id" jdbcType="VARCHAR" property="ocbId" />
		<result column="contact_type" jdbcType="INTEGER"
			property="contactType" />
		<result column="effective" jdbcType="INTEGER"
			property="effective" />
		<result column="time_stamp" jdbcType="TIMESTAMP"
			property="timeStamp" />
		<result column="follow_count" jdbcType="INTEGER"
			property="followCount" />
		<result column="guidance" jdbcType="VARCHAR"
			property="guidance" />
		<result column="guidance_time" jdbcType="TIMESTAMP"
			property="guidanceTime" />
	</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 Sat Oct 10 
			10:18:15 CST 2020. -->
		<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 Sat Oct 10 
			10:18:15 CST 2020. -->
		<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 Sat Oct 10 
			10:18:15 CST 2020. -->
		id, uid, aid, paid, result, attachment_url, create_time, ocb_id,
		contact_type, effective,
		time_stamp, follow_count, guidance, guidance_time
	</sql>
	<select id="selectByExample"
		parameterType="com.goafanti.common.model.UserFollowExample"
		resultMap="BaseResultMap">
		<!-- WARNING - @mbg.generated This element is automatically generated by 
			MyBatis Generator, do not modify. This element was generated on Sat Oct 10 
			10:18:15 CST 2020. -->
		select
		<if test="distinct">
			distinct
		</if>
		<include refid="Base_Column_List" />
		from user_follow
		<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 Sat Oct 10 
			10:18:15 CST 2020. -->
		select
		<include refid="Base_Column_List" />
		from user_follow
		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 Sat Oct 10 
			10:18:15 CST 2020. -->
		delete from user_follow
		where id = #{id,jdbcType=VARCHAR}
	</delete>
	<delete id="deleteByExample"
		parameterType="com.goafanti.common.model.UserFollowExample">
		<!-- WARNING - @mbg.generated This element is automatically generated by 
			MyBatis Generator, do not modify. This element was generated on Sat Oct 10 
			10:18:15 CST 2020. -->
		delete from user_follow
		<if test="_parameter != null">
			<include refid="Example_Where_Clause" />
		</if>
	</delete>
	<insert id="insert"
		parameterType="com.goafanti.common.model.UserFollow">
		<!-- WARNING - @mbg.generated This element is automatically generated by 
			MyBatis Generator, do not modify. This element was generated on Sat Oct 10 
			10:18:15 CST 2020. -->
		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)
		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})
	</insert>
	<insert id="insertSelective"
		parameterType="com.goafanti.common.model.UserFollow">
		<!-- WARNING - @mbg.generated This element is automatically generated by 
			MyBatis Generator, do not modify. This element was generated on Sat Oct 10 
			10:18:15 CST 2020. -->
		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>
		</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>
		</trim>
	</insert>
	<select id="countByExample"
		parameterType="com.goafanti.common.model.UserFollowExample"
		resultType="java.lang.Long">
		<!-- WARNING - @mbg.generated This element is automatically generated by 
			MyBatis Generator, do not modify. This element was generated on Sat Oct 10 
			10:18:15 CST 2020. -->
		select count(*) from user_follow
		<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 Sat Oct 10 
			10:18:15 CST 2020. -->
		update user_follow
		<set>
			<if test="record.id != null">
				id = #{record.id,jdbcType=VARCHAR},
			</if>
			<if test="record.uid != null">
				uid = #{record.uid,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.result != null">
				result = #{record.result,jdbcType=VARCHAR},
			</if>
			<if test="record.attachmentUrl != null">
				attachment_url = #{record.attachmentUrl,jdbcType=VARCHAR},
			</if>
			<if test="record.createTime != null">
				create_time = #{record.createTime,jdbcType=TIMESTAMP},
			</if>
			<if test="record.ocbId != null">
				ocb_id = #{record.ocbId,jdbcType=VARCHAR},
			</if>
			<if test="record.contactType != null">
				contact_type = #{record.contactType,jdbcType=INTEGER},
			</if>
			<if test="record.effective != null">
				effective = #{record.effective,jdbcType=INTEGER},
			</if>
			<if test="record.timeStamp != null">
				time_stamp = #{record.timeStamp,jdbcType=TIMESTAMP},
			</if>
			<if test="record.followCount != null">
				follow_count = #{record.followCount,jdbcType=INTEGER},
			</if>
			<if test="record.guidance != null">
				guidance = #{record.guidance,jdbcType=VARCHAR},
			</if>
			<if test="record.guidanceTime != null">
				guidance_time = #{record.guidanceTime,jdbcType=TIMESTAMP},
			</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 Sat Oct 10 
			10:18:15 CST 2020. -->
		update user_follow
		set id = #{record.id,jdbcType=VARCHAR},
		uid = #{record.uid,jdbcType=VARCHAR},
		aid = #{record.aid,jdbcType=VARCHAR},
		paid = #{record.paid,jdbcType=VARCHAR},
		result = #{record.result,jdbcType=VARCHAR},
		attachment_url = #{record.attachmentUrl,jdbcType=VARCHAR},
		create_time = #{record.createTime,jdbcType=TIMESTAMP},
		ocb_id = #{record.ocbId,jdbcType=VARCHAR},
		contact_type = #{record.contactType,jdbcType=INTEGER},
		effective = #{record.effective,jdbcType=INTEGER},
		time_stamp = #{record.timeStamp,jdbcType=TIMESTAMP},
		follow_count = #{record.followCount,jdbcType=INTEGER},
		guidance = #{record.guidance,jdbcType=VARCHAR},
		guidance_time = #{record.guidanceTime,jdbcType=TIMESTAMP}
		<if test="_parameter != null">
			<include refid="Update_By_Example_Where_Clause" />
		</if>
	</update>
	<update id="updateByPrimaryKeySelective"
		parameterType="com.goafanti.common.model.UserFollow">
		<!-- WARNING - @mbg.generated This element is automatically generated by 
			MyBatis Generator, do not modify. This element was generated on Sat Oct 10 
			10:18:15 CST 2020. -->
		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>
		</set>
		where id = #{id,jdbcType=VARCHAR}
	</update>
	<update id="updateByPrimaryKey"
		parameterType="com.goafanti.common.model.UserFollow">
		<!-- WARNING - @mbg.generated This element is automatically generated by 
			MyBatis Generator, do not modify. This element was generated on Sat Oct 10 
			10:18:15 CST 2020. -->
		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}
		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="selectbyUid"  resultMap="BaseResultMap">
		select
		<include refid="Base_Column_List" />
		from user_follow a
		where a.uid= #{uid}
		and a.aid= #{aid}
	</select>
</mapper>