瀏覽代碼

Merge remote-tracking branch 'origin/master'

zhouzeyu@c-top.com.cn 3 年之前
父節點
當前提交
4aeeaa853e

+ 1 - 0
module-job-kuaishou/src/main/java/cn/com/ctop/job/kuaishou/handler/KuaishouDailyAudienceReportJob.java

@@ -97,6 +97,7 @@ public class KuaishouDailyAudienceReportJob {
         if (param==null || param.trim().length()==0) {
             param = date;
         }
+        XxlJobHelper.log("人群分析报表数据开始聚合==>日期:", param);
         kuaishouAudienceReportDailyService.aggregationDataByProjectId(param,458L);
     }
 

+ 5 - 5
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/report/mapper/xml/KuaishouAudienceReportDailyMapper.xml

@@ -84,10 +84,10 @@
         limit #{startIndex},100000
     </insert>
     <select id="countTotal" resultType="java.lang.Integer">
-        select count(1)
-        from ${originTable}
-        where stat_date = #{date}
-          and project_id = #{projectId}
-        group by signature, ${originTableKey}
+        select count(*) from (select *
+         from ${originTable}
+         where stat_date = #{date}
+           and project_id = #{projectId}
+         group by signature, ${originTableKey})a
     </select>
 </mapper>

+ 3 - 3
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/report/service/impl/KuaishouAudienceReportDailyServiceImpl.java

@@ -417,15 +417,15 @@ public class KuaishouAudienceReportDailyServiceImpl extends ServiceImpl<Kuaishou
         this.aggregationData(date,projectId,AudienceReportTableEnum.PROVINCE.getOriginTable(),AudienceReportTableEnum.PROVINCE.getOriginTableKey(),AudienceReportTableEnum.PROVINCE.getAggregationTable(),AudienceReportTableEnum.PROVINCE.getAggregationTableKey());
     }
 
-    public void aggregationData(String date,Long projectId,String getOriginTable,String getOriginTableKey,String getAggregationTable,String getAggregationTableKey){
+    public void aggregationData(String date,Long projectId,String originTable,String originTableKey,String aggregationTable,String aggregationTableKey){
         //查询总数据量
-        Integer count = kuaishouAudienceReportDailyMapper.countTotal(date,projectId,getOriginTable,getOriginTableKey);
+        Integer count = kuaishouAudienceReportDailyMapper.countTotal(date,projectId,originTable,originTableKey);
         if(null == count||count == 0){
             return;
         }
         int startIndex = 0;
         while (count>0){
-            kuaishouAudienceReportDailyMapper.aggregationData(projectId,date,AudienceReportTableEnum.CITY.getOriginTable(),AudienceReportTableEnum.CITY.getOriginTableKey(),AudienceReportTableEnum.CITY.getAggregationTable(),AudienceReportTableEnum.CITY.getAggregationTableKey(),startIndex);
+            kuaishouAudienceReportDailyMapper.aggregationData(projectId,date,originTable,originTableKey,aggregationTable,aggregationTableKey,startIndex);
             startIndex+=100000;
             count-=100000;
         }