zhaoxian 3 éve
szülő
commit
601388596f

+ 31 - 3
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/mapper/xml/BytedanceAccountReportDailyDwMapper.xml

@@ -106,7 +106,14 @@
         SUM( `show` ) AS 'aclick',
         SUM( click ) AS 'bclick',
         IFNULL( t6.num, 0 ) AS 'num',
-        IFNULL(concat(round((sum(cost) - t7.costs) / t7.costs * 100, 2), '%'), '-') as 'rio'
+        IFNULL(concat(round((sum(cost) - t7.costs) / t7.costs * 100, 2), '%'), '-') as 'rio',
+        IFNULL(t8.unitNum,0) as 'unitNum',
+        '-' AS 'ssAd',
+        '-' AS 'sxhAd',
+        '-' AS 'lmAd',
+        '-' AS 'xxlAd',
+        '-' AS 'jlAd',
+        '-' AS 'kpAd'
         FROM application.bytedance_advertiser_report_hourly_dw t1
         LEFT JOIN `jeecg-boot`.ctop_product t2 ON t2.id = t1.product_id
         LEFT JOIN `jeecg-boot`.ctop_project t3 ON t1.project_id = t3.id
@@ -126,7 +133,7 @@
         LEFT JOIN (
         SELECT project_id, SUM(cost) as 'costs'
         FROM application.bytedance_advertiser_report_hourly_dw
-        WHERE stat_datetime = DATE_FORMAT(DATE_SUB(20220804, INTERVAL 1 DAY ), '%Y%m%d')
+        WHERE stat_datetime = DATE_FORMAT(DATE_SUB(#{startTime}, INTERVAL 1 DAY ), '%Y%m%d')
         AND hour <= #{hour}
         AND company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')
         <if test="projectId != null and projectId != ''">
@@ -136,6 +143,12 @@
             GROUP BY project_id
         </if>
         ) t7 ON t1.project_id = t7.project_id
+        LEFT JOIN (
+        SELECT project_id , SUM(new_ad_num) as 'unitNum' FROM app_bytedance_account_base_info_d
+        WHERE stat_date =DATE_FORMAT(DATE_SUB(#{startTime}, INTERVAL 1 DAY ), '%Y%m%d')
+        AND company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')
+        GROUP BY project_id
+        ) t8 ON t1.project_id = t8.project_id
         WHERE stat_datetime = #{startTime}
         AND t1.company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')
         <if test="projectId != null and projectId != ''">
@@ -143,6 +156,7 @@
         </if>
         <if test="projectId == null">
             GROUP BY t1.project_id
+            HAVING sum(charge) > 0
             ORDER BY sum(cost) desc
         </if>
     </select>
@@ -175,7 +189,14 @@
         SUM( `show` ) AS 'aclick',
         SUM( click ) AS 'bclick',
         IFNULL(t6.num, 0 ) AS 'num',
-        '-' as 'rio'
+        '-' as 'rio',
+        IFNULL(t8.unitNum,0) as 'unitNum',
+        '-' AS 'ssAd',
+        '-' AS 'sxhAd',
+        '-' AS 'lmAd',
+        '-' AS 'xxlAd',
+        '-' AS 'jlAd',
+        '-' AS 'kpAd'
         FROM application.bytedance_advertiser_report_daily_dw t1
         LEFT JOIN `jeecg-boot`.ctop_product t2 ON t2.id = t1.product_id
         LEFT JOIN `jeecg-boot`.ctop_project t3 ON t1.project_id = t3.id
@@ -193,6 +214,13 @@
             GROUP BY project_id
         </if>
         ) t6 ON t1.project_id = t6.project_id
+        LEFT JOIN (
+        SELECT project_id , SUM(new_ad_num) as 'unitNum' FROM app_bytedance_account_base_info_d
+        WHERE stat_date >= #{startTime}
+        stat_date &lt;= #{endTime}
+        AND company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')
+        GROUP BY project_id
+        ) t8 ON t1.project_id = t8.project_id
         WHERE stat_datetime >= #{startTime}
         AND stat_datetime &lt;= #{endTime}
         AND t1.company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')

+ 46 - 2
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/mapper/xml/KuaishouAccountReportDailyDwMapper.xml

@@ -109,7 +109,14 @@
         SUM(aclick) as 'aclick',
         SUM(bclick) as 'bclick',
         IFNULL(t6.num,0) as 'num',
-        IFNULL(concat(round((sum(charge) - t7.charges) / t7.charges * 100, 2), '%'), '-') as 'rio'
+        IFNULL(concat(round((sum(charge) - t7.charges) / t7.charges * 100, 2), '%'), '-') as 'rio',
+        IFNULL(t8.unitNum,0) as 'unitNum',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='搜索广告' THEN t9.sceneCharge END),'-') AS 'ssAd',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='上下滑大屏广告' THEN t9.sceneCharge END),'-') AS 'sxhAd',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='联盟' THEN t9.sceneCharge END),'-') AS 'lmAd',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='信息流广告' THEN t9.sceneCharge END),'-') AS 'xxlAd',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='激励视频广告' THEN t9.sceneCharge END),'-') AS 'jlAd',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='开屏广告' THEN t9.sceneCharge END),'-') AS 'kpAd'
         FROM application.kuaishou_account_report_hourly_dw t1
         LEFT JOIN `jeecg-boot`.ctop_product t2 ON t2.id = t1.product_id
         LEFT JOIN `jeecg-boot`.ctop_project t3 ON t1.project_id = t3.id
