UnionShareOrdersMonthMapper.xml 11.2 KB
<?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.yoho.unions.dal.UnionShareOrdersMonthMapper" >
  <resultMap id="BaseResultMap" type="com.yoho.unions.dal.model.UnionShareOrdersMonth" >
    <id column="id" property="id" jdbcType="INTEGER" />
    <result column="uid" property="uid" jdbcType="INTEGER" />
    <result column="type" property="type" jdbcType="INTEGER" />
    <result column="alias" property="alias" jdbcType="VARCHAR" />
    <result column="nickname" property="nickname" jdbcType="VARCHAR" />
    <result column="image" property="image" jdbcType="VARCHAR" />
    <result column="date" property="date" jdbcType="INTEGER" />
    <result column="amount" property="amount" jdbcType="DECIMAL" />
    <result column="order_amount" property="orderAmount" jdbcType="DECIMAL" />
    <result column="extra_amount" property="extraAmount" jdbcType="DECIMAL" />
    <result column="order_num" property="orderNum" jdbcType="INTEGER" />
    <result column="create_time" property="createTime" jdbcType="INTEGER" />
    <result column="update_time" property="updateTime" jdbcType="INTEGER" />
  </resultMap>
  <sql id="Base_Column_List" >
    id, uid, type, alias, nickname, image, date, amount, order_amount, extra_amount, order_num,
    create_time, update_time
  </sql>
  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
    select 
    <include refid="Base_Column_List" />
    from union_share_orders_month
    where id = #{id,jdbcType=INTEGER}
  </select>
  <select id="selectMonthData" resultMap="BaseResultMap" >
    select
    <include refid="Base_Column_List" />
    from union_share_orders_month
    where uid = #{promoteUid,jdbcType=INTEGER} and date=#{date,jdbcType=INTEGER} and type=#{type,jdbcType=INTEGER}
    order by id desc
  </select>
  <select id="selectVirtualMonthData" resultMap="BaseResultMap" >
    select
    <include refid="Base_Column_List" />
    from union_share_orders_month
    where date=#{date,jdbcType=INTEGER} and type=2
    limit 100
  </select>
  <select id="selectMonthRankList" resultType="com.yoho.service.model.union.bo.UninoShareIncomeBo" >
    select amount ,uid,alias,nickname,image,order_num as orderNum
    from union_share_orders_month
    where date=#{date,jdbcType=INTEGER}
    order by amount desc
    limit #{start},#{size}
  </select>
  <select id="selectTotalRankList" resultType="com.yoho.service.model.union.bo.UninoShareIncomeBo" >
    select sum(amount) as amount ,uid,alias,nickname,max(image) as image,order_num as orderNum
    from union_share_orders_month
    group by alias
    order by sum(amount) desc
    limit #{start},#{size}
  </select>
  <select id="selectSelective" resultMap="BaseResultMap"  >
    select
    <include refid="Base_Column_List" />
    from union_share_orders_month
    where type = #{type,jdbcType=INTEGER} and  alias = #{alias,jdbcType=VARCHAR} and date = #{date,jdbcType=INTEGER}
    limit 10
  </select>
  <select id="selectAmountByUid" resultType="java.math.BigDecimal" >
    select sum(amount)
    from union_share_orders_month
    where uid = #{promoteUid,jdbcType=INTEGER} and type=#{type,jdbcType=INTEGER}
    <if test="date != null">
      and date=#{date,jdbcType=INTEGER}
    </if>
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
    delete from union_share_orders_month
    where id = #{id,jdbcType=INTEGER}
  </delete>
  <insert id="insert" parameterType="com.yoho.unions.dal.model.UnionShareOrdersMonth" >
    insert into union_share_orders_month (id, uid, type, 
      alias, nickname, image, date,
      amount, order_amount, extra_amount, 
      order_num, create_time, update_time
      )
    values (#{id,jdbcType=INTEGER}, #{uid,jdbcType=INTEGER}, #{type,jdbcType=INTEGER}, 
      #{alias,jdbcType=VARCHAR}, #{nickname,jdbcType=VARCHAR}, #{image,jdbcType=VARCHAR}, #{date,jdbcType=INTEGER},
      #{amount,jdbcType=DECIMAL}, #{orderAmount,jdbcType=DECIMAL}, #{extraAmount,jdbcType=DECIMAL}, 
      #{orderNum,jdbcType=INTEGER}, #{createTime,jdbcType=INTEGER}, #{updateTime,jdbcType=INTEGER}
      )
  </insert>
  <insert id="insertSelective" parameterType="com.yoho.unions.dal.model.UnionShareOrdersMonth" >
    insert into union_share_orders_month
    <trim prefix="(" suffix=")" suffixOverrides="," >
      <if test="id != null" >
        id,
      </if>
      <if test="uid != null" >
        uid,
      </if>
      <if test="type != null" >
        type,
      </if>
      <if test="alias != null" >
        alias,
      </if>
      <if test="nickname != null" >
        nickname,
      </if>
      <if test="image != null" >
        image,
      </if>
      <if test="date != null" >
        date,
      </if>
      <if test="amount != null" >
        amount,
      </if>
      <if test="orderAmount != null" >
        order_amount,
      </if>
      <if test="extraAmount != null" >
        extra_amount,
      </if>
      <if test="orderNum != null" >
        order_num,
      </if>
      <if test="createTime != null" >
        create_time,
      </if>
      <if test="updateTime != null" >
        update_time,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides="," >
      <if test="id != null" >
        #{id,jdbcType=INTEGER},
      </if>
      <if test="uid != null" >
        #{uid,jdbcType=INTEGER},
      </if>
      <if test="type != null" >
        #{type,jdbcType=INTEGER},
      </if>
      <if test="alias != null" >
        #{alias,jdbcType=VARCHAR},
      </if>
      <if test="nickname != null" >
        #{nickname,jdbcType=VARCHAR},
      </if>
      <if test="image != null" >
        #{image,jdbcType=VARCHAR},
      </if>
      <if test="date != null" >
        #{date,jdbcType=INTEGER},
      </if>
      <if test="amount != null" >
        #{amount,jdbcType=DECIMAL},
      </if>
      <if test="orderAmount != null" >
        #{orderAmount,jdbcType=DECIMAL},
      </if>
      <if test="extraAmount != null" >
        #{extraAmount,jdbcType=DECIMAL},
      </if>
      <if test="orderNum != null" >
        #{orderNum,jdbcType=INTEGER},
      </if>
      <if test="createTime != null" >
        #{createTime,jdbcType=INTEGER},
      </if>
      <if test="updateTime != null" >
        #{updateTime,jdbcType=INTEGER},
      </if>
    </trim>
  </insert>
  <update id="updateByUidAndMonth" parameterType="com.yoho.unions.dal.model.UnionShareOrdersMonth" >
    update union_share_orders_month
    <set >
      <if test="alias != null" >
        alias = #{alias,jdbcType=VARCHAR},
      </if>
      <if test="nickname != null" >
        nickname = #{nickname,jdbcType=VARCHAR},
      </if>
      <if test="image != null" >
        image = #{image,jdbcType=INTEGER},
      </if>
      <if test="amount != null" >
        amount = #{amount,jdbcType=DECIMAL},
      </if>
      <if test="orderAmount != null" >
        order_amount = #{orderAmount,jdbcType=DECIMAL},
      </if>
      <if test="extraAmount != null" >
        extra_amount = #{extraAmount,jdbcType=DECIMAL},
      </if>
      <if test="orderNum != null" >
        order_num = #{orderNum,jdbcType=INTEGER},
      </if>
      <if test="updateTime != null" >
        update_time = #{updateTime,jdbcType=INTEGER},
      </if>
    </set>
    where  uid = #{uid,jdbcType=INTEGER} and type = #{type,jdbcType=INTEGER} and date = #{date,jdbcType=INTEGER}
  </update>

  <update id="updateByPrimaryKeySelective" parameterType="com.yoho.unions.dal.model.UnionShareOrdersMonth" >
    update union_share_orders_month
    <set >
      <if test="uid != null" >
        uid = #{uid,jdbcType=INTEGER},
      </if>
      <if test="type != null" >
        type = #{type,jdbcType=INTEGER},
      </if>
      <if test="alias != null" >
        alias = #{alias,jdbcType=VARCHAR},
      </if>
      <if test="nickname != null" >
        nickname = #{nickname,jdbcType=VARCHAR},
      </if>
      <if test="image != null" >
        image = #{image,jdbcType=VARCHAR},
      </if>
      <if test="date != null" >
        date = #{date,jdbcType=INTEGER},
      </if>
      <if test="amount != null" >
        amount = #{amount,jdbcType=DECIMAL},
      </if>
      <if test="orderAmount != null" >
        order_amount = #{orderAmount,jdbcType=DECIMAL},
      </if>
      <if test="extraAmount != null" >
        extra_amount = #{extraAmount,jdbcType=DECIMAL},
      </if>
      <if test="orderNum != null" >
        order_num = #{orderNum,jdbcType=INTEGER},
      </if>
      <if test="createTime != null" >
        create_time = #{createTime,jdbcType=INTEGER},
      </if>
      <if test="updateTime != null" >
        update_time = #{updateTime,jdbcType=INTEGER},
      </if>
    </set>
    where id = #{id,jdbcType=INTEGER}
  </update>
  <update id="updateByPrimaryKey" parameterType="com.yoho.unions.dal.model.UnionShareOrdersMonth" >
    update union_share_orders_month
    set uid = #{uid,jdbcType=INTEGER},
      type = #{type,jdbcType=INTEGER},
      alias = #{alias,jdbcType=VARCHAR},
      nickname = #{nickname,jdbcType=VARCHAR},
      image = #{image,jdbcType=VARCHAR},
      date = #{date,jdbcType=INTEGER},
      amount = #{amount,jdbcType=DECIMAL},
      order_amount = #{orderAmount,jdbcType=DECIMAL},
      extra_amount = #{extraAmount,jdbcType=DECIMAL},
      order_num = #{orderNum,jdbcType=INTEGER},
      create_time = #{createTime,jdbcType=INTEGER},
      update_time = #{updateTime,jdbcType=INTEGER}
    where id = #{id,jdbcType=INTEGER}
  </update>
  
  <sql id="Query_User_Month_Sql" >
     <if test="uid != null">
         and uid = #{uid}
     </if>
     <if test="alias != null">
         and alias = #{alias}
     </if>
     <if test="type != null">
         and type = #{type}
     </if>
     <if test="endDate != null">
         and date &lt;= #{endDate}
     </if>
     <if test="beginDate != null">
         and date &gt;= #{beginDate}
     </if>
  </sql>
  
  <select id="selectTotalByCondition" resultType="java.lang.Integer"
          parameterType="com.yoho.service.model.union.request.UnionShareOrdersMonthReqBO">
    select count(id)
    from union_share_orders_month
    where 1=1
    <include refid="Query_User_Month_Sql" />
  </select>
  
  <select id="selectByCondition" resultMap="BaseResultMap"
          parameterType="com.yoho.service.model.union.request.UnionShareOrdersMonthReqBO">
    select <include refid="Base_Column_List" /> 
    from union_share_orders_month
    where 1=1 
    <include refid="Query_User_Month_Sql" />
    order by date desc, amount desc 
    <if test="start!=null and size != null">
    limit #{start},#{size}
    </if>
  </select>
  
  <insert id="batchInsert" parameterType="java.util.List">
	insert into union_share_orders_month (uid, type, nickname, image, date,
      amount, order_amount, extra_amount, order_num, create_time, update_time)
    values 
	<foreach collection="list" item="item" index="index" separator=",">
		(#{item.uid,jdbcType=INTEGER}, #{item.type,jdbcType=INTEGER}, #{item.nickname,jdbcType=VARCHAR}, #{item.image,jdbcType=VARCHAR},
        #{item.date,jdbcType=INTEGER}, #{item.amount,jdbcType=DECIMAL}, #{item.orderAmount,jdbcType=DECIMAL},
      #{item.extraAmount,jdbcType=DECIMAL}, #{item.orderNum,jdbcType=INTEGER}, #{item.createTime,jdbcType=INTEGER}, 
      #{item.updateTime,jdbcType=INTEGER})
	</foreach>
  </insert>
</mapper>