<?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.fuxi.ws.data.dao.VipfavoritesMapper">
	<resultMap id="BaseResultMap" type="com.fuxi.ws.data.entity.Vipfavorites">
		<id column="VIPFavoritesID" property="vipfavoritesid" jdbcType="INTEGER" />
		<result column="VipID" property="vipid" jdbcType="VARCHAR" />
		<result column="Date" property="date" jdbcType="TIMESTAMP" />
		<result column="Goodsid" property="goodsid" jdbcType="VARCHAR" />
	</resultMap>	
	<sql id="Example_Where_Clause">
		<where>
			<foreach collection="oredCriteria" item="criteria" separator="or">
				<if test="criteria.valid">
					<trim prefix="(" suffix=")" prefixOverrides="and">
						<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 collection="criterion.value" item="listItem" open="(" close=")" separator=",">
										#{listItem}
									</foreach>
								</when>
							</choose>
						</foreach>
					</trim>
				</if>
			</foreach>
		</where>
	</sql>
	<sql id="Base_Column_List">
		VIPFavoritesID, VipID, Date, Goodsid
	</sql>
	<select id="selectByExample" resultMap="BaseResultMap" parameterType="com.fuxi.ws.data.entity.VipfavoritesExample">
		select
		<if test="distinct">
			distinct
		</if>
		'false' as QUERYID,
		<include refid="Base_Column_List" />
		from VIPFavorites
		<if test="_parameter != null">
			<include refid="Example_Where_Clause" />
		</if>
		<if test="orderByClause != null">
			order by ${orderByClause}
		</if>
	</select>
	<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer">
		select
		<include refid="Base_Column_List" />
		from VIPFavorites
		where VIPFavoritesID = #{vipfavoritesid,jdbcType=INTEGER}
	</select>
	<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
		delete from VIPFavorites
		where VIPFavoritesID = #{vipfavoritesid,jdbcType=INTEGER}
	</delete>
	<insert id="insert" parameterType="com.fuxi.ws.data.entity.Vipfavorites">
		insert into VIPFavorites (VIPFavoritesID, VipID, Date,
		Goodsid)
		values (#{vipfavoritesid,jdbcType=INTEGER}, #{vipid,jdbcType=VARCHAR},
		#{date,jdbcType=TIMESTAMP},
		#{goodsid,jdbcType=VARCHAR})
	</insert>
	<insert id="insertSelective" parameterType="com.fuxi.ws.data.entity.Vipfavorites">
		insert into VIPFavorites
		<trim prefix="(" suffix=")" suffixOverrides=",">
			<if test="vipfavoritesid != null">
				VIPFavoritesID,
			</if>
			<if test="vipid != null">
				VipID,
			</if>
			<if test="date != null">
				Date,
			</if>
			<if test="goodsid != null">
				Goodsid,
			</if>
		</trim>
		<trim prefix="values (" suffix=")" suffixOverrides=",">
			<if test="vipfavoritesid != null">
				#{vipfavoritesid,jdbcType=INTEGER},
			</if>
			<if test="vipid != null">
				#{vipid,jdbcType=VARCHAR},
			</if>
			<if test="date != null">
				#{date,jdbcType=TIMESTAMP},
			</if>
			<if test="goodsid != null">
				#{goodsid,jdbcType=VARCHAR},
			</if>
		</trim>
	</insert>
	<select id="countByExample" parameterType="com.fuxi.ws.data.entity.VipfavoritesExample" resultType="java.lang.Integer">
		select count(*) from VIPFavorites
		<if test="_parameter != null">
			<include refid="Example_Where_Clause" />
		</if>
	</select>
	<update id="updateByPrimaryKeySelective" parameterType="com.fuxi.ws.data.entity.Vipfavorites">
		update VIPFavorites
		<set>
			<if test="vipid != null">
				VipID = #{vipid,jdbcType=VARCHAR},
			</if>
			<if test="date != null">
				Date = #{date,jdbcType=TIMESTAMP},
			</if>
			<if test="goodsid != null">
				Goodsid = #{goodsid,jdbcType=VARCHAR},
			</if>
		</set>
		where VIPFavoritesID = #{vipfavoritesid,jdbcType=INTEGER}
	</update>
	<update id="updateByPrimaryKey" parameterType="com.fuxi.ws.data.entity.Vipfavorites">
		update VIPFavorites
		set VipID = #{vipid,jdbcType=VARCHAR},
		Date = #{date,jdbcType=TIMESTAMP},
		Goodsid = #{goodsid,jdbcType=VARCHAR}
		where
		VIPFavoritesID = #{vipfavoritesid,jdbcType=INTEGER}
	</update>
	
	<resultMap id="Resultextend" type="com.fuxi.ws.data.entity.Vipfavorites" extends="BaseResultMap">
		<result column="Name" property="name" jdbcType="VARCHAR" />
		<result column="VIPPrice" property="vipprice" jdbcType="VARCHAR" />
		<result column="ImgPath" property="imgpath" jdbcType="VARCHAR" />
	</resultMap>

	<select id="selectByVip" resultMap="Resultextend" parameterType="java.util.HashMap">
		SELECT a.VIPFavoritesID,a.Goodsid,c.GoodName as Name,c.Price as VIPPrice, c.ImgPath,
		c.PayByPoint,c.Integral
		FROM VIPFavorites AS a inner join
		W_Goods c on c.Goodsid=a.Goodsid
		where a.VipID = #{vipid,jdbcType=VARCHAR}
	</select>
</mapper>