@@ -139,6 +146,19 @@
             GROUP BY project_id
         </if>
         ) t7 ON t1.project_id = t7.project_id
+        LEFT JOIN (
+        SELECT project_id , SUM(new_unit_num) as 'unitNum' FROM app_kuaishou_account_base_info_d
+        WHERE stat_date =DATE_FORMAT(DATE_SUB(#{startTime}, INTERVAL 1 DAY ), '%Y%m%d')
+        AND company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')
+        GROUP BY project_id
+        ) t8 ON t1.project_id = t8.project_id
+        LEFT JOIN (
+        SELECT project_id ,ad_scene, SUM(charge) as 'sceneCharge' FROM app_kuaishou_account_ad_scene_report_d
+        WHERE stat_date =DATE_FORMAT(DATE_SUB(#{startTime}, INTERVAL 1 DAY ), '%Y%m%d')
+        AND company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')
+        GROUP BY project_id,ad_scene
+        ORDER BY project_id
+        ) t9 ON t1.project_id = t9.project_id
         WHERE stat_date = #{startTime}
         AND t1.company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')
         <if test="projectId != null and projectId != ''">
@@ -146,6 +166,7 @@
         </if>
         <if test="projectId == null">
             GROUP BY t1.project_id
+            HAVING sum(charge) > 0
             ORDER BY sum(charge) desc
         </if>
     </select>
@@ -179,7 +200,14 @@
         SUM(aclick) as 'aclick',
         SUM(bclick) as 'bclick',
         IFNULL(t6.num,0) as 'num',
-        '-' as 'rio'
+        '-' as 'rio',
+        IFNULL(t8.unitNum,0) as 'unitNum',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='搜索广告' THEN t9.sceneCharge END),'-') AS 'ssAd',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='上下滑大屏广告' THEN t9.sceneCharge END),'-') AS 'sxhAd',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='联盟' THEN t9.sceneCharge END),'-') AS 'lmAd',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='信息流广告' THEN t9.sceneCharge END),'-') AS 'xxlAd',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='激励视频广告' THEN t9.sceneCharge END),'-') AS 'jlAd',
+        IFNULL(GROUP_CONCAT(DISTINCT CASE WHEN t9.ad_scene ='开屏广告' THEN t9.sceneCharge END),'-') AS 'kpAd'
         FROM application.kuaishou_account_report_daily_dw t1
         LEFT JOIN `jeecg-boot`.ctop_product t2 ON t2.id = t1.product_id
         LEFT JOIN `jeecg-boot`.ctop_project t3 ON t1.project_id = t3.id
@@ -197,6 +225,21 @@
             GROUP BY project_id
         </if>
         ) t6 ON t1.project_id = t6.project_id
+        LEFT JOIN (
+        SELECT project_id , SUM(new_unit_num) as 'unitNum' FROM app_kuaishou_account_base_info_d
+        WHERE stat_date >= #{startTime}
+        AND stat_date &lt;= #{endTime}
+        AND company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')
+        GROUP BY project_id
+        ) t8 ON t1.project_id = t8.project_id
+        LEFT JOIN (
+        SELECT project_id ,ad_scene, SUM(charge) as 'sceneCharge' FROM app_kuaishou_account_ad_scene_report_d
+        WHERE stat_date >= #{startTime}
+        AND stat_date &lt;= #{endTime}
+        AND company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')
+        GROUP BY project_id,ad_scene
+        ORDER BY project_id
+        ) t9 ON t1.project_id = t9.project_id
         WHERE stat_date >= #{startTime}
         AND stat_date &lt;= #{endTime}
         AND t1.company_id in ('5e46b5dea3d740eeb8ff1a2895015a4b' , 'd57fecdcf7a94d009736d9c850731582')
