From e423d56d730db1baed24f3f7dbbc4141038776b6 Mon Sep 17 00:00:00 2001
From: 935090232@qq.com <ak473600000>
Date: Fri, 18 Jun 2021 22:12:03 +0800
Subject: [PATCH] 修复每日业绩bug和优化赠送业绩计算方式
---
zq-erp/src/main/resources/mybatis/mapper/hive/SysBusinessDataDao.xml | 96 +++++++++++++++++++++++++++++++----------------
1 files changed, 63 insertions(+), 33 deletions(-)
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysBusinessDataDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysBusinessDataDao.xml
index c412857..ddb5b13 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysBusinessDataDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysBusinessDataDao.xml
@@ -624,64 +624,70 @@
select
#{item.beginTime} dataTime,
(select shop_short_name from sys_shop_info where id=#{shopId}) shopName,
- (select IFNULL(sum(amount),0) from sys_order_flow
- where <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]> and pay_method!='欠款'
+ (select IFNULL(sum(a.amount),0) from sys_order_flow a
+ inner join sys_order b on a.order_id=b.id and b.statu!='已取消'
+ where <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]> and a.pay_method!='欠款'
<if test="shopId != null">
- and shop_id=#{shopId}
+ and a.shop_id=#{shopId}
</if>
<if test="companyId != null">
- and company_id=#{companyId}
+ and a.company_id=#{companyId}
</if>
)totalPay,
- (select IFNULL(sum(amount),0) from sys_order_flow
- where pay_method not in ('储值卡', '欠款') and flow_type != '退款' and <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]>
+ (select IFNULL(sum(a.amount),0) from sys_order_flow a
+ inner join sys_order b on a.order_id=b.id and b.statu!='已取消'
+ where a.pay_method not in ('储值卡', '欠款') and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
<if test="shopId != null">
- and shop_id=#{shopId}
+ and a.shop_id=#{shopId}
</if>
<if test="companyId != null">
- and company_id=#{companyId}
+ and a.company_id=#{companyId}
</if>
) cashPay,
- (select IFNULL(sum(amount),0) from sys_order_flow
- where pay_method = '储值卡' and flow_type != '退款' and <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]>
+ (select IFNULL(sum(a.amount),0) from sys_order_flow a
+ inner join sys_order b on a.order_id=b.id and b.statu!='已取消'
+ where a.pay_method = '储值卡' and a.flow_type != '退款' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
<if test="shopId != null">
- and shop_id=#{shopId}
+ and a.shop_id=#{shopId}
</if>
<if test="companyId != null">
- and company_id=#{companyId}
+ and a.company_id=#{companyId}
</if>
) cardPay,
- (select IFNULL(sum(amount),0) from sys_order_flow
- where pay_method = '欠款' and <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]>
+ (select IFNULL(sum(a.amount),0) from sys_order_flow a
+ inner join sys_order b on a.order_id=b.id and b.statu!='已取消'
+ where a.pay_method = '欠款' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
<if test="shopId != null">
- and shop_id=#{shopId}
+ and a.shop_id=#{shopId}
</if>
<if test="companyId != null">
- and company_id=#{companyId}
+ and a.company_id=#{companyId}
</if>
) arrearsPay,
- (select IFNULL(sum(amount),0) from sys_order_flow
- where pay_method not in ('储值卡', '欠款') and flow_type = '退款' and <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]>
+ (select IFNULL(sum(a.amount),0) from sys_order_flow a
+ inner join sys_order b on a.order_id=b.id and b.statu!='已取消'
+ where a.pay_method not in ('储值卡', '欠款') and a.flow_type = '退款' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
<if test="shopId != null">
- and shop_id=#{shopId}
+ and a.shop_id=#{shopId}
</if>
<if test="companyId != null">
- and company_id=#{companyId}
+ and a.company_id=#{companyId}
</if>
) refundCashPay,
- (select IFNULL(sum(amount),0) from sys_order_flow
- where pay_method in ('储值卡') and flow_type = '退款' and <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]>
+ (select IFNULL(sum(a.amount),0) from sys_order_flow a
+ inner join sys_order b on a.order_id=b.id and b.statu!='已取消'
+ where a.pay_method in ('储值卡') and a.flow_type = '退款' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
<if test="shopId != null">
- and shop_id=#{shopId}
+ and a.shop_id=#{shopId}
</if>
<if test="companyId != null">
- and company_id=#{companyId}
+ and a.company_id=#{companyId}
</if>
) refundCardPay,
(select IFNULL(sum(zk_price*count),0) from sys_order_item a
inner join shopping_goods b on a.goods_id=b.id
- inner join sys_order c on a.ORDER_ID=c.id
- where b.good_type='家居产品' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
+ inner join sys_order c on a.ORDER_ID=c.id and c.statu!='已取消'
+ where b.good_type='家居产品' and <![CDATA[ c.pay_time > #{item.beginTime} and c.pay_time < #{item.endTime}]]>
<if test="shopId != null">
and c.shop_id=#{shopId}
</if>
@@ -691,8 +697,8 @@
) productAchieve,
(select IFNULL(sum(zk_price*count),0) from sys_order_item a
inner join shopping_goods b on a.goods_id=b.id
- inner join sys_order c on a.ORDER_ID=c.id
- where b.good_type!='家居产品' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
+ inner join sys_order c on a.ORDER_ID=c.id and c.statu!='已取消'
+ where b.good_type!='家居产品' and <![CDATA[ c.pay_time > #{item.beginTime} and c.pay_time < #{item.endTime}]]>
<if test="shopId != null">
and c.shop_id=#{shopId}
</if>
@@ -700,14 +706,38 @@
and c.company_id=#{companyId}
</if>
) cardAchieve,
- (select IFNULL(sum(amount),0) from sys_order_flow where flow_type = '还款' and <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]>
+ (select IFNULL(sum(a.amount),0) from sys_order_flow a
+ inner join sys_order b on a.order_id=b.id and b.statu!='已取消'
+ where a.flow_type = '还款' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
<if test="shopId != null">
- and shop_id=#{shopId}
+ and a.shop_id=#{shopId}
</if>
<if test="companyId != null">
- and company_id=#{companyId}
+ and a.company_id=#{companyId}
</if>
) refund,
+ (select sum(IFNULL(amount, 0))
+ from sys_order_flow a
+ inner join sys_order b on a.order_id=b.id and b.STATU!='已取消'
+ where a.pay_method='储值卡' and a.is_gift='N' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
+ <if test="shopId != null">
+ and a.shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and a.company_id=#{companyId}
+ </if>
+ ) cardAmount,
+ (select sum(IFNULL(amount, 0))
+ from sys_order_flow a
+ inner join sys_order b on a.order_id=b.id and b.STATU!='已取消'
+ where a.pay_method='储值卡' and a.is_gift='Y' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
+ <if test="shopId != null">
+ and a.shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and a.company_id=#{companyId}
+ </if>
+ ) cardFreeAmount,
(select IFNULL(count(1),0) from sys_order
where STATU in ('已付款', '欠款') and orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
@@ -850,7 +880,7 @@
(select IFNULL(sum(zk_price*count),0) from sys_order_item a
inner join shopping_goods b on a.goods_id=b.id
inner join sys_order c on a.ORDER_ID=c.id
- where b.good_type='家居产品' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
+ where b.good_type='家居产品' and <![CDATA[ c.pay_time > #{item.beginTime} and c.pay_time < #{item.endTime}]]>
<if test="shopId != null">
and c.shop_id=#{shopId}
</if>
@@ -858,7 +888,7 @@
(select IFNULL(sum(zk_price*count),0) from sys_order_item a
inner join shopping_goods b on a.goods_id=b.id
inner join sys_order c on a.ORDER_ID=c.id
- where b.good_type!='家居产品' and <![CDATA[ a.create_time > #{item.beginTime} and a.create_time < #{item.endTime}]]>
+ where b.good_type!='家居产品' and <![CDATA[ c.pay_time > #{item.beginTime} and c.pay_time < #{item.endTime}]]>
<if test="shopId != null">
and c.shop_id=#{shopId}
</if>
--
Gitblit v1.9.1