Browse Source

首页折线图修改

yumeng 1 year ago
parent
commit
cfd54cef87

+ 0 - 1
ruixuan-live/src/main/java/com/ruixuan/isc/service/impl/KuaishouItemCollectSamplesServiceImpl.java

@@ -1011,7 +1011,6 @@ public class KuaishouItemCollectSamplesServiceImpl implements IKuaishouItemColle
                 list = supplyChainService.getMonthOrderAmountByItemsBytedance(map);
             } else {
                 list = supplyChainService.getMonthOrderAmountByItems(map);
-                ;
             }
             List<String> allDates = DateUtils.getAllDatesOfTwoTimes(startDate, endDate);
             if (Check.isNull(list) || list.size() != allDates.size()) {

+ 44 - 4
ruixuan-live/src/main/resources/mapper/isc/SupplyChainMapper.xml

@@ -1575,12 +1575,20 @@
 
 
     <select id="getMonthOrderAmount" resultType="com.alibaba.fastjson.JSONObject">
+        select t.* ,t2.valid_order_rate as 'validOrderRate',
+        t2.valid_gmv_rate as 'validGmvRate'
+        from (
         SELECT
         FROM_UNIXTIME(order_create_time / 1000, '%Y-%m-%d') as 'date',
+        FROM_UNIXTIME(order_create_time / 1000, '%Y%m%d') as 'dateInt',
         count(1) AS 'orderCount',
         IFNULL(SUM(CASE WHEN order_status != 80 THEN 1 ELSE 0 END), 0) AS 'validOrderCount',
         IFNULL(SUM(order_amount),0) AS 'orderAmount',
         IFNULL(SUM(CASE WHEN order_status != 80 THEN order_amount ELSE 0 END),0) AS 'validOrderAmount',
+        concat( round(IFNULL(SUM(CASE WHEN order_status != 80 THEN 1 ELSE 0 END), 0) / count(1) * 100,2 ),'%') as
+        'validOrderCountRate',
+        concat( round(IFNULL(SUM(CASE WHEN order_status != 80 THEN order_amount ELSE 0 END), 0) /IFNULL(SUM(
+        order_amount),0) * 100,2 ),'%') as 'validOrderAmountRate',
         IFNULL(SUM(CASE WHEN order_status != 80 THEN regimental_promotion_amount ELSE 0 END),0) AS
         'regimentalPromotionAmount',
         COUNT(DISTINCT promoter_id) as 'promoterCount'
@@ -1593,16 +1601,27 @@
                 #{item}
             </foreach>
         </if>
-        GROUP BY FROM_UNIXTIME(order_create_time / 1000, '%Y-%m-%d')
+        GROUP BY FROM_UNIXTIME(order_create_time / 1000, '%Y-%m-%d')) t left join valid_order_gmv_rate t2
+        on t.dateInt = t2.stat_date
+
     </select>
 
     <select id="getMonthOrderAmountBytedance" resultType="com.alibaba.fastjson.JSONObject">
+        select t.*,t2.valid_order_rate as 'validOrderRate', t2.valid_gmv_rate as 'validGmvRate'
+        from(
         SELECT
         DATE_FORMAT(pay_success_time, '%Y-%m-%d') as 'date',
+        pay_success_time as 'dateInt',
         count(1) AS 'orderCount',
         IFNULL(SUM(CASE WHEN flow_point != 'REFUND' THEN 1 ELSE 0 END), 0) AS 'validOrderCount',
+
         IFNULL(SUM( total_pay_amount),0) AS 'orderAmount',
         IFNULL(SUM(CASE WHEN flow_point != 'REFUND' THEN total_pay_amount ELSE 0 END),0) AS 'validOrderAmount',
+
+        concat( round(IFNULL(SUM(CASE WHEN flow_point != 'REFUND' THEN 1 ELSE 0 END), 0) / count(1) * 100,2 ),'%') as
+        'validOrderCountRate',
+        concat( round(IFNULL(SUM(CASE WHEN flow_point != 'REFUND' THEN total_pay_amount ELSE 0 END), 0) /IFNULL(SUM(
+        total_pay_amount),0) * 100,2 ),'%') as 'validOrderAmountRate',
         IFNULL(SUM(CASE WHEN flow_point != 'REFUND' THEN colonel_estimated_commission ELSE 0 END) * 0.9 ,0) AS
         'regimentalPromotionAmount',
         COUNT(DISTINCT author_short_id) as 'promoterCount'
@@ -1615,16 +1634,25 @@
                 #{item}
             </foreach>
         </if>
-        GROUP BY pay_success_time
+        GROUP BY pay_success_time) t left join bytedance_valid_order_gmv_rate t2
+        on t.dateInt = t2.stat_date
     </select>
 
     <select id="getMonthOrderAmountByItems" resultType="com.alibaba.fastjson.JSONObject">
+        select t.*,t2.valid_order_rate as 'validOrderRate',
+        t2.valid_gmv_rate as 'validGmvRate'
+        from (
         SELECT
         FROM_UNIXTIME(order_create_time / 1000, '%Y-%m-%d') as 'date',
+        FROM_UNIXTIME(order_create_time / 1000, '%Y%m%d') as 'dateInt',
         count(1) AS 'orderCount',
         IFNULL(SUM(CASE WHEN order_status != 80 THEN 1 ELSE 0 END), 0) AS 'validOrderCount',
         IFNULL(SUM(order_amount),0) AS 'orderAmount',
         IFNULL(SUM(CASE WHEN order_status != 80 THEN order_amount ELSE 0 END),0) AS 'validOrderAmount',
+        concat( round(IFNULL(SUM(CASE WHEN order_status != 80 THEN 1 ELSE 0 END), 0) / count(1) * 100,2 ),'%') as
+        'validOrderCountRate',
+        concat( round(IFNULL(SUM(CASE WHEN order_status != 80 THEN order_amount ELSE 0 END), 0) /IFNULL(SUM(
+        order_amount),0) * 100,2 ),'%') as 'validOrderAmountRate',
         IFNULL(SUM(CASE WHEN order_status != 80 THEN regimental_promotion_amount ELSE 0 END),0) AS
         'regimentalPromotionAmount'
         FROM kuaishou_supply_chain
@@ -1637,15 +1665,26 @@
                 #{item}
             </foreach>
         </if>
-        GROUP BY FROM_UNIXTIME(order_create_time / 1000, '%Y-%m-%d')
+        GROUP BY FROM_UNIXTIME(order_create_time / 1000, '%Y-%m-%d')) t left join valid_order_gmv_rate t2
+        on t.dateInt = t2.stat_date
     </select>
 
     <select id="getMonthOrderAmountByItemsBytedance" resultType="com.alibaba.fastjson.JSONObject">
+        select t.*, t2.valid_order_rate as 'validOrderRate',
+        t2.valid_gmv_rate as 'validGmvRate'
+        from (
         SELECT
         DATE_FORMAT(pay_success_time, '%Y-%m-%d') as 'date',
+        pay_success_time as 'dateInt',
         count(1) AS 'orderCount',
         IFNULL(SUM(CASE WHEN flow_point != 'REFUND' THEN 1 ELSE 0 END), 0) AS 'validOrderCount',
         IFNULL(SUM(CASE WHEN flow_point != 'REFUND' THEN total_pay_amount ELSE 0 END),0) AS 'orderAmount',
+
+        concat( round(IFNULL(SUM(CASE WHEN flow_point != 'REFUND' THEN 1 ELSE 0 END), 0) / count(1) * 100,2 ),'%') as
+        'validOrderCountRate',
+
+        concat( round(IFNULL(SUM(CASE WHEN flow_point != 'REFUND' THEN total_pay_amount ELSE 0 END), 0) /IFNULL(SUM(
+        total_pay_amount),0) * 100,2 ),'%') as 'validOrderAmountRate',
         IFNULL(SUM(CASE WHEN flow_point != 'REFUND' THEN colonel_estimated_commission ELSE 0 END) * 0.9,0) AS
         'regimentalPromotionAmount'
         FROM bytedance_order_list
@@ -1658,7 +1697,8 @@
                 #{item}
             </foreach>
         </if>
-        GROUP BY pay_success_time
+        GROUP BY pay_success_time) t left join bytedance_valid_order_gmv_rate t2
+        on t.dateInt = t2.stat_date
     </select>
 
     <select id="getMonthOrderAmountTotal" resultType="com.alibaba.fastjson.JSONObject">