zhubaomin
6 天以前 ee1800e3988e4913f5328c2cba07735fb4d06eff
pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeRechargeHistoryMapper.xml
@@ -5,8 +5,8 @@
    <!--@mbg.generated-->
    <!--@Table se_recharge_history-->
    <id column="id" jdbcType="BIGINT" property="id" />
    <result column="cardNum" jdbcType="VARCHAR" property="cardnum" />
    <result column="clientNum" jdbcType="VARCHAR" property="clientnum" />
    <result column="cardId" jdbcType="BIGINT" property="cardid" />
    <result column="clientId" jdbcType="BIGINT" property="clientid" />
    <result column="money" jdbcType="FLOAT" property="money" />
    <result column="amount" jdbcType="FLOAT" property="amount" />
    <result column="gift" jdbcType="FLOAT" property="gift" />
@@ -16,11 +16,13 @@
    <result column="remarks" jdbcType="VARCHAR" property="remarks" />
    <result column="operator" jdbcType="BIGINT" property="operator" />
    <result column="operateDt" jdbcType="TIMESTAMP" property="operatedt" />
    <result column="operate_valid" jdbcType="TINYINT" property="operateValid" />
    <result column="order_no" jdbcType="VARCHAR" property="orderNo" />
  </resultMap>
  <sql id="Base_Column_List">
    <!--@mbg.generated-->
    id, cardNum, clientNum, money, amount, gift, afterRecharge, paymentId, price, remarks,
    `operator`, operateDt
    id, cardId, clientId, money, amount, gift, afterRecharge, paymentId, price, remarks,
    `operator`, operateDt, operate_valid, order_no
  </sql>
  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
    <!--@mbg.generated-->
