From 473c4e9cf23f9e43ae2f93c4da79b2204e34c3f8 Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Tue, 09 Mar 2021 11:50:48 +0800
Subject: [PATCH] 解决微信回调报错问题
---
zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml | 653 +++++++++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 540 insertions(+), 113 deletions(-)
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 02ff341..aa09081 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml
@@ -72,15 +72,13 @@
select
<foreach collection="list" index="index" item="item" separator="," >
(
- select IFNULL(sum(ZK_TOTAL), 0)
- from sys_order
- where STATU in ('已付款', '欠款')
- and <![CDATA[order_time > #{item.beginTime} and order_time < #{item.endTime} ]]>
- <if test="companyId != null and companyId != 0">
- and company_id=#{companyId}
+ select IFNULL(sum(amount),0) from sys_order_flow
+ where <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]> and pay_method!='欠款'
+ <if test="shopId != null">
+ and shop_id=#{shopId}
</if>
- <if test="shopId !=null and shopId !=0 " >
- and SHOP_ID = #{shopId}
+ <if test="companyId != null">
+ and company_id=#{companyId}
</if>
) as t${index}
@@ -92,15 +90,13 @@
select
<foreach collection="list" index="index" item="item" separator="," >
(
- select IFNULL(sum(cash_Pay), 0)
- from sys_order
- where STATU in ('已付款')
- and <![CDATA[order_time > #{item.beginTime} and order_time < #{item.endTime} ]]>
- <if test="companyId != null and companyId != 0">
- and company_id=#{companyId}
+ 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}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
</if>
- <if test="shopId !=null and shopId !=0 " >
- and SHOP_ID = #{shopId}
+ <if test="companyId != null">
+ and company_id=#{companyId}
</if>
) as t${index}
@@ -112,15 +108,13 @@
select
<foreach collection="list" index="index" item="item" separator="," >
(
- select IFNULL(sum(card_Pay), 0)
- from sys_order
- where STATU in ('已付款')
- and <![CDATA[order_time > #{item.beginTime} and order_time < #{item.endTime} ]]>
- <if test="companyId != null and companyId != 0">
- and company_id=#{companyId}
+ 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}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
</if>
- <if test="shopId !=null and shopId !=0 " >
- and SHOP_ID = #{shopId}
+ <if test="companyId != null">
+ and company_id=#{companyId}
</if>
) as t${index}
@@ -132,15 +126,13 @@
select
<foreach collection="list" index="index" item="item" separator="," >
(
- select IFNULL(sum(arrears), 0)
- from sys_order
- where STATU in ('欠款')
- and <![CDATA[order_time > #{item.beginTime} and order_time < #{item.endTime} ]]>
- <if test="companyId != null and companyId != 0">
- and company_id=#{companyId}
+ select IFNULL(sum(amount),0) from sys_order_flow
+ where pay_method = '欠款' and <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
</if>
- <if test="shopId !=null and shopId !=0 " >
- and SHOP_ID = #{shopId}
+ <if test="companyId != null">
+ and company_id=#{companyId}
</if>
) as t${index}
@@ -152,15 +144,13 @@
select
<foreach collection="list" index="index" item="item" separator="," >
(
- select IFNULL(sum(his_consume), 0)
- from achieve_new
- where order_type in ('服务单')
- and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
- <if test="companyId != null and companyId != 0">
- and company_id=#{companyId}
+ select IFNULL(sum(IFNULL(his_consume, 0)),0) from achieve_new
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
</if>
- <if test="shopId !=null and shopId !=0 " >
- and SHOP_ID = #{shopId}
+ <if test="companyId != null">
+ and company_id=#{companyId}
</if>
) as t${index}
@@ -172,16 +162,325 @@
select
<foreach collection="list" index="index" item="item" separator="," >
(
- select IFNULL(sum(free_consume), 0)
- from achieve_new
- where order_type in ('服务单')
- and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
- <if test="companyId != null and companyId != 0">
+ select IFNULL(sum(IFNULL(free_consume, 0)),0) from achieve_new
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
and company_id=#{companyId}
</if>
- <if test="shopId !=null and shopId !=0 " >
- and SHOP_ID = #{shopId}
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectPeopleCnt" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select IFNULL(sum(IFNULL(number_of_people, 0)),0) from achieve_new
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
</if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectProjConsumeCnt" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select IFNULL(sum(IFNULL(proj_num, 0)),0) from achieve_new
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectTimeLength" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select IFNULL(sum(IFNULL(proj_time, 0)),0) from achieve_new
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectProductAchieve" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select IFNULL(sum(zk_price),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}]]>
+ <if test="shopId != null">
+ and c.shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and c.company_id=#{companyId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectCardAchieve" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select IFNULL(sum(zk_price),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}]]>
+ <if test="shopId != null">
+ and c.shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and c.company_id=#{companyId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectRepayment" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select IFNULL(sum(amount),0) from sys_order_flow where flow_type = '还款' and <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectPerCustomCnt" resultType="java.util.TreeMap">
+ select
+ <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} ]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectCustomGoodsCnt" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ 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} ]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </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} ]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </if>
+ ) totalSaleCnt from dual
+ ) a
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectPerCustomPrice" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ 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} ]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </if>
+ ) perCustomCnt,
+ (select IFNULL(sum(amount),0) from sys_order_flow
+ where <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]> and pay_method!='欠款'
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </if>
+ ) totalPay from dual
+ ) a
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectCost" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select a.goodsCost+a.otherCost end from (
+ select
+ (select IFNULL(sum(e.count * d.GOODS_PRICE),0) from sys_order a
+ inner join sys_out_store b on a.id=b.ORDER_ID
+ inner join sys_out_store_item c on b.id=c.OUT_STORE_ID
+ 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} ]]>
+ <if test="shopId != null">
+ and a.shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and a.company_id=#{companyId}
+ </if>
+ ) goodsCost,
+ (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} ]]>
+ <if test="shopId != null">
+ and a.shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and a.company_id=#{companyId}
+ </if>
+ ) otherCost from dual
+ ) a
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectGrossProfit" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select a.totalPay - a.goodsCost - a.otherCost end from (
+ select
+ (select IFNULL(sum(e.count * d.GOODS_PRICE),0) from sys_order a
+ inner join sys_out_store b on a.id=b.ORDER_ID
+ inner join sys_out_store_item c on b.id=c.OUT_STORE_ID
+ 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} ]]>
+ <if test="shopId != null">
+ and a.shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and a.company_id=#{companyId}
+ </if>
+ ) goodsCost,
+ (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} ]]>
+ <if test="shopId != null">
+ and a.shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and a.company_id=#{companyId}
+ </if>
+ ) otherCost,
+ (select IFNULL(sum(amount),0) from sys_order_flow
+ where <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]> and pay_method!='欠款'
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </if>
+ ) totalPay from dual
+ ) a
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectGrossProfitRate" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select case a.totalPay when 0 then 0 else (a.totalPay - a.goodsCost - a.otherCost)/a.totalPay end from (
+ select
+ (select IFNULL(sum(e.count * d.GOODS_PRICE),0) from sys_order a
+ inner join sys_out_store b on a.id=b.ORDER_ID
+ inner join sys_out_store_item c on b.id=c.OUT_STORE_ID
+ 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} ]]>
+ <if test="shopId != null">
+ and a.shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and a.company_id=#{companyId}
+ </if>
+ ) goodsCost,
+ (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} ]]>
+ <if test="shopId != null">
+ and a.shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and a.company_id=#{companyId}
+ </if>
+ ) otherCost,
+ (select IFNULL(sum(amount),0) from sys_order_flow
+ where <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]> and pay_method!='欠款'
+ <if test="shopId != null">
+ and shop_id=#{shopId}
+ </if>
+ <if test="companyId != null">
+ and company_id=#{companyId}
+ </if>
+ ) totalPay from dual
+ ) a
) as t${index}
</foreach>
from area where id=1
@@ -191,15 +490,13 @@
select
<foreach collection="list" index="index" item="item" separator="," >
(
- select IFNULL(sum(cash_Pay), 0)
- from sys_order
- where STATU in ('退款')
- and <![CDATA[order_time > #{item.beginTime} and order_time < #{item.endTime} ]]>
- <if test="companyId != null and companyId != 0">
- and company_id=#{companyId}
+ 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}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
</if>
- <if test="shopId !=null and shopId !=0 " >
- and SHOP_ID = #{shopId}
+ <if test="companyId != null">
+ and company_id=#{companyId}
</if>
) as t${index}
@@ -212,15 +509,13 @@
select
<foreach collection="list" index="index" item="item" separator="," >
(
- select IFNULL(sum(card_Pay), 0)
- from sys_order
- where STATU in ('退款')
- and <![CDATA[order_time > #{item.beginTime} and order_time < #{item.endTime} ]]>
- <if test="companyId != null and companyId != 0">
- and company_id=#{companyId}
+ 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}]]>
+ <if test="shopId != null">
+ and shop_id=#{shopId}
</if>
- <if test="shopId !=null and shopId !=0 " >
- and SHOP_ID = #{shopId}
+ <if test="companyId != null">
+ and company_id=#{companyId}
</if>
) as t${index}
@@ -229,58 +524,190 @@
</select>
<select id="selectVipAchieveInPage" resultType="com.matrix.system.app.vo.VipAchieveDataShowVo">
+ <foreach collection="list" index="index" item="item" separator="union all" >
+ 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(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,
+ (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='服务单') commission,
+ (select ifnull(sum(ifnull(number_of_people, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) peopleNum,
+ (select ifnull(sum(ifnull(proj_num, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) projNum,
+ (select ifnull(sum(ifnull(proj_time, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) serviceTime
+ from dual
+ </foreach>
+ </select>
+
+ <select id="selectStaffOrderAchieve" resultType="java.util.TreeMap">
select
- date_format(a.datatime, #{record.t1}) time,
- ROUND(sum(IFNULL(zk_total, 0)), 2) orderAmount,
- ROUND(sum(IFNULL(proj_cash, 0)), 2) cashAmount,
- ROUND(sum(IFNULL(card_cash, 0)), 2) cardAmount,
- ROUND(sum(IFNULL(goods_cash, 0)), 2) goodsAmount,
- ROUND(sum(IFNULL(consume, 0)), 2) cardUseAmount,
- ROUND(sum(IFNULL(his_consume, 0)), 2) hisConsume,
- ROUND(sum(IFNULL(free_consume, 0)), 2) freeConsume,
- ROUND(sum(IFNULL(proj_percentage, 0)), 2) commission,
- ROUND(sum(IFNULL(number_of_people, 0)), 2) peopleNum,
- ROUND(sum(IFNULL(proj_num, 0)), 2) projNum,
- ROUND(sum(IFNULL(proj_time, 0)), 2) serviceTime
- from (
- select * from (
- select * from (
- select date_format(date_add(now(), INTERVAL -(@rowd := @rowd + 1) DAY), '%Y-%m-%d') datatime
- from achieve_new a, (select @rowd := 0) t
- ) a
- ) a
- left join (
- select
- date_format(a.datatime, '%Y-%m-%d') datatime1,
- SUM((IFNULL(a.card_cash,0) +IFNULL(a.proj_cash,0) + IFNULL(a.goods_cash,0))) as zk_total,
- SUM(IFNULL(a.proj_cash,0)) proj_cash,
- SUM(IFNULL(a.goods_cash, 0)) goods_cash,
- SUM(IFNULL(a.card_cash,0)) card_cash,
- SUM(IFNULL(a.consume, 0)) consume
- from achieve_new a where a.sale_id=#{record.vipId}
- group by date_format(a.datatime, '%Y-%m-%d')
- ) b on a.datatime=b.datatime1
- left join (
- select
- date_format(b.datatime, '%Y-%m-%d') datatime2,
- SUM(IFNULL(b.his_consume, 0)) his_consume,
- SUM(IFNULL(b.free_consume, 0)) free_consume,
- SUM(IFNULL(b.proj_percentage, 0)) proj_percentage,
- SUM(IFNULL(b.number_of_people, 0)) number_of_people,
- SUM(IFNULL(b.proj_num, 0)) proj_num,
- SUM(IFNULL(b.proj_time, 0)) proj_time
- from achieve_new b where b.beault_id=#{record.vipId}
- group by date_format(b.datatime, '%Y-%m-%d')
- ) c on a.datatime=c.datatime2
- ) a
- group by date_format(a.datatime, #{record.t1})
- order by a.datatime desc
- <if test="pageVo !=null"><!-- 判断pageVo对象是否为空 -->
- <if test="pageVo.offset >=0 and pageVo.limit >0">
- limit
- #{pageVo.offset},#{pageVo.limit}
+ <foreach collection="list" index="index" item="item" separator="," >
+ (select ifnull(sum(ifnull(card_cash,0) + ifnull(consume,0)),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>
+ ) as t${index}
+
+ </foreach>
+ from area where id=1
+ </select>
+
+ <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)
+ 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>
+ ) as t${index}
+
+ </foreach>
+ from area where id=1
+ </select>
+
+ <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
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
+ <if test="staffId != null and staffId != 0">
+ and a.beault_id=#{staffId}
</if>
- </if>
+ ) as t${index}
+
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectStaffGoodsAchieve" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (select ifnull(sum(ifnull(proj_percentage, 0)),0)
+ from achieve_new a
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]> and order_type='订单'
+ <if test="staffId != null and staffId != 0">
+ and a.beault_id=#{staffId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectStaffCardUseAchieve" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select
+ IFNULL(SUM((IFNULL(a.consume,0))),0)
+ from achieve_new a
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
+ <if test="staffId != null and staffId != 0">
+ and sale_id=#{staffId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectStaffHisConsumeAchieve" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select
+ IFNULL(SUM((IFNULL(a.his_consume,0))),0)
+ from achieve_new a
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
+ <if test="staffId != null and staffId != 0">
+ and beault_id=#{staffId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectStaffFreeConsumeAchieve" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select
+ IFNULL(SUM((IFNULL(a.free_consume,0))),0)
+ from achieve_new a
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
+ <if test="staffId != null and staffId != 0">
+ and beault_id=#{staffId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectStaffCommissionAchieve" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (select ifnull(sum(ifnull(proj_percentage, 0)),0) from achieve_new a
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]> and order_type='服务单'
+ <if test="staffId != null and staffId != 0">
+ and a.beault_id=#{staffId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectStaffPeopleNum" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select
+ IFNULL(SUM((IFNULL(a.number_of_people,0))),0)
+ from achieve_new a
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
+ <if test="staffId != null and staffId != 0">
+ and beault_id=#{staffId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectStaffProjNum" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select
+ IFNULL(SUM((IFNULL(a.proj_num,0))),0)
+ from achieve_new a
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
+ <if test="staffId != null and staffId != 0">
+ and beault_id=#{staffId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
+ </select>
+
+ <select id="selectStaffProjTime" resultType="java.util.TreeMap">
+ select
+ <foreach collection="list" index="index" item="item" separator="," >
+ (
+ select
+ IFNULL(SUM((IFNULL(a.proj_time,0))),0)
+ from achieve_new a
+ where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>
+ <if test="staffId != null and staffId != 0">
+ and beault_id=#{staffId}
+ </if>
+ ) as t${index}
+ </foreach>
+ from area where id=1
</select>
</mapper>
--
Gitblit v1.9.1