SellerOrderMapper.xml 9.36 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.yohoufo.dal.order.SellerOrderMapper">
  <resultMap id="BaseResultMap" type="com.yohoufo.dal.order.model.SellerOrder">
    <id column="id" jdbcType="INTEGER" property="id" />
    <result column="order_code" jdbcType="BIGINT" property="orderCode" />
    <result column="skup" jdbcType="INTEGER" property="skup" />
    <result column="uid" jdbcType="INTEGER" property="uid" />
    <result column="client_type" jdbcType="TINYINT" property="clientType" />
    <result column="payment" jdbcType="TINYINT" property="payment" />
    <result column="income" jdbcType="DECIMAL" property="income" />
    <result column="earnest_money" jdbcType="DECIMAL" property="earnestMoney" />
    <result column="is_del" jdbcType="TINYINT" property="isDel" />
    <result column="status" jdbcType="TINYINT" property="status" />
    <result column="create_time" jdbcType="INTEGER" property="createTime" />
    <result column="update_time" jdbcType="INTEGER" property="updateTime" />
  </resultMap>
  <sql id="Base_Column_List">
    id, order_code, skup, uid, client_type, payment, income, earnest_money, is_del, 
    status, create_time, update_time
  </sql>
  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
    select 
    <include refid="Base_Column_List" />
    from seller_order
    where id = #{id,jdbcType=INTEGER}
  </select>


  <select id="selectByOrderCodeUid" resultMap="BaseResultMap">
    select
    <include refid="Base_Column_List" />
    from seller_order
    where order_code = #{orderCode,jdbcType=BIGINT}
    and uid = #{uid,jdbcType=INTEGER}
    limit 1
  </select>


  <select id="selectByOrderCode" resultMap="BaseResultMap">
    select
    <include refid="Base_Column_List" />
    from seller_order
    where order_code = #{orderCode,jdbcType=BIGINT}
    limit 1
  </select>

  <select id="selectBySkup" parameterType="java.lang.Integer" resultMap="BaseResultMap">
    select
    <include refid="Base_Column_List" />
    from seller_order
    where skup = #{skup,jdbcType=INTEGER}
    limit 1
  </select>


  <select id="selectBySkups" resultMap="BaseResultMap">
    select
    <include refid="Base_Column_List" />
    from seller_order
    where skup IN
    <foreach collection="skupList" item="skup" open="(" separator="," close=")">
      #{skup,jdbcType=INTEGER}
    </foreach>
    order by create_time desc
  </select>


  <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.yohoufo.dal.order.model.SellerOrder" useGeneratedKeys="true">
    insert into seller_order (order_code, skup, uid, 
      client_type, payment, income, 
      earnest_money, is_del, status, 
      create_time, update_time)
    values (#{orderCode,jdbcType=BIGINT}, #{skup,jdbcType=INTEGER}, #{uid,jdbcType=INTEGER}, 
      #{clientType,jdbcType=TINYINT}, #{payment,jdbcType=TINYINT}, #{income,jdbcType=DECIMAL}, 
      #{earnestMoney,jdbcType=DECIMAL}, #{isDel,jdbcType=TINYINT}, #{status,jdbcType=TINYINT}, 
      #{createTime,jdbcType=INTEGER}, #{updateTime,jdbcType=INTEGER})
  </insert>


  <insert id="insertBatch" >
    insert into seller_order (order_code, skup, uid,
    payment, income,
    earnest_money, is_del, status,
    create_time)
    values
    <foreach collection="records" item="record" separator=",">
      (#{record.orderCode,jdbcType=BIGINT}, #{record.skup,jdbcType=INTEGER}, #{record.uid,jdbcType=INTEGER},
       #{record.payment,jdbcType=TINYINT}, #{record.income,jdbcType=DECIMAL},
      #{record.earnestMoney,jdbcType=DECIMAL}, #{record.isDel,jdbcType=TINYINT}, #{record.status,jdbcType=TINYINT},
      #{record.createTime,jdbcType=INTEGER})
    </foreach>

  </insert>

  <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.yohoufo.dal.order.model.SellerOrder" useGeneratedKeys="true">
    insert into seller_order
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="orderCode != null">
        order_code,
      </if>
      <if test="skup != null">
        skup,
      </if>
      <if test="uid != null">
        uid,
      </if>
      <if test="clientType != null">
        client_type,
      </if>
      <if test="payment != null">
        payment,
      </if>
      <if test="income != null">
        income,
      </if>
      <if test="earnestMoney != null">
        earnest_money,
      </if>
      <if test="isDel != null">
        is_del,
      </if>
      <if test="status != null">
        status,
      </if>
      <if test="createTime != null">
        create_time,
      </if>
      <if test="updateTime != null">
        update_time,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="orderCode != null">
        #{orderCode,jdbcType=BIGINT},
      </if>
      <if test="skup != null">
        #{skup,jdbcType=INTEGER},
      </if>
      <if test="uid != null">
        #{uid,jdbcType=INTEGER},
      </if>
      <if test="clientType != null">
        #{clientType,jdbcType=TINYINT},
      </if>
      <if test="payment != null">
        #{payment,jdbcType=TINYINT},
      </if>
      <if test="income != null">
        #{income,jdbcType=DECIMAL},
      </if>
      <if test="earnestMoney != null">
        #{earnestMoney,jdbcType=DECIMAL},
      </if>
      <if test="isDel != null">
        #{isDel,jdbcType=TINYINT},
      </if>
      <if test="status != null">
        #{status,jdbcType=TINYINT},
      </if>
      <if test="createTime != null">
        #{createTime,jdbcType=INTEGER},
      </if>
      <if test="updateTime != null">
        #{updateTime,jdbcType=INTEGER},
      </if>
    </trim>
  </insert>

  <update id="updateBySkups" >
    update seller_order
    <set>
      <if test="condition.status != null">
        status = #{condition.status,jdbcType=TINYINT},
      </if>

      <if test="condition.income != null">
        income = #{condition.income,jdbcType=DECIMAL},
      </if>
      <if test="condition.earnestMoney != null">
        earnest_money = #{condition.earnestMoney,jdbcType=DECIMAL},
      </if>

      <if test="condition.updateTime != null">
        update_time = #{condition.updateTime,jdbcType=INTEGER},
      </if>
    </set>
    where skup in
    <foreach collection="skupList" item="skup" open="(" close=")" separator=",">
      #{skup,jdbcType=INTEGER}
    </foreach>
  </update>


  <update id="updateByPrimaryKeySelective" parameterType="com.yohoufo.dal.order.model.SellerOrder">
    update seller_order
    <set>
      <if test="orderCode != null">
        order_code = #{orderCode,jdbcType=BIGINT},
      </if>
      <if test="skup != null">
        skup = #{skup,jdbcType=INTEGER},
      </if>
      <if test="uid != null">
        uid = #{uid,jdbcType=INTEGER},
      </if>
      <if test="clientType != null">
        client_type = #{clientType,jdbcType=TINYINT},
      </if>
      <if test="payment != null">
        payment = #{payment,jdbcType=TINYINT},
      </if>
      <if test="income != null">
        income = #{income,jdbcType=DECIMAL},
      </if>
      <if test="earnestMoney != null">
        earnest_money = #{earnestMoney,jdbcType=DECIMAL},
      </if>
      <if test="isDel != null">
        is_del = #{isDel,jdbcType=TINYINT},
      </if>
      <if test="status != null">
        status = #{status,jdbcType=TINYINT},
      </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.yohoufo.dal.order.model.SellerOrder">
    update seller_order
    set order_code = #{orderCode,jdbcType=BIGINT},
      skup = #{skup,jdbcType=INTEGER},
      uid = #{uid,jdbcType=INTEGER},
      client_type = #{clientType,jdbcType=TINYINT},
      payment = #{payment,jdbcType=TINYINT},
      income = #{income,jdbcType=DECIMAL},
      earnest_money = #{earnestMoney,jdbcType=DECIMAL},
      is_del = #{isDel,jdbcType=TINYINT},
      status = #{status,jdbcType=TINYINT},
      create_time = #{createTime,jdbcType=INTEGER},
      update_time = #{updateTime,jdbcType=INTEGER}
    where id = #{id,jdbcType=INTEGER}
  </update>

  <update id="updateByOrderCode" parameterType="com.yohoufo.dal.order.model.SellerOrder">
    update seller_order
    set
    status = #{status,jdbcType=INTEGER},
    update_time = #{updateTime,jdbcType=INTEGER}
    where uid = #{uid,jdbcType=INTEGER}
    and order_code = #{orderCode,jdbcType=BIGINT}
    and status = #{exceptStatus,jdbcType=INTEGER}

  </update>


  <select id="selectOrderNumByUid" resultType="java.lang.Integer">
    select count(*) from seller_order where uid = #{uid,jdbcType=INTEGER} and is_del = 1
    and status in
    <foreach collection="statusList" item="status" open="(" close=")" separator=",">
      #{status,jdbcType=INTEGER}
  </foreach>
  </select>

  <update id="batchDelete">
    update seller_order set is_del = 0
    where skup in
    <foreach collection="skups" item="skup" open="(" close=")" separator=",">
      #{skup,jdbcType=INTEGER}
    </foreach>
  </update>
</mapper>