@@ -34,28 +36,31 @@
    delete from se_recharge_history
    where id = #{id,jdbcType=BIGINT}
  </delete>
  <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeRechargeHistory">
  <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoSe.SeRechargeHistory">
    <!--@mbg.generated-->
    insert into se_recharge_history (id, cardNum, clientNum, money,
      amount, gift, afterRecharge,
    insert into se_recharge_history (id, cardId, clientId,
      money, amount, gift, afterRecharge,
      paymentId, price, remarks, 
      `operator`, operateDt)
    values (#{id,jdbcType=BIGINT}, #{cardnum,jdbcType=VARCHAR}, #{clientnum,jdbcType=VARCHAR}, #{money,jdbcType=FLOAT},
      #{amount,jdbcType=FLOAT}, #{gift,jdbcType=FLOAT}, #{afterrecharge,jdbcType=FLOAT},
      `operator`, operateDt, operate_valid,
      order_no)
    values (#{id,jdbcType=BIGINT}, #{cardid,jdbcType=BIGINT}, #{clientid,jdbcType=BIGINT},
      #{money,jdbcType=FLOAT}, #{amount,jdbcType=FLOAT}, #{gift,jdbcType=FLOAT}, #{afterrecharge,jdbcType=FLOAT},
      #{paymentid,jdbcType=BIGINT}, #{price,jdbcType=FLOAT}, #{remarks,jdbcType=VARCHAR}, 
      #{operator,jdbcType=BIGINT}, #{operatedt,jdbcType=TIMESTAMP})
      #{operator,jdbcType=BIGINT}, #{operatedt,jdbcType=TIMESTAMP}, #{operateValid,jdbcType=TINYINT},
      #{orderNo,jdbcType=VARCHAR})
  </insert>
  <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeRechargeHistory" useGeneratedKeys="true">
  <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeRechargeHistory">
    <!--@mbg.generated-->
    insert into se_recharge_history
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="cardnum != null">
        cardNum,
      <if test="id != null">
        id,
      </if>
      <if test="clientnum != null">
        clientNum,
      <if test="cardid != null">
        cardId,
      </if>
      <if test="clientid != null">
        clientId,
      </if>
      <if test="money != null">
        money,
@@ -84,13 +89,22 @@
      <if test="operatedt != null">
        operateDt,
      </if>
      <if test="operateValid != null">
        operate_valid,
      </if>
      <if test="orderNo != null">
        order_no,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="cardnum != null">
        #{cardnum,jdbcType=VARCHAR},
      <if test="id != null">
        #{id,jdbcType=BIGINT},
      </if>
      <if test="clientnum != null">
        #{clientnum,jdbcType=VARCHAR},
      <if test="cardid != null">
        #{cardid,jdbcType=BIGINT},
      </if>
      <if test="clientid != null">
        #{clientid,jdbcType=BIGINT},
      </if>
      <if test="money != null">
        #{money,jdbcType=FLOAT},
@@ -119,17 +133,23 @@
      <if test="operatedt != null">
        #{operatedt,jdbcType=TIMESTAMP},
      </if>
      <if test="operateValid != null">
        #{operateValid,jdbcType=TINYINT},
      </if>
      <if test="orderNo != null">
        #{orderNo,jdbcType=VARCHAR},
      </if>
    </trim>
  </insert>
  <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeRechargeHistory">
    <!--@mbg.generated-->
    update se_recharge_history
    <set>
      <if test="cardnum != null">
        cardNum = #{cardnum,jdbcType=VARCHAR},
      <if test="cardid != null">
        cardId = #{cardid,jdbcType=BIGINT},
      </if>
      <if test="clientnum != null">
        clientNum = #{clientnum,jdbcType=VARCHAR},
      <if test="clientid != null">
        clientId = #{clientid,jdbcType=BIGINT},
      </if>
      <if test="money != null">
        money = #{money,jdbcType=FLOAT},
@@ -158,14 +178,20 @@
      <if test="operatedt != null">
        operateDt = #{operatedt,jdbcType=TIMESTAMP},
      </if>
      <if test="operateValid != null">
        operate_valid = #{operateValid,jdbcType=TINYINT},
      </if>
      <if test="orderNo != null">
        order_no = #{orderNo,jdbcType=VARCHAR},
      </if>
    </set>
    where id = #{id,jdbcType=BIGINT}
  </update>
  <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoSe.SeRechargeHistory">
    <!--@mbg.generated-->
    update se_recharge_history
    set cardNum = #{cardnum,jdbcType=VARCHAR},
      clientNum = #{clientnum,jdbcType=VARCHAR},
    set cardId = #{cardid,jdbcType=BIGINT},
      clientId = #{clientid,jdbcType=BIGINT},
      money = #{money,jdbcType=FLOAT},
      amount = #{amount,jdbcType=FLOAT},
      gift = #{gift,jdbcType=FLOAT},
@@ -174,7 +200,59 @@
      price = #{price,jdbcType=FLOAT},
      remarks = #{remarks,jdbcType=VARCHAR},
      `operator` = #{operator,jdbcType=BIGINT},
      operateDt = #{operatedt,jdbcType=TIMESTAMP}
      operateDt = #{operatedt,jdbcType=TIMESTAMP},
      operate_valid = #{operateValid,jdbcType=TINYINT},
      order_no = #{orderNo,jdbcType=VARCHAR}
    where id = #{id,jdbcType=BIGINT}
  </update>
  <!--依据水卡ID将最后一条无效状态的充值历史记录改为有效-->
  <update id="turnRechargeHistoryValidByCardId">
    UPDATE se_recharge_history
    SET operate_valid = 2
    WHERE id = (
    SELECT id FROM (
    SELECT id
    FROM se_recharge_history
    WHERE operate_valid = 1 AND cardId = #{cardId}
    ORDER BY id DESC
    LIMIT 1) AS subquery
    );
  </update>
  <!--充值机用根据订单号将充值历史记录改为有效-->
  <update id="turnRechargeHistoryValidByOrderNumber">
    UPDATE se_recharge_history
    SET operate_valid = 2
    WHERE operate_valid = 1 AND order_no = #{orderNumber}
  </update>
  <!-- /////////////////////////////////// -->
  <!-- 统计相关                              -->
  <!-- /////////////////////////////////// -->
  <select id="statisticsByIc" resultType="com.dy.pipIrrGlobal.voSt.VoIcRechargeStatistics">
    select clientId as clientId,
    cardId as cardId,
    sum(amount) as amount,
    sum(gift) as gift,
    count(*) as times
    from se_recharge_history
    where operate_valid = 2
    and id <![CDATA[>=]]> #{startId, jdbcType=BIGINT}
    and id <![CDATA[<]]> #{endId, jdbcType=BIGINT}
    group by clientId, cardId
  </select>
  <select id="statisticsByClient" resultType="com.dy.pipIrrGlobal.voSt.VoClientRechargeStatistics">
    select clientId as clientId,
    sum(amount) as amount,
    sum(gift) as gift,
    count(*) as times
    from se_recharge_history
    where operate_valid = 2
    and id <![CDATA[>=]]> #{startId, jdbcType=BIGINT}
    and id <![CDATA[<]]> #{endId, jdbcType=BIGINT}
    group by clientId
  </select>
</mapper>