pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
@@ -386,7 +386,7 @@
    WHEN 2 THEN '充值'
    WHEN 3 THEN '销卡'
    WHEN 5 THEN '补扣'
    WHEN 10 THEN '反写'
<!--    WHEN 6 THEN '返还'-->
    END) AS operateType,
    (IFNULL(ope.trade_amount,0.00) + IFNULL(ope.card_cost,0.00)) AS tradeAmount,
    IFNULL(ope.trade_amount,0.00) AS waterCost,
@@ -411,7 +411,7 @@
    LEFT JOIN se_payment_method pay ON ope.payment_id = pay.id
    LEFT JOIN ba_user us ON ope.operator = us.id
    <where>
      AND ope.operate_type IN(1,2,3,5,10)
      AND ope.operate_type IN(1,2,3,5)
      AND ope.operate_valid = 2
      <if test = "villageId != null and villageId > 0">
        AND cli.villageId = #{villageId}
@@ -1083,9 +1083,64 @@
    );
  </update>
  <!--充值机用根据订单号将操作记录改为有效-->
  <update id="turnOperateValidByOrderNumber">
    UPDATE se_card_operate
    SET operate_valid = 2
    WHERE operate_valid = 1 AND order_no = #{orderNumber}
  </update>
  <!--充值机用获取充值操作后新的余额及充值时间-->
  <select id="getBalanceAfterRecharge" resultType="com.dy.pipIrrGlobal.voSe.VoAfterRecharge">
    SELECT
        (money + trade_amount + gift) AS balanceAfterRecharge,
        operate_dt AS operateTime
    FROM se_card_operate
    WHERE order_no = #{orderNumber}
  </select>
  <!--充值机用根据水卡ID获取同步充值记录数量-->
  <select id="getPlusRechargeCount" resultType="java.lang.Integer">
    SELECT COUNT(*)
    FROM se_card_operate
    WHERE operate_type = 2 AND order_no = CONCAT((SELECT order_no FROM se_card_operate WHERE operate_type = 1 AND card_id = #{cardId}),'p')
  </select>
  <!--根据操作类型、水卡ID获取获取最后一条记录-->
  <select id="getCardOperate" resultType="com.dy.pipIrrGlobal.pojoSe.SeCardOperate">
    SELECT * FROM se_card_operate
    WHERE operate_type = #{operateType} AND card_id = #{cardId} ORDER BY operate_dt DESC LIMIT 1
  </select>
  <!--充值机用根据订单号获取非交易金额-->
  <select id="getNoTradeAmount" resultType="java.lang.Float">
    SELECT
      IFNULL(SUM(trade_amount), 0) AS noTradeAmount
    FROM se_card_operate
    WHERE order_no = #{orderNumber}
  </select>
  <!--充值机用根据订单号获取操作时间-->
  <select id="getOperateTime" resultType="java.util.Date">
    SELECT
      operate_dt AS operateTime
    FROM se_card_operate
    WHERE order_no = #{orderNumber}
    ORDER BY operate_dt DESC
    LIMIT 1
  </select>
  <!--充值机使用根据订单号获取操作记录-->
  <select id="getCardOperateByOrderNumber" resultType="com.dy.pipIrrGlobal.voSe.VoRepaySupplementSimple">
    SELECT
        money,
        refund_amount AS refundAmount,
        operate_dt AS operateTime
    FROM se_card_operate
    WHERE order_no = #{orderNumber}
    ORDER BY operate_dt DESC
    LIMIT 1
  </select>
</mapper>