From db6da36b94e1e43096a818052ee65dbfcd5e6d98 Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期四, 12 十二月 2024 17:54:01 +0800
Subject: [PATCH] add: 供应商子账号5
---
src/main/resources/mapper/wallet/WalletReduceMapper.xml | 144 +++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 123 insertions(+), 21 deletions(-)
diff --git a/src/main/resources/mapper/wallet/WalletReduceMapper.xml b/src/main/resources/mapper/wallet/WalletReduceMapper.xml
index 3501285..de9febc 100644
--- a/src/main/resources/mapper/wallet/WalletReduceMapper.xml
+++ b/src/main/resources/mapper/wallet/WalletReduceMapper.xml
@@ -6,57 +6,115 @@
<select id="getPage" resultType="com.mzl.flower.dto.response.wallet.WalletReduceVO">
select *
from (
- SELECT si.id as id,si.fee_supplier as fee ,si.audit_time as audit_time,'sale' as type,'售后扣款' as type_name,o.order_no as order_no,oi.supplier_id as supplier_id
+ SELECT si.id as id
+ ,si.fee_supplier as fee
+ ,si.audit_time as audit_time
+ ,o.payment_time as payment_time
+ ,'sale' as type,'售后扣款' as type_name
+ ,o.order_no as order_no
+ ,oi.supplier_id as supplier_id
FROM t_order_item_sales si
join t_order_item oi on oi.id = si.order_item_id
left join t_order o on oi.order_id=o.id
- where si.deleted=0 and si.status='AGREED' and oi.deleted=0 and o.deleted=0
+ where o.deleted=0
+ and o.status_backend not in ('PENDING','CANCEL','REFUND')
+ and si.deleted=0 and si.status='AGREED' and oi.deleted=0 and o.deleted=0
and o.payment_time >= #{dto.walletOnlineTime}
<if test="dto.supplierId != null">
and oi.supplier_id = #{dto.supplierId}
</if>
+<!-- <if test="dto.startDate != null">-->
+<!-- and DATE_FORMAT(si.audit_time, '%Y-%m-%d') >= #{dto.startDate}-->
+<!-- </if>-->
+<!-- <if test="dto.endDate != null">-->
+<!-- and DATE_FORMAT(si.audit_time, '%Y-%m-%d') <= #{dto.endDate}-->
+<!-- </if>-->
<if test="dto.startDate != null">
- and DATE_FORMAT(si.audit_time, '%Y-%m-%d') >= #{dto.startDate}
+ and DATE_FORMAT(o.payment_time, '%Y-%m-%d') >= #{dto.startDate}
</if>
<if test="dto.endDate != null">
- and DATE_FORMAT(si.audit_time, '%Y-%m-%d') <= #{dto.endDate}
+ and DATE_FORMAT(o.payment_time, '%Y-%m-%d') <= #{dto.endDate}
</if>
union
- select oic.id as id ,oic.deduct_amount as fee,oic.audit_time as audit_time,oic.type as type,check_type.label as type_name,o.order_no as order_no,oi.supplier_id as supplier_id
+ select oic.id as id ,
+ oic.num*oi.supplier_price AS fee,
+ oic.audit_time AS audit_time,
+ o.payment_time as payment_time,
+ oic.type as type,
+ check_type.label as type_name,
+ o.order_no as order_no,
+ oi.supplier_id as supplier_id
from t_order_item_check oic
left join t_order_item oi
on oic.order_item_id=oi.id
left join t_order o
on oi.order_id=o.id
left join t_code_value check_type
- on check_type.value=oic.type and check_type.type_code='CHECK_TYPE'
- where oic.deleted=0 and oic.audit_status='AGREED' and oi.deleted=0 and o.deleted=0
+ on check_type.value=oic.type and check_type.type_code='CHECK_TYPE'
+ where o.deleted=0
+ and oic.type in ('lack','replace')
+ and o.status_backend not in ('PENDING','CANCEL','REFUND')
+ and oic.deleted=0 and oic.audit_status='AGREED' and oi.deleted=0 and o.deleted=0
and o.payment_time >= #{dto.walletOnlineTime}
<if test="dto.supplierId != null">
and oi.supplier_id = #{dto.supplierId}
</if>
+<!-- <if test="dto.startDate != null">-->
+<!-- and DATE_FORMAT(oic.audit_time, '%Y-%m-%d') >= #{dto.startDate}-->
+<!-- </if>-->
+<!-- <if test="dto.endDate != null">-->
+<!-- and DATE_FORMAT(oic.audit_time, '%Y-%m-%d') <= #{dto.endDate}-->
+<!-- </if>-->
<if test="dto.startDate != null">
- and DATE_FORMAT(oic.audit_time, '%Y-%m-%d') >= #{dto.startDate}
+ and DATE_FORMAT(o.payment_time, '%Y-%m-%d') >= #{dto.startDate}
</if>
<if test="dto.endDate != null">
- and DATE_FORMAT(oic.audit_time, '%Y-%m-%d') <= #{dto.endDate}
+ and DATE_FORMAT(o.payment_time, '%Y-%m-%d') <= #{dto.endDate}
</if>
+ union
+ select oic.id as id ,
+ oic.deduct_amount AS fee,
+ oic.audit_time AS audit_time,
+ o.payment_time as payment_time,
+ oic.type as type,
+ check_type.label as type_name,
+ o.order_no as order_no,
+ oi.supplier_id as supplier_id
+ from t_order_item_check oic
+ left join t_order_item oi
+ on oic.order_item_id=oi.id
+ left join t_order o
+ on oi.order_id=o.id
+ left join t_code_value check_type
+ on check_type.value=oic.type and check_type.type_code='CHECK_TYPE'
+ where o.deleted=0
+ and oic.type in ('reduce')
+ and o.status_backend not in ('PENDING','CANCEL','REFUND')
+ and oic.deleted=0 and oic.audit_status='AGREED' and oi.deleted=0 and o.deleted=0
+ and o.payment_time >= #{dto.walletOnlineTime}
+ <if test="dto.supplierId != null">
+ and oi.supplier_id = #{dto.supplierId}
+ </if>
+ <!-- <if test="dto.startDate != null">-->
+ <!-- and DATE_FORMAT(oic.audit_time, '%Y-%m-%d') >= #{dto.startDate}-->
+ <!-- </if>-->
+ <!-- <if test="dto.endDate != null">-->
+ <!-- and DATE_FORMAT(oic.audit_time, '%Y-%m-%d') <= #{dto.endDate}-->
+ <!-- </if>-->
+ <if test="dto.startDate != null">
+ and DATE_FORMAT(o.payment_time, '%Y-%m-%d') >= #{dto.startDate}
+ </if>
+ <if test="dto.endDate != null">
+ and DATE_FORMAT(o.payment_time, '%Y-%m-%d') <= #{dto.endDate}
+ </if>
+
) t
order by audit_time desc
</select>
- <select id="getCheckReduceAmount" resultType="java.math.BigDecimal">
- SELECT sum(si.fee_supplier)
- FROM t_order_item_sales si
- join t_order_item oi on oi.id = si.order_item_id
- left join t_order o on oi.order_id=o.id
- where si.deleted=0 and si.status='AGREED' and oi.deleted=0 and o.deleted=0
- and oi.supplier_id = #{dto.supplierId}
- and o.payment_time >= #{dto.startTime}
- </select>
- <select id="getSaleReduceAmount" resultType="java.math.BigDecimal">
- select sum(oic.deduct_amount)
+ <select id="getCheckLackReplaceAmount" resultType="java.math.BigDecimal">
+ select sum(oic.num*oi.supplier_price)
from t_order_item_check oic
left join t_order_item oi
on oic.order_item_id=oi.id
@@ -64,8 +122,52 @@
on oi.order_id=o.id
left join t_code_value check_type
on check_type.value=oic.type and check_type.type_code='CHECK_TYPE'
- where oic.deleted=0 and oic.audit_status='AGREED' and oi.deleted=0 and o.deleted=0
+ where o.deleted=0
+ and oic.type in ('lack','replace')
+ and o.status_backend not in ('PENDING','CANCEL','REFUND')
+ and oic.deleted=0 and oic.audit_status='AGREED' and oi.deleted=0 and o.deleted=0
and oi.supplier_id = #{dto.supplierId}
and o.payment_time >= #{dto.startTime}
</select>
+ <select id="getSaleReduceAmount" resultType="java.math.BigDecimal">
+
+ SELECT sum(si.fee_supplier)
+ FROM t_order_item_sales si
+ join t_order_item oi on oi.id = si.order_item_id
+ 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 si.deleted=0 and si.status='AGREED' and oi.deleted=0 and o.deleted=0
+ and oi.supplier_id = #{dto.supplierId}
+ and o.payment_time >= #{dto.startTime}
+ </select>
+
+ <select id="getStationFeeAmount" resultType="java.math.BigDecimal">
+ SELECT sum(ois.station_fee)
+ FROM t_order_item_settlement ois
+ join t_order_item oi on oi.id = ois.order_item_id
+ 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 ois.deleted=0 and oi.deleted=0
+ and oi.supplier_id = #{dto.supplierId}
+ and o.payment_time >= #{dto.startTime}
+ </select>
+ <select id="getCheckReduceAmount" resultType="java.math.BigDecimal">
+ select sum(oic.deduct_amount)
+ from t_order_item_check oic
+ left join t_order_item oi
+ on oic.order_item_id=oi.id
+ left join t_order o
+ on oi.order_id=o.id
+ left join t_code_value check_type
+ on check_type.value=oic.type and check_type.type_code='CHECK_TYPE'
+ where o.deleted=0
+ and oic.type in ('reduce')
+ and o.status_backend not in ('PENDING','CANCEL','REFUND')
+ and oic.deleted=0 and oic.audit_status='AGREED' and oi.deleted=0 and o.deleted=0
+ and oi.supplier_id = #{dto.supplierId}
+ and o.payment_time >= #{dto.startTime}
+
+ </select>
</mapper>
--
Gitblit v1.9.3