|  |  |  | 
|---|
|  |  |  | 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, | 
|---|
|  |  |  | 
|---|
|  |  |  | 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} | 
|---|
|  |  |  | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | </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> | 
|---|