ExpressInfoMapper.xml 6.77 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.ExpressInfoMapper">
  <resultMap id="BaseResultMap" type="com.yohoufo.dal.order.model.ExpressInfo">
    <id column="id" jdbcType="INTEGER" property="id" />
    <result column="uid" jdbcType="INTEGER" property="uid" />
    <result column="order_code" jdbcType="BIGINT" property="orderCode" />
    <result column="waybill_code" jdbcType="VARCHAR" property="waybillCode" />
    <result column="accept_address" jdbcType="VARCHAR" property="acceptAddress" />
    <result column="accept_remark" jdbcType="VARCHAR" property="acceptRemark" />
    <result column="logistics_type" jdbcType="INTEGER" property="logisticsType" />
    <result column="create_time" jdbcType="INTEGER" property="createTime" />
    <result column="express_type" jdbcType="TINYINT" property="expressType" />
    <result column="state" jdbcType="INTEGER" property="state" />
  </resultMap>
  <sql id="Base_Column_List">
    id, uid, order_code, waybill_code, accept_address, accept_remark, logistics_type, 
    create_time, express_type, state
  </sql>
  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
    select 
    <include refid="Base_Column_List" />
    from express_info
    where id = #{id,jdbcType=INTEGER}
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
    delete from express_info
    where id = #{id,jdbcType=INTEGER}
  </delete>
  <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.yohoufo.dal.order.model.ExpressInfo" useGeneratedKeys="true">
    insert into express_info (uid, order_code, waybill_code, 
      accept_address, accept_remark, logistics_type, 
      create_time, express_type, state
      )
    values (#{uid,jdbcType=INTEGER}, #{orderCode,jdbcType=BIGINT}, #{waybillCode,jdbcType=VARCHAR}, 
      #{acceptAddress,jdbcType=VARCHAR}, #{acceptRemark,jdbcType=VARCHAR}, #{logisticsType,jdbcType=INTEGER}, 
      #{createTime,jdbcType=INTEGER}, #{expressType,jdbcType=TINYINT}, #{state,jdbcType=INTEGER}
      )
  </insert>
  <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.yohoufo.dal.order.model.ExpressInfo" useGeneratedKeys="true">
    insert into express_info
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="uid != null">
        uid,
      </if>
      <if test="orderCode != null">
        order_code,
      </if>
      <if test="waybillCode != null">
        waybill_code,
      </if>
      <if test="acceptAddress != null">
        accept_address,
      </if>
      <if test="acceptRemark != null">
        accept_remark,
      </if>
      <if test="logisticsType != null">
        logistics_type,
      </if>
      <if test="createTime != null">
        create_time,
      </if>
      <if test="expressType != null">
        express_type,
      </if>
      <if test="state != null">
        state,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="uid != null">
        #{uid,jdbcType=INTEGER},
      </if>
      <if test="orderCode != null">
        #{orderCode,jdbcType=BIGINT},
      </if>
      <if test="waybillCode != null">
        #{waybillCode,jdbcType=VARCHAR},
      </if>
      <if test="acceptAddress != null">
        #{acceptAddress,jdbcType=VARCHAR},
      </if>
      <if test="acceptRemark != null">
        #{acceptRemark,jdbcType=VARCHAR},
      </if>
      <if test="logisticsType != null">
        #{logisticsType,jdbcType=INTEGER},
      </if>
      <if test="createTime != null">
        #{createTime,jdbcType=INTEGER},
      </if>
      <if test="expressType != null">
        #{expressType,jdbcType=TINYINT},
      </if>
      <if test="state != null">
        #{state,jdbcType=INTEGER},
      </if>
    </trim>
  </insert>
  <update id="updateByPrimaryKeySelective" parameterType="com.yohoufo.dal.order.model.ExpressInfo">
    update express_info
    <set>
      <if test="uid != null">
        uid = #{uid,jdbcType=INTEGER},
      </if>
      <if test="orderCode != null">
        order_code = #{orderCode,jdbcType=BIGINT},
      </if>
      <if test="waybillCode != null">
        waybill_code = #{waybillCode,jdbcType=VARCHAR},
      </if>
      <if test="acceptAddress != null">
        accept_address = #{acceptAddress,jdbcType=VARCHAR},
      </if>
      <if test="acceptRemark != null">
        accept_remark = #{acceptRemark,jdbcType=VARCHAR},
      </if>
      <if test="logisticsType != null">
        logistics_type = #{logisticsType,jdbcType=INTEGER},
      </if>
      <if test="createTime != null">
        create_time = #{createTime,jdbcType=INTEGER},
      </if>
      <if test="expressType != null">
        express_type = #{expressType,jdbcType=TINYINT},
      </if>
      <if test="state != null">
        state = #{state,jdbcType=INTEGER},
      </if>
    </set>
    where id = #{id,jdbcType=INTEGER}
  </update>
  <update id="updateByPrimaryKey" parameterType="com.yohoufo.dal.order.model.ExpressInfo">
    update express_info
    set uid = #{uid,jdbcType=INTEGER},
      order_code = #{orderCode,jdbcType=BIGINT},
      waybill_code = #{waybillCode,jdbcType=VARCHAR},
      accept_address = #{acceptAddress,jdbcType=VARCHAR},
      accept_remark = #{acceptRemark,jdbcType=VARCHAR},
      logistics_type = #{logisticsType,jdbcType=INTEGER},
      create_time = #{createTime,jdbcType=INTEGER},
      express_type = #{expressType,jdbcType=TINYINT},
      state = #{state,jdbcType=INTEGER}
    where id = #{id,jdbcType=INTEGER}
  </update>

  <select id="queryExpressInfo" resultMap="BaseResultMap">
    SELECT id, uid, order_code, waybill_code, accept_address, accept_remark, logistics_type, create_time, express_type, state
    FROM express_info
    where uid = #{uid} and order_code = #{orderCode} and express_type = #{expressType}
    ORDER BY create_time DESC
  </select>

  <select id="queryFirstExpressInfo" resultMap="BaseResultMap">
    SELECT <include refid="Base_Column_List" />
    FROM express_info
    where uid = #{uid} and order_code = #{orderCode} and waybill_code = #{waybillCode}
    limit 1
  </select>

  <select id="selectByOrderCodeAndStatesAndUidAndExpressType" resultMap="BaseResultMap">
    SELECT id, uid, order_code, waybill_code, accept_address, accept_remark, logistics_type, create_time, express_type, state
    FROM express_info
    where uid = #{uid} and order_code = #{orderCode} and express_type = #{expressType} and
    <foreach collection="states" item="state" separator="," open="(" close=")" >
      #{state,jdbcType=INTEGER}
    </foreach>
    ORDER BY create_time DESC
  </select>
</mapper>