From 58a8acceb63d52377da4b837e859f2e03d2bce1b Mon Sep 17 00:00:00 2001
From: gongzuming <gongzuming>
Date: 星期一, 14 十月 2024 08:44:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master-v3' into master-v2
---
src/main/resources/mapper/report/OrderReportMapper.xml | 73 +++++++++++++++++++++++++++---------
1 files changed, 54 insertions(+), 19 deletions(-)
diff --git a/src/main/resources/mapper/report/OrderReportMapper.xml b/src/main/resources/mapper/report/OrderReportMapper.xml
index e72d449..e456882 100644
--- a/src/main/resources/mapper/report/OrderReportMapper.xml
+++ b/src/main/resources/mapper/report/OrderReportMapper.xml
@@ -310,9 +310,9 @@
IFNULL(ois.lack_fee_supplier,0) as lack_fee_supplier,
IFNULL(ois.replace_fee,0) as replace_fee
- ,IFNULL( (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'replace'),0) as replace_num
- ,IFNULL( (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'reduce'),0) as reduce_num
- ,IFNULL( (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'lack'),0) as lack_num
+ ,IFNULL( (select oic.num from t_order_item_check oic where 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.order_item_id = oi.id and oic.type = 'reduce' and oic.audit_status='AGREED'),0) as reduce_num
+ ,IFNULL( (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'lack' and oic.audit_status='AGREED'),0) as lack_num
FROM t_order o
left join t_order_item oi
on oi.order_id=o.id
@@ -401,9 +401,9 @@
IFNULL(ois.lack_fee_supplier,0) as lack_fee_supplier,
IFNULL(ois.replace_fee,0) as replace_fee
- ,IFNULL( (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'replace'),0) as replace_num
- ,IFNULL( (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'reduce'),0) as reduce_num
- ,IFNULL( (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'lack'),0) as lack_num
+ ,IFNULL( (select oic.num from t_order_item_check oic where 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.order_item_id = oi.id and oic.type = 'reduce' and oic.audit_status='AGREED'),0) as reduce_num
+ ,IFNULL( (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'lack' and oic.audit_status='AGREED'),0) as lack_num
FROM t_order o
left join t_order_item oi
on oi.order_id=o.id
@@ -411,6 +411,12 @@
left join t_supplier_info si on si.id = oi.supplier_id
left join t_order_item_settlement ois on ois.order_item_id = oi.id
WHERE oi.deleted = 0
+ <if test="dto.startDate != null">
+ and o.payment_time > #{dto.startDate}
+ </if>
+ <if test="dto.endDate != null">
+ and o.payment_time <= #{dto.endDate}
+ </if>
)t1
where 1=1
<if test="dto.paymentDateStart != null">
@@ -490,7 +496,7 @@
and o.payment_time <= #{dto.endDate}
</if>
<if test="dto.supplierId != null">
- and oi.supplierId <= #{dto.supplierId}
+ and oi.supplier_id = #{dto.supplierId}
</if>
) t1
GROUP BY
@@ -508,13 +514,42 @@
sum(order_replace_fee) + sum(order_lack_fee_supplier) order_lack_fee_supplier,
sum(order_num)-sum(order_lack_num) as real_sale_num,
sum(sales_fee_supplier) sales_fee_supplier,
- sum(order_supplier_price_amount) - sum(order_check_fee) - sum(order_replace_fee) - sum(order_lack_fee_supplier) - sum(sales_fee_supplier) profitFeeAmount
+ sum(order_supplier_price_amount) - sum(order_check_fee) - sum(order_replace_fee) - sum(order_lack_fee_supplier) - sum(sales_fee_supplier) profitFeeAmount,
+ case when COUNT(CASE WHEN status_backend IS NULL THEN 1 ELSE NULL END) = 0 Then '已完成' Else '进行中' end as settleStatus
from(
SELECT
- oi.id,vor.*,p.name as supplierName
- FROM t_order_item oi
- left join (<include refid="baseSupplierSql"></include>) vor
- on oi.id =vor.order_item_id
+ oi.id,vor.*,p.name as supplierName,o.status_backend
+ FROM
+ (<include refid="baseSupplierSql"></include>) vor
+ left join t_order_item oi
+ on vor.order_item_id = oi.id
+ left join t_supplier_info p
+ on vor.supplier_id=p.id
+ left join t_order o
+ on vor.order_id= o.id
+ and o.status_backend not in ('PENDING','CANCEL','REFUND')
+ ) s group by dateinfo,supplier_id
+ </select>
+
+ <select id="getOrderSupplierReport" resultType="com.mzl.flower.dto.response.report.OrderSupplierReportResultVO">
+ select
+ dateinfo,
+ supplier_id,
+ supplierName,
+ sum(order_supplier_price_amount) order_supplier_price_amount,
+ sum(order_check_fee) order_check_fee,
+ sum(order_replace_fee) + sum(order_lack_fee_supplier) order_lack_fee_supplier,
+ sum(order_num)-sum(order_lack_num) as real_sale_num,
+ sum(sales_fee_supplier) sales_fee_supplier,
+ sum(order_supplier_price_amount) - sum(order_check_fee) - sum(order_replace_fee) - sum(order_lack_fee_supplier) - sum(sales_fee_supplier) profitFeeAmount,
+ case when COUNT(CASE WHEN status_backend IS NULL THEN 1 ELSE NULL END) = 0 Then '已完成' Else '进行中' end as settleStatus
+ from(
+ SELECT
+ oi.id,vor.*,p.name as supplierName,o.status_backend
+ FROM
+ (<include refid="baseSupplierSql"></include>) vor
+ left join t_order_item oi
+ on vor.order_item_id = oi.id
left join t_supplier_info p
on vor.supplier_id=p.id
left join t_order o
@@ -541,20 +576,20 @@
sum(order_replace_fee) + sum(order_lack_fee_supplier) order_lack_fee_supplier,
sum(order_num)-sum(order_lack_num) as real_sale_num,
sum(sales_fee_supplier) sales_fee_supplier,
- sum(order_supplier_price_amount) - sum(order_check_fee) - sum(order_replace_fee) - sum(order_lack_fee_supplier)
- - sum(sales_fee_supplier) profitFeeAmount
+ sum(order_supplier_price_amount) - sum(order_check_fee) - sum(order_replace_fee) - sum(order_lack_fee_supplier) - sum(sales_fee_supplier) profitFeeAmount
from(
SELECT
oi.id,vor.*,p.name as supplierName
- FROM t_order_item oi
- left join (<include refid="baseSupplierSql"></include>) vor
- on oi.id =vor.order_item_id
+ FROM
+ (<include refid="baseSupplierSql"></include>) vor
+ left join t_order_item oi
+ on vor.order_item_id = oi.id
left join t_supplier_info p
on vor.supplier_id=p.id
left join t_order o
on vor.order_id= o.id
and o.status_backend not in ('PENDING','CANCEL','REFUND')
- )
- ) s
+ ) s group by dateinfo,supplier_id
+ ) s2
</select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.3