|
@@ -10,18 +10,68 @@ import cn.com.ctop.common.module.service.IMaterialCutFrameService;
|
|
import cn.com.ctop.common.module.service.IMessageTemplate;
|
|
import cn.com.ctop.common.module.service.IMessageTemplate;
|
|
import cn.com.ctop.common.module.service.IOauthConfigService;
|
|
import cn.com.ctop.common.module.service.IOauthConfigService;
|
|
import cn.com.ctop.common.module.service.IUserAllocationService;
|
|
import cn.com.ctop.common.module.service.IUserAllocationService;
|
|
-import cn.com.ctop.common.module.utils.*;
|
|
|
|
-import cn.com.ctop.kuaishou.modules.ai.service.*;
|
|
|
|
-import cn.com.ctop.kuaishou.modules.batch.entity.*;
|
|
|
|
|
|
+import cn.com.ctop.common.module.utils.Check;
|
|
|
|
+import cn.com.ctop.common.module.utils.CtopAdConstant;
|
|
|
|
+import cn.com.ctop.common.module.utils.HttpUtils;
|
|
|
|
+import cn.com.ctop.common.module.utils.JsonUtil;
|
|
|
|
+import cn.com.ctop.common.module.utils.KuaishouInterfaceConstant;
|
|
|
|
+import cn.com.ctop.common.module.utils.PropertiesUtils;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.ai.service.IAiCreativeLimitService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.ai.service.IKuaishouAccountCreativeOverrunInfoService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.ai.service.IKuaishouAppPackageService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.ai.service.IKuaishouDirectionalPackageService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.ai.service.IKuaishouLandpagePackageService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.ai.service.IKuaishouPopulationGroupService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouAdvertiserBaseInfo;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouAppList;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouCampaign;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouCreative;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouDailyFlows;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouGroup;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouImageGet;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouRegionListChildren;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouRegionListParent;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouTargetingTags;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaiShouVideoGet;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.entity.KuaishouPopulation;
|
|
import cn.com.ctop.kuaishou.modules.batch.entity.vo.ConvertVo;
|
|
import cn.com.ctop.kuaishou.modules.batch.entity.vo.ConvertVo;
|
|
-import cn.com.ctop.kuaishou.modules.batch.mapper.*;
|
|
|
|
-import cn.com.ctop.kuaishou.modules.batch.service.*;
|
|
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.mapper.KuaiShouAdvertiserBaseInfoMapper;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.mapper.KuaiShouAppListMapper;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.mapper.KuaiShouGroupMapper;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.mapper.KuaiShouRegionListChildrenMapper;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.mapper.KuaiShouRegionListParentMapper;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.mapper.KuaiShouTargetingTagsMapper;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaiShouCampaignService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaiShouCreativeService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaiShouDailyFlowsService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaiShouGroupService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaiShouHistoryReportTaskService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaiShouImageGetService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaiShouOverRunSendMessageService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaiShouVideoGetService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaishouInterfaceService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaishouPopulationService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.batch.service.IWarningOperationService;
|
|
import cn.com.ctop.kuaishou.modules.material.entity.KuaishouResult;
|
|
import cn.com.ctop.kuaishou.modules.material.entity.KuaishouResult;
|
|
import cn.com.ctop.kuaishou.modules.material.entity.KuaishouResultToken;
|
|
import cn.com.ctop.kuaishou.modules.material.entity.KuaishouResultToken;
|
|
-import cn.com.ctop.kuaishou.modules.report.entity.*;
|
|
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.entity.KuaishouReportDailyAccount;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.entity.KuaishouReportDailyCampaign;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.entity.KuaishouReportDailyCreative;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.entity.KuaishouReportDailyCreativeStatistic;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.entity.KuaishouReportHourlyAccount;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.entity.KuaishouReportHourlyCampaign;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.entity.KuaishouReportHourlyCreative;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.entity.KuaishouReportHourlyCreativeStatistic;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.entity.KuaishouReportHourlyGroup;
|
|
import cn.com.ctop.kuaishou.modules.report.mapper.KuaishouReportDailyAccountMapper;
|
|
import cn.com.ctop.kuaishou.modules.report.mapper.KuaishouReportDailyAccountMapper;
|
|
import cn.com.ctop.kuaishou.modules.report.mapper.KuaishouReportDailyCampaignMapper;
|
|
import cn.com.ctop.kuaishou.modules.report.mapper.KuaishouReportDailyCampaignMapper;
|
|
-import cn.com.ctop.kuaishou.modules.report.service.*;
|
|
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.service.IKuaishouReportDailyCampaignService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.service.IKuaishouReportDailyCreativeService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.service.IKuaishouReportHourlyAccountService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.service.IKuaishouReportHourlyCampaignService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.service.IKuaishouReportHourlyCreativeService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.service.IKuaishouReportHourlyGroupService;
|
|
|
|
+import cn.com.ctop.kuaishou.modules.report.service.IRuleKuaiShouPlanService;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
@@ -56,7 +106,11 @@ import java.io.IOException;
|
|
import java.lang.reflect.ParameterizedType;
|
|
import java.lang.reflect.ParameterizedType;
|
|
import java.lang.reflect.Type;
|
|
import java.lang.reflect.Type;
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
-import java.util.*;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
+import java.util.Date;
|
|
|
|
+import java.util.HashMap;
|
|
|
|
+import java.util.List;
|
|
|
|
+import java.util.Map;
|
|
import java.util.concurrent.ExecutorService;
|
|
import java.util.concurrent.ExecutorService;
|
|
import java.util.concurrent.Executors;
|
|
import java.util.concurrent.Executors;
|
|
|
|
|
|
@@ -2904,6 +2958,67 @@ public class KuaishouInterfaceServiceImpl implements IKuaishouInterfaceService {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 获取联盟定向媒体包列表
|
|
|
|
+ *
|
|
|
|
+ * @param accountId
|
|
|
|
+ * @param accessToken
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ @Override
|
|
|
|
+ public void getMediaList(Long accountId, String accessToken, Integer page) {
|
|
|
|
+ List<JSONObject> list = new ArrayList<>();
|
|
|
|
+ try {
|
|
|
|
+ log.info("获取人群包列表,accountId:{}", accountId);
|
|
|
|
+ String url = PropertiesUtils.getConfig("kuaishou_api_url") + KuaishouInterfaceConstant.MEDIA_LIST;
|
|
|
|
+ Map<String, String> headers = new HashMap<>();
|
|
|
|
+ headers.put("Access-Token", accessToken);
|
|
|
|
+ headers.put("Content-Type", "application/json");
|
|
|
|
+ JSONObject requestJson = new JSONObject();
|
|
|
|
+ requestJson.put("advertiser_id", accountId);
|
|
|
|
+ requestJson.put("page", page);
|
|
|
|
+ requestJson.put("page_size", 50);
|
|
|
|
+ String result = HttpUtils.kuaiShouhttpPostRequest(url, requestJson.toJSONString(), headers);
|
|
|
|
+ JSONObject resultJson = JSONObject.parseObject(result);
|
|
|
|
+ if (!Check.isNull(resultJson)) {
|
|
|
|
+ Integer code = resultJson.getInteger("code");
|
|
|
|
+ if (code == 0) {
|
|
|
|
+ JSONObject dataDetailJson = resultJson.getJSONObject("data");
|
|
|
|
+ if (Check.isNull(dataDetailJson)) {
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ JSONArray details = dataDetailJson.getJSONArray("details");
|
|
|
|
+ if (Check.isNull(details)) {
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ for (int i = 0; i < details.size(); i++) {
|
|
|
|
+ JSONObject jsonObject = details.getJSONObject(i);
|
|
|
|
+ JSONObject media = jsonObject.getJSONObject("media");
|
|
|
|
+ if (!Check.isNull(media)) {
|
|
|
|
+ media.put("posIds",media.getString("posIds"));
|
|
|
|
+ media.put("accountId",accountId);
|
|
|
|
+ list.add(media);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (!list.isEmpty()) {
|
|
|
|
+ populationService.replaceBatchMedia(list);
|
|
|
|
+ }
|
|
|
|
+ if (list.size() >= 50) {
|
|
|
|
+ getMediaList(accountId, accessToken, page + 1);
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ log.error("获取联盟定向媒体包列表失败,accountId:{},返回:{}", accountId, resultJson);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public List<JSONObject> getMedias(Long accountId) {
|
|
|
|
+ return populationService.getMedias(accountId);
|
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
/**
|
|
* 获取定向标签
|
|
* 获取定向标签
|
|
@@ -3522,5 +3637,4 @@ public class KuaishouInterfaceServiceImpl implements IKuaishouInterfaceService {
|
|
return returnJson;
|
|
return returnJson;
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
}
|
|
}
|