From 3875ea07f21457da72bcc2c2b7484987d565424d Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Fri, 22 Jan 2021 16:03:51 +0800 Subject: [PATCH] modify --- zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml | 511 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 509 insertions(+), 2 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 6c5c06f..119a641 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml @@ -7,7 +7,7 @@ <!-- 人头数统计 --> - <select id="countVisitByTime" resultType="java.util.TreeMap"> + <select id="customerHeadCompare" resultType="java.util.TreeMap"> select <foreach collection="list" index="index" item="item" separator="," > ( @@ -16,7 +16,6 @@ <if test="shopId !=null and shopId !=0 " > and SHOP_ID = #{shopId} </if> - ) t ) as t${index} @@ -24,5 +23,513 @@ from area where id=1 </select> + <!-- 人次统计 --> + <select id="customerEnterCountCompare" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + SELECT count(*) from ( + SELECT DISTINCT vip_id ,date_format(datatime,'%Y-%m-%d') from achieve_new where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]> + <if test="shopId !=null and shopId !=0 " > + and SHOP_ID = #{shopId} + </if> + ) t + ) as t${index} + + </foreach> + from area where id=1 + </select> + + <!-- 到店率 --> + <select id="customerEnterRateCompare" resultType="java.util.TreeMap"> + + select + <foreach collection="list" index="index" item="item" separator="," > + + ifnull( ( ( + SELECT count(*) from ( + SELECT DISTINCT vip_id ,date_format(datatime,'%Y-%m-%d') from achieve_new where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]> + <if test="shopId !=null and shopId !=0 " > + and SHOP_ID = #{shopId} + </if>) a + ) + / + ( + SELECT count(*) from ( + SELECT DISTINCT vip_id from achieve_new where <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]> + <if test="shopId !=null and shopId !=0 " > + and SHOP_ID = #{shopId} + </if>) b + ) + ),0 )as t${index} + + </foreach> + from area where id=1 + + </select> + + <select id="selectBusinessInCome" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + 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> + ) as t${index} + + </foreach> + from area where id=1 + </select> + + <select id="selectCashIncome" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + 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="companyId != null"> + and company_id=#{companyId} + </if> + ) as t${index} + + </foreach> + from area where id=1 + </select> + + <select id="selectCardUse" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + 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="companyId != null"> + and company_id=#{companyId} + </if> + ) as t${index} + + </foreach> + from area where id=1 + </select> + + <select id="selectArrears" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + 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="companyId != null"> + and company_id=#{companyId} + </if> + ) as t${index} + + </foreach> + from area where id=1 + </select> + + <select id="selectHisConsume" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + 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="companyId != null"> + and company_id=#{companyId} + </if> + ) as t${index} + + </foreach> + from area where id=1 + </select> + + <select id="selectFreeConsume" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + 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> + ) 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="selectCashRefund" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + 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="companyId != null"> + and company_id=#{companyId} + </if> + ) as t${index} + + </foreach> + from area where id=1 + </select> + + + <select id="selectCardRefund" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + 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="companyId != null"> + and company_id=#{companyId} + </if> + ) as t${index} + + </foreach> + from area where id=1 + </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 + <foreach collection="list" index="index" item="item" separator="," > + ( + select + IFNULL(SUM((IFNULL(a.card_cash,0) +IFNULL(a.proj_cash,0) + IFNULL(a.goods_cash,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="selectStaffCashAchieve" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + select + IFNULL(SUM((IFNULL(a.proj_cash,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="selectStaffCardAchieve" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + select + IFNULL(SUM((IFNULL(a.card_cash,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="selectStaffGoodsAchieve" resultType="java.util.TreeMap"> + select + <foreach collection="list" index="index" item="item" separator="," > + ( + select + IFNULL(SUM((IFNULL(a.goods_cash,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="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(a.proj_percentage,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="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