From 5ff8fb8bd9d298def47437b24e77c8879cdc37d2 Mon Sep 17 00:00:00 2001 From: 陶杰 <1378534974@qq.com> Date: 星期四, 14 十一月 2024 09:36:39 +0800 Subject: [PATCH] 1.定时任务-待付款-15分钟 2.领券中心:根据领取次数判断是否已领取 3.付款:优惠券自动领取最大优惠券 --- src/main/resources/mapper/wallet/WalletMapper.xml | 87 +++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 87 insertions(+), 0 deletions(-) diff --git a/src/main/resources/mapper/wallet/WalletMapper.xml b/src/main/resources/mapper/wallet/WalletMapper.xml index d33cf32..3e88bfa 100644 --- a/src/main/resources/mapper/wallet/WalletMapper.xml +++ b/src/main/resources/mapper/wallet/WalletMapper.xml @@ -19,6 +19,93 @@ <result column="settling_amount" property="settlingAmount" /> <result column="total_deduction" property="totalDeduction" /> <result column="total_transaction_amount" property="totalTransactionAmount" /> + <result column="settled_amount" property="settledAmount" /> + </resultMap> + <select id="getWaittingSettlementAmount" resultType="java.math.BigDecimal"> + <include refid="supplier_settlement_amount_timing3"></include> + </select> + + <!-- 总交易额--> + <select id="getSupplierTotalTransactionAmount" resultType="java.math.BigDecimal"> + select IFNULL(sum(oi.supplier_price*oi.num),0) as cur_mon_supplier_amount + from t_order_item oi + left join t_order o + on oi.order_id = o.id + where o.deleted=0 + and o.status_backend not in ('PENDING','CANCEL','REFUND') + and oi.supplier_id = #{dto.supplierId} + and o.payment_time > #{dto.startTime} + </select> + + + <!-- 待结算--> + <sql id="supplier_settlement_amount_timing"> + select + sum(t2.final_price) as settlement_amount + from( + select + t.order_item_id, + t.supplier_id, + t.supplier_price, + t.supplier_price*(t.num-t.replace_num-t.lack_num )- t.deduct_amount -t.fee_supplier-t.station_fee as final_price, + t.fee_supplier, + t.station_fee + from ( + SELECT + o.order_no, + oi.id as order_item_id, + oi.supplier_id, + o.payment_time, + oi.supplier_price, + oi.num as num, + IFNULL( (select oic.deduct_amount from t_order_item_check oic where oic.deleted=0 and oic.order_item_id = oi.id and oic.type = 'reduce' and oic.audit_status='AGREED'),0) as deduct_amount, + IFNULL( (select oic.num from t_order_item_check oic where oic.deleted=0 and oic.order_item_id = oi.id and oic.type = 'replace' and oic.audit_status='AGREED'),0) as replace_num, + IFNULL( (select oic.num from t_order_item_check oic where oic.deleted=0 and oic.order_item_id = oi.id and oic.type = 'lack' and oic.audit_status='AGREED'),0) as lack_num, + IFNULL( (select ois.fee_supplier from t_order_item_sales ois where ois.deleted=0 and ois.order_item_id = oi.id and ois.status='AGREED'),0) as fee_supplier, + IFNULL( (select ois.station_fee from t_order_item_settlement ois where ois.deleted=0 and ois.order_item_id = oi.id ),0) as station_fee + FROM t_order_item oi + LEFT JOIN t_order o ON oi.order_id = o.id + WHERE o.deleted=0 + and o.status_backend not in ('PENDING','CANCEL','REFUND','COMPLETED','EVALUATE') + and oi.supplier_id = #{dto.supplierId} + ) t + ) t2 + + + </sql> + + <sql id="supplier_settlement_amount_timing3"> + select + sum(t2.final_price) as settlement_amount + from( + select + t.order_item_id, + t.supplier_id, + t.supplier_price, + t.supplier_price*(t.num-t.replace_num-t.lack_num )- t.deduct_amount -t.fee_supplier-t.station_fee as final_price, + t.fee_supplier, + t.station_fee + from ( + SELECT + o.order_no, + oi.id as order_item_id, + oi.supplier_id, + o.payment_time, + oi.supplier_price, + oi.num as num, + IFNULL( (select oic.deduct_amount from t_order_item_check oic where oic.deleted=0 and oic.order_item_id = oi.id and oic.type = 'reduce' and oic.audit_status='AGREED'),0) as deduct_amount, + IFNULL( (select oic.num from t_order_item_check oic where oic.deleted=0 and oic.order_item_id = oi.id and oic.type = 'replace' and oic.audit_status='AGREED'),0) as replace_num, + IFNULL( (select oic.num from t_order_item_check oic where oic.deleted=0 and oic.order_item_id = oi.id and oic.type = 'lack' and oic.audit_status='AGREED'),0) as lack_num, + IFNULL( (select ois.fee_supplier from t_order_item_sales ois where ois.deleted=0 and ois.order_item_id = oi.id and ois.status='AGREED'),0) as fee_supplier, + IFNULL( (select ois.station_fee from t_order_item_settlement ois where ois.deleted=0 and ois.order_item_id = oi.id ),0) as station_fee + FROM t_order_item oi + LEFT JOIN t_order o ON oi.order_id = o.id + WHERE o.deleted=0 + and o.status_backend not in ('PENDING','CANCEL','REFUND','COMPLETED') + and oi.supplier_id = #{dto.supplierId} + ) t + ) t2 + </sql> </mapper> -- Gitblit v1.9.3