@@ -205,6 +248,7 @@
         </if>
         <if test="projectId == null">
             GROUP BY t1.project_id
+            HAVING sum(charge) > 0
             ORDER BY sum(charge) desc
         </if>
     </select>

+ 8 - 10
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/service/impl/BytedanceAccountReportDailyDwServiceImpl.java

@@ -1,8 +1,6 @@
 package org.jeecg.ctop.material.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.util.DateUtils;
 import org.jeecg.ctop.material.mapper.BytedanceAccountReportDailyDwMapper;
@@ -83,18 +81,18 @@ public class BytedanceAccountReportDailyDwServiceImpl implements IBytedanceAccou
         List<JSONObject> data = null;
         Long total = null;
         if (startTime.equals(endTime) && today.equals(startTime)) {
-            total = bytedanceAccountReportDailyDwMapper.getProjectToDayReportTotal(projectId, startTimeInt, nowHour);
-            PageHelper.startPage(pageNo, pageSize, false);
+//            total = bytedanceAccountReportDailyDwMapper.getProjectToDayReportTotal(projectId, startTimeInt, nowHour);
+//            PageHelper.startPage(pageNo, pageSize, false);
             data = bytedanceAccountReportDailyDwMapper.getProjectToDayReport(projectId, startTimeInt, nowHour);
         } else {
-            total = bytedanceAccountReportDailyDwMapper.getProjectMoreDaysReportTotal(projectId, startTimeInt, endTimeInt, nowHour);
-            PageHelper.startPage(pageNo, pageSize, false);
+//            total = bytedanceAccountReportDailyDwMapper.getProjectMoreDaysReportTotal(projectId, startTimeInt, endTimeInt, nowHour);
+//            PageHelper.startPage(pageNo, pageSize, false);
             data = bytedanceAccountReportDailyDwMapper.getProjectMoreDaysReport(projectId, startTimeInt, endTimeInt, nowHour);
         }
-        PageInfo<JSONObject> page = new PageInfo<>();
-        page.setList(data);
-        page.setTotal(total);
-        return Result.OK(page);
+//        PageInfo<JSONObject> page = new PageInfo<>();
+//        page.setList(data);
+//        page.setTotal(total);
+        return Result.OK(data);
     }
 
 }

+ 8 - 8
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/service/impl/KuaishouAccountReportDailyDwServiceImpl.java

@@ -82,17 +82,17 @@ public class KuaishouAccountReportDailyDwServiceImpl implements IKuaishouAccount
         List<JSONObject> data = null;
         Long total = null;
         if (startTime.equals(endTime) && today.equals(startTime)) {
-            total = kuaishouAccountReportDailyDwMapper.getProjectToDayReportTotal(projectId, startTimeInt, nowHour);
-            PageHelper.startPage(pageNo, pageSize, false);
+//            total = kuaishouAccountReportDailyDwMapper.getProjectToDayReportTotal(projectId, startTimeInt, nowHour);
+//            PageHelper.startPage(pageNo, pageSize, false);
             data = kuaishouAccountReportDailyDwMapper.getProjectToDayReport(projectId, startTimeInt, nowHour);
         } else {
-            total = kuaishouAccountReportDailyDwMapper.getProjectMoreDaysReportTotal(projectId, startTimeInt, endTimeInt, nowHour);
-            PageHelper.startPage(pageNo, pageSize, false);
+//            total = kuaishouAccountReportDailyDwMapper.getProjectMoreDaysReportTotal(projectId, startTimeInt, endTimeInt, nowHour);
+//            PageHelper.startPage(pageNo, pageSize, false);
             data = kuaishouAccountReportDailyDwMapper.getProjectMoreDaysReport(projectId, startTimeInt, endTimeInt, nowHour);
         }
-        PageInfo<JSONObject> page = new PageInfo<>();
-        page.setList(data);
-        page.setTotal(total);
-        return Result.OK(page);
+//        PageInfo<JSONObject> page = new PageInfo<>();
+//        page.setList(data);
+//        page.setTotal(total);
+        return Result.OK(data);
     }
 }