ソースを参照

定制代码——获取年龄人群月数据

zhaoxian 4 年 前
コミット
349e337641

+ 11 - 81
module-job-kuaishou/src/main/java/cn/com/ctop/job/kuaishou/handler/KuaishouDailyAudienceReportJob.java

@@ -37,94 +37,25 @@ public class KuaishouDailyAudienceReportJob {
 
     @XxlJob("kuaishouDailyAudienceReportJob")
     public void execute() throws Exception {
-//        List<CtopOauthToken> tokens = tokenService.selectKuaiShouToken();
-//        if (null == tokens || tokens.isEmpty()) {
-//            XxlJobHelper.log("定时获取人群分析报表数据异常:未获取到可用的token");
-//            XxlJobHelper.handleFail();
-//            return;
-//        }
-//        //查询手淘有效账户数据
-//        List<Long> accountIds = kuaishouStrategyService.queryShouTaoAccounts();
-//        if (Check.isNull(accountIds) || accountIds.size() == 0) {
-//            XxlJobHelper.log("定时获取人群分析报表数据异常:未获取到有效策略账户信息");
-//            XxlJobHelper.handleFail();
-//            return;
-//        }
-//        //筛选出有效账户,获取该账户的组级人群报表数据
-//        List<CtopOauthToken> activeTokens = new ArrayList<>();
-//        for (Long accountId : accountIds) {
-//            for (CtopOauthToken token : tokens) {
-//                if (token.getAccountId() - accountId == 0) {
-//                    activeTokens.add(token);
-//                }
-//            }
-//        }
-//        if (!Check.isNull(activeTokens) && activeTokens.size() > 0) {
-//            int page = 1;
-//            int pageSize = 2000;
-//            //查询两天前日期
-//            String date = DateUtils.getLastDay(DateUtils.date2Str(), 2);
-//            activeTokens.forEach(token -> executorService.submit(() -> {
-//                getAudienceReportData(token, date, "province", page, pageSize);
-//                getAudienceReportData(token, date, "city", page, pageSize);
-//                getAudienceReportData(token, date, "gender", page, pageSize);
-//                getAudienceReportData(token, date, "ageSegment", page, pageSize);
-//                getAudienceReportData(token, date, "clientId", page, pageSize);
-//                getAudienceReportData(token, date, "businessInterestTags", page, pageSize);
-//            }));
-//        }
-//    }
-//
-//    private void getAudienceReportData(CtopOauthToken token, String date, String type, Integer page, Integer pageSize) {
-//        try {
-//            List<KuaiShouGroup> kuaiShouGroups = kuaiShouGroupService.queryUnitInfoByAccountId(token.getAccountId());
-//            for (KuaiShouGroup kuaiShouGroup : kuaiShouGroups) {
-//                kuaishouAudienceReportDailyService.crowdAnalysisReport(token, date, type, kuaiShouGroup.getCampaignId(), kuaiShouGroup.getUnitId(), page, pageSize);
-//            }
-//        } catch (Exception e) {
-//            XxlJobHelper.log("定时获取人群分析报表数据异常", e);
-//        }
-//    }
-        ReportDaily();
-    }
-
-    public void ReportDaily() throws Exception {
-        //查询两天前数据  策略
         List<String> dates = new ArrayList<>();
         for (int i = 2; i < 33; i++) {
             String dat = DateUtils.getLastDay(DateUtils.date2Str(), i);
             dates.add(dat);
         }
-//        List<CtopOauthToken> tokens = tokenService.selectKuaiShouToken();
-        //筛选出有效账户,获取该账户的组级人群报表数据
-//        List<CtopOauthToken> activeTokens = new ArrayList<>();
-//        List<Long> accountIds = new ArrayList<>();
-//        accountIds.add(9556344L);
-//        accountIds.add(9743727L);
-//        accountIds.add(9743738L);
-//        accountIds.add(9901966L);
-//        accountIds.add(9767034L);
-//        accountIds.add(9812668L);
-//        for (Long accountId : accountIds) {
-//            for (CtopOauthToken token : tokens) {
-//                if (token.getAccountId() - accountId == 0) {
-//                    activeTokens.add(token);
-//                }
-//            }
-//        }
-
+        //  9556344、9743727、9743738、9812668、9901966、9767034
         CtopOauthToken token = tokenService.getTokenByAccountId(9556344L);
         int page = 1;
         int pageSize = 2000;
-            List<KuaiShouGroup> kuaiShouGroups = kuaiShouGroupService.queryUnitInfoByAccountId(token.getAccountId());
-            dates.forEach(date -> executorService.submit(() -> {
-                getAudienceReportData(kuaiShouGroups, token, date, "ageSegment", page, pageSize);
-                //                getAudienceReportData(token, date, "gender", page, pageSize);
-                //                getAudienceReportData(token, date, "businessInterestTags", page, pageSize);
-                //            getAudienceReportData(token, date, "city", page, pageSize);
-                //            getAudienceReportData(token, date, "clientId", page, pageSize);
-                //            getAudienceReportData(token, date, "province", page, pageSize);
-            }));
+        List<KuaiShouGroup> kuaiShouGroups = kuaiShouGroupService.queryUnitInfoByAccountId(token.getAccountId());
+        XxlJobHelper.log("---------------广告组:" + kuaiShouGroups.size());
+        dates.forEach(date -> executorService.submit(() -> {
+            getAudienceReportData(kuaiShouGroups, token, date, "ageSegment", page, pageSize);
+            //                getAudienceReportData(token, date, "gender", page, pageSize);
+            //                getAudienceReportData(token, date, "businessInterestTags", page, pageSize);
+            //            getAudienceReportData(token, date, "city", page, pageSize);
+            //            getAudienceReportData(token, date, "clientId", page, pageSize);
+            //            getAudienceReportData(token, date, "province", page, pageSize);
+        }));
     }
 
     private void getAudienceReportData(List<KuaiShouGroup> kuaiShouGroups, CtopOauthToken token, String date, String type, Integer page, Integer pageSize) {
@@ -137,5 +68,4 @@ public class KuaishouDailyAudienceReportJob {
             XxlJobHelper.log("定时获取人群分析报表数据异常", e);
         }
     }
-
 }