|  |  | 
 |  |  |     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> |