From 8fe37f0f7af3667b60e0f29a1ce8188c08c35bb1 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 09 Mar 2021 15:33:34 +0800
Subject: [PATCH] modify
---
zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml | 10 ++-
zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java | 1
zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml | 52 ++++++++++-------
zq-erp/src/main/java/com/matrix/system/hive/bean/SysOrder.java | 23 +++++++
zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml | 13 ++++
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java | 4 +
zq-erp/src/main/resources/mybatis/mapper/hive/SysBusinessDataDao.xml | 18 +++---
7 files changed, 86 insertions(+), 35 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
index 4371690..ae3f6d6 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
@@ -130,6 +130,7 @@
SysUsers user = getMe();
sysOrder.setShopId(user.getShopId());
sysOrder.setOrderType(SysOrder.ORDER_TYPE_SEAL);
+ sysOrder.setIsHasRefund(SysOrder.IS_HAS_REFUND_N);
//校验订单是否满足结算调价,新订单则保存订单,已有订单则删除后更新
sysOrder = orderService.checkAndSaveOrder(sysOrder);
orderService.updateReceiptMoney(sysOrder);
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysOrder.java b/zq-erp/src/main/java/com/matrix/system/hive/bean/SysOrder.java
index dfbe3d2..835d02c 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysOrder.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/bean/SysOrder.java
@@ -185,6 +185,29 @@
*/
private Long oldOrderId;
+ /**
+ * 该订单有退款
+ */
+ public static final Integer IS_HAS_REFUND_Y = 1;
+
+ /**
+ * 该订单无退款
+ */
+ public static final Integer IS_HAS_REFUND_N = 2;
+
+ /**
+ * 是否发生退款 1-是 2-否
+ */
+ private Integer isHasRefund;
+
+ public Integer getIsHasRefund() {
+ return isHasRefund;
+ }
+
+ public void setIsHasRefund(Integer isHasRefund) {
+ this.isHasRefund = isHasRefund;
+ }
+
public Long getOldOrderId() {
return oldOrderId;
}
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
index 2445c7b..bfd0009 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -1268,7 +1268,8 @@
//原订单设置为退款状态
SysOrder sourceOrder=new SysOrder();
sourceOrder.setId(sysOrder.getOldOrderId());
- sourceOrder.setStatu(Dictionary.ORDER_STATU_TK);
+ sourceOrder.setIsHasRefund(SysOrder.IS_HAS_REFUND_Y);
+// sourceOrder.setStatu(Dictionary.ORDER_STATU_TK);
sysOrderDao.update(sourceOrder);
sysOrder.setId(null);
@@ -1282,6 +1283,7 @@
sysOrder.setPayTime(now);
sysOrder.setOrderNo(codeService.getRefundOrderNo());
sysOrder.setZkTotal(-sysOrder.getZkTotal());
+ sysOrder.setOrderType(SysOrder.ORDER_TYPE_REFUND);
//新增订单
sysOrderDao.insert(sysOrder);
//插入明细
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml
index 4e5b1ce..77eaf77 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml
@@ -906,7 +906,18 @@
<select id="selectUserAchieveByTime" resultType="com.matrix.system.app.vo.UserAchieveVo">
select
sale_id id,
- sum(goods_cash) orderCash,
+ (select ifnull(sum(case b.pay_method when '现金' then goods_cash else 0 end),0)
+ from achieve_new a
+ inner join sys_order_item b on a.order_item_id=b.ID
+ where a.beault_id=#{userId}
+ and (date_format(datatime, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d') >= date_format(datatime, '%Y-%m-%d'))
+ ) orderCash,
+ (select ifnull(sum(case b.pay_method when '划扣' then goods_cash else 0 end),0)
+ from achieve_new a
+ inner join sys_order_item b on a.order_item_id=b.ID
+ where a.beault_id=#{userId}
+ and (date_format(datatime, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d') >= date_format(datatime, '%Y-%m-%d'))
+ ) cash,
sum(case order_type when '订单' then proj_percentage else 0 end) cardUse,
sum(IFNULL(his_consume, 0)) hisConsume,
sum(IFNULL(free_consume, 0)) freeConsume,
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 6844dff..c412857 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysBusinessDataDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysBusinessDataDao.xml
@@ -709,7 +709,7 @@
</if>
) refund,
(select IFNULL(count(1),0) from sys_order
- where STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where STATU in ('已付款', '欠款') and orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and shop_id=#{shopId}
</if>
@@ -718,7 +718,7 @@
</if>
) perCustomCnt,
(select IFNULL(sum(b.COUNT),0) from sys_order a inner join sys_order_item b on a.ID=b.ORDER_ID
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and shop_id=#{shopId}
</if>
@@ -732,7 +732,7 @@
inner join sys_store_info d on c.store_id = d.ID
inner join sys_order_item e on a.ID=e.ORDER_ID
inner join shopping_goods f on e.goods_id=f.id and f.good_type='家居产品'
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and a.shop_id=#{shopId}
</if>
@@ -743,7 +743,7 @@
(select IFNULL(sum(b.COUNT * IFNULL(c.price, 0)),0) from sys_order a
inner join sys_order_item b on a.ID=b.ORDER_ID
inner join shopping_goods c on c.good_type != '家居产品' and b.goods_id=c.id
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and a.shop_id=#{shopId}
</if>
@@ -806,7 +806,7 @@
#{item.beginTime} dataTime,
(select shop_short_name from sys_shop_info where id=#{shopId}) shopName,
(select sum(total) shouldPay from sys_order
- where STATU in ('已付款', '欠款') and <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]>
+ where STATU in ('已付款', '欠款') and orderType=1 and <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]>
<if test="shopId != null">
and shop_id=#{shopId}
</if>
@@ -869,13 +869,13 @@
</if>
) refund,
(select IFNULL(count(1),0) from sys_order
- where STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where STATU in ('已付款', '欠款') and orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and shop_id=#{shopId}
</if>
) perCustomCnt,
(select IFNULL(sum(b.COUNT),0) from sys_order a inner join sys_order_item b on a.ID=b.ORDER_ID
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and shop_id=#{shopId}
</if>
@@ -886,7 +886,7 @@
inner join sys_store_info d on c.store_id = d.ID
inner join sys_order_item e on a.ID=e.ORDER_ID
inner join shopping_goods f on e.goods_id=f.id and f.good_type='家居产品'
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and a.shop_id=#{shopId}
</if>
@@ -894,7 +894,7 @@
(select IFNULL(sum(b.COUNT * IFNULL(c.price, 0)),0) from sys_order a
inner join sys_order_item b on a.ID=b.ORDER_ID
inner join shopping_goods c on c.good_type != '家居产品' and b.goods_id=c.id
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and a.shop_id=#{shopId}
</if>
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
index 9e9eed3..7bdfec4 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
@@ -63,7 +63,8 @@
beatuyName,
pay_time,
company_id,
- orderType
+ orderType,
+ is_has_refund
)
VALUES (
#{id},
@@ -86,7 +87,8 @@
#{beatuyName},
#{payTime},
#{companyId},
- #{orderType}
+ #{orderType},
+ #{isHasRefund}
)
</insert>
@@ -143,10 +145,12 @@
<if test="cashPay != null and cashPay !='' ">
cash_Pay = #{cashPay},
</if>
-
<if test="payTime != null ">
pay_time = #{payTime},
</if>
+ <if test="isHasRefund != null ">
+ is_has_refund = #{isHasRefund},
+ </if>
</set>
WHERE id=#{id}
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml
index aa09081..7a46366 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml
@@ -285,7 +285,7 @@
<foreach collection="list" index="index" item="item" separator="," >
(
select IFNULL(count(1),0) from sys_order
- where STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where STATU in ('已付款', '欠款') and orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and shop_id=#{shopId}
</if>
@@ -304,7 +304,7 @@
select case a.perCustomCnt when 0 then 0 else a.totalSaleCnt/a.perCustomCnt end from (
select
(select IFNULL(count(1),0) from sys_order
- where STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where STATU in ('已付款', '欠款') and orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and shop_id=#{shopId}
</if>
@@ -313,7 +313,7 @@
</if>
) perCustomCnt,
(select IFNULL(sum(b.COUNT),0) from sys_order a inner join sys_order_item b on a.ID=b.ORDER_ID
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and shop_id=#{shopId}
</if>
@@ -334,7 +334,7 @@
select case a.perCustomCnt when 0 then 0 else a.totalPay/a.perCustomCnt end from (
select
(select IFNULL(count(1),0) from sys_order
- where STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where STATU in ('已付款', '欠款') and orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and shop_id=#{shopId}
</if>
@@ -369,7 +369,7 @@
inner join sys_store_info d on c.store_id = d.ID
inner join sys_order_item e on a.ID=e.ORDER_ID
inner join shopping_goods f on e.goods_id=f.id and f.good_type='家居产品'
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and a.shop_id=#{shopId}
</if>
@@ -380,7 +380,7 @@
(select IFNULL(sum(b.COUNT * IFNULL(c.price, 0)),0) from sys_order a
inner join sys_order_item b on a.ID=b.ORDER_ID
inner join shopping_goods c on c.good_type != '家居产品' and b.goods_id=c.id
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and a.shop_id=#{shopId}
</if>
@@ -406,7 +406,7 @@
inner join sys_store_info d on c.store_id = d.ID
inner join sys_order_item e on a.ID=e.ORDER_ID
inner join shopping_goods f on e.goods_id=f.id and f.good_type='家居产品'
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and a.shop_id=#{shopId}
</if>
@@ -417,7 +417,7 @@
(select IFNULL(sum(b.COUNT * IFNULL(c.price, 0)),0) from sys_order a
inner join sys_order_item b on a.ID=b.ORDER_ID
inner join shopping_goods c on c.good_type != '家居产品' and b.goods_id=c.id
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and a.shop_id=#{shopId}
</if>
@@ -452,7 +452,7 @@
inner join sys_store_info d on c.store_id = d.ID
inner join sys_order_item e on a.ID=e.ORDER_ID
inner join shopping_goods f on e.goods_id=f.id and f.good_type='家居产品'
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and a.shop_id=#{shopId}
</if>
@@ -463,7 +463,7 @@
(select IFNULL(sum(b.COUNT * IFNULL(c.price, 0)),0) from sys_order a
inner join sys_order_item b on a.ID=b.ORDER_ID
inner join shopping_goods c on c.good_type != '家居产品' and b.goods_id=c.id
- where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
+ where a.STATU in ('已付款', '欠款') and a.orderType=1 and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]>
<if test="shopId != null">
and a.shop_id=#{shopId}
</if>
@@ -528,9 +528,18 @@
select
#{item.beginTime} time,
(select ifnull(sum(ifnull(card_cash,0) + ifnull(consume,0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) orderAmount,
- (select ifnull(sum(case t3 when '现金业绩' then card_cash else 0 end),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) cashAmount,
- (select ifnull(sum(case t3 when '划扣业绩' then consume else 0 end),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) cardAmount,
- (select ifnull(sum(case t3 when '划扣业绩' then consume else 0 end),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) cardUseAmount,
+ (select ifnull(sum(case b.pay_method when '现金' then goods_cash else 0 end),0)
+ from achieve_new a
+ inner join sys_order_item b on a.order_item_id=b.ID
+ where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) cashAmount,
+ (select ifnull(sum(case b.pay_method when '划扣' then goods_cash else 0 end),0)
+ from achieve_new a
+ inner join sys_order_item b on a.order_item_id=b.ID
+ where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) cardAmount,
+ (select ifnull(sum(case b.pay_method when '划扣' then goods_cash else 0 end),0)
+ from achieve_new a
+ inner join sys_order_item b on a.order_item_id=b.ID
+ where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) cardUseAmount,
(select ifnull(sum(ifnull(proj_percentage, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]> and order_type='订单') goodsAmount,
(select ifnull(sum(ifnull(his_consume, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) hisConsume,
(select ifnull(sum(ifnull(free_consume, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) freeConsume,
@@ -560,14 +569,14 @@
<select id="selectStaffCashAchieve" resultType="java.util.TreeMap">
select
<foreach collection="list" index="index" item="item" separator="," >
- (select ifnull(sum(case t3 when '现金业绩' then card_cash else 0 end),0)
+ (select ifnull(sum(case b.pay_method when '现金' then goods_cash else 0 end),0)
from achieve_new a
- where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
- <if test="staffId != null and staffId != 0">
- and a.beault_id=#{staffId}
- </if>
+ inner join sys_order_item b on a.order_item_id=b.ID
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
+ <if test="staffId != null and staffId != 0">
+ and a.beault_id=#{staffId}
+ </if>
) as t${index}
-
</foreach>
from area where id=1
</select>
@@ -575,8 +584,9 @@
<select id="selectStaffCardAchieve" resultType="java.util.TreeMap">
select
<foreach collection="list" index="index" item="item" separator="," >
- (select ifnull(sum(case t3 when '划扣业绩' then consume else 0 end),0)
- from achieve_new a
+ (select ifnull(sum(case b.pay_method when '划扣' then goods_cash else 0 end),0)
+ from achieve_new a
+ inner join sys_order_item b on a.order_item_id=b.ID
where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
<if test="staffId != null and staffId != 0">
and a.beault_id=#{staffId}
--
Gitblit v1.9.1