|
@@ -1,5 +1,7 @@
|
|
|
package org.jeecg.modules.ctop.controller;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
@@ -29,7 +31,8 @@ public class ByteDanceAdvertiserPostController {
|
|
|
private IByteDanceAdvertiserDataService advertiserDataService;
|
|
|
|
|
|
/**
|
|
|
- * 1:获取广告主信息 @param accountId 本平台广告主id
|
|
|
+ * 1:获取广告主信息
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/info")
|
|
|
public Map<String, Object> advertiserInfo(String accountId) {
|
|
@@ -37,7 +40,8 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 2:获取广告主广告计划信息 @param accountId 本平台广告主id
|
|
|
+ * 2:获取广告主广告计划信息
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/plan/get")
|
|
|
public Map<String, Object> advertiserPlan(String accountId, String ids) {
|
|
@@ -45,7 +49,8 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 3:修改广告计划信息状态 @param accountId 本平台广告主id
|
|
|
+ * 3:修改广告计划信息状态
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/plan/update/status")
|
|
|
public Map<String, Object> advertiserPlanUpdateStatus(String accountId, String adIds, String optStatus) {
|
|
@@ -53,7 +58,8 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 4:修改广告计划信息状态 @param accountId 本平台广告主id
|
|
|
+ * 4:修改广告计划信息状态
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/plan/update/bid")
|
|
|
public Map<String, Object> advertiserPlanUpdateBid(String accountId, String adIds, String bids) {
|
|
@@ -61,7 +67,8 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 5:修改广告计划信息状态 @param accountId 本平台广告主id
|
|
|
+ * 5:修改广告计划信息状态
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/plan/update/budget")
|
|
|
public Map<String, Object> advertiserPlanUpdateBudget(String accountId, String adIds, String budgets) {
|
|
@@ -69,7 +76,8 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 6:获取广告主广告预算信息 @param accountId 本平台广告主id
|
|
|
+ * 6:获取广告主广告预算信息
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/budget/get/")
|
|
|
public Map<String, Object> advertiserBudget(String accountId) {
|
|
@@ -77,7 +85,8 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 7:获取广告主广告组信息 @param accountId 本平台广告主id
|
|
|
+ * 7:获取广告主广告组信息
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/campaign/get")
|
|
|
public Map<String, Object> advertiserCampaign(String accountId, String ids) {
|
|
@@ -85,7 +94,8 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 8:获取广告主广告创意信息 @param accountId 本平台广告主id
|
|
|
+ * 8:获取广告主广告创意信息
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/creative/get")
|
|
|
public Map<String, Object> getAdvertiserCreative(String accountId, String ids) {
|
|
@@ -93,7 +103,8 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 9:修改广告创意信息状态 @param accountId 本平台广告主id
|
|
|
+ * 9:修改广告创意信息状态
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/update/status/")
|
|
|
public Map<String, Object> advertiserCreativeUpdateStatus(String accountId, String creativeIds, String optStatus) {
|
|
@@ -101,7 +112,9 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 10:获取广告主广告创意素材信息 @param accountId 本平台广告主id @param creativeIds 广告创意id
|
|
|
+ * 10:获取广告主广告创意素材信息
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
+ * @param creativeIds 广告创意id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/creative/material/read")
|
|
|
public Map<String, Object> advertiserCreativeMaterial(String accountId, String creativeIds) {
|
|
@@ -109,13 +122,107 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 11:创建广告组信息 @param accountId 本平台广告主id
|
|
|
+ * 11:创建广告组信息
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
*/
|
|
|
@RequestMapping("/advertiser/campaign/create")
|
|
|
public Map<String, Object> advertiserCampaignCreate(String accountId, String campaignName, String budgetMode, Integer budget, String landingType) {
|
|
|
return advertiserDataService.advertiserCampaignCreate(accountId, campaignName, budgetMode, budget, landingType);
|
|
|
}
|
|
|
|
|
|
+// /**
|
|
|
+// * 11:创建广告计划信息
|
|
|
+// * @param accountId 本平台广告主id
|
|
|
+// */
|
|
|
+// @RequestMapping("/advertiser/plan/create")
|
|
|
+// public Map<String, Object> advertiserPlanCreate(String accountId, Long campaignId, String deliveryRange, String budgetMode, String budget,String startTime,String endTime,
|
|
|
+// Integer bid,String pricing,String scheduleType,String scheduleTime,String flowControlMode,String openUrl,String downloadType,String externalUrl,String downloadUrl,
|
|
|
+// String name,String appType,String packageName,String hideIfConverted,String advertiserStoreIds,String storeType,String hideIfExists,String cpaBid,String convertId,String externalActions,
|
|
|
+// String unionVideoType,String deepBidType,String deepCpabid,String smartBidType,String adjustCpa,String retargetingTagsInclude,String retargetingTagsExclude,String gender,String age,String androidOsv,
|
|
|
+// String iosOsv,String carrier,String ac,String deviceBrand,String articleCategory,String activateType,String platform,String city,String businessIds,String district,String locationType,String adTag,String interestTags,String appBehaviorTarget,
|
|
|
+// String appCategory,String appIds,String productPlatformId,String externalUrlParams,String openUrlParams,String dpaLocalAudience,String includeCustomActions,String excludeCustomActions,String superiorPopularityType,String flowPackage,String excludeFlowPackage,
|
|
|
+// String dpaCategories,String dpaProducts,String dpaAdtype,String paramsType,String dpaExternalUrls,String dpa_externalUrlField,String dpaOpenUrlType,String dpaOpenUrls,String dpaOpenUrlField,String dpaProductTarget,String title,String type,String rule,String value) {
|
|
|
+// return advertisePlanService.advertiserPlanCreate(accountId,campaignId,deliveryRange,budgetMode,budget,startTime,endTime,
|
|
|
+// bid,pricing,scheduleType,scheduleTime,flowControlMode,openUrl,downloadType,externalUrl,downloadUrl,
|
|
|
+// name,appType,packageName,hideIfConverted,advertiserStoreIds,storeType,hideIfExists,cpaBid,convertId,externalActions,
|
|
|
+// unionVideoType,deepBidType,deepCpabid,smartBidType,adjustCpa,retargetingTagsInclude,retargetingTagsExclude,gender,age,androidOsv,
|
|
|
+// iosOsv,carrier,ac,deviceBrand,articleCategory,activateType,platform,city,businessIds,district,locationType,adTag,interestTags,appBehaviorTarget,
|
|
|
+// appCategory,appIds,productPlatformId,externalUrlParams,openUrlParams,dpaLocalAudience,includeCustomActions,excludeCustomActions,superiorPopularityType,flowPackage,excludeFlowPackage,
|
|
|
+// dpaCategories,dpaProducts,dpaAdtype,paramsType,dpaExternalUrls,dpa_externalUrlField,dpaOpenUrlType,dpaOpenUrls,dpaOpenUrlField,dpaProductTarget,title,type,rule,value);
|
|
|
+// }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 11:创建广告计划信息
|
|
|
+ */
|
|
|
+ @RequestMapping("/advertiser/plan/create")
|
|
|
+ public Map<String, Object> advertiserPlanCreate() {
|
|
|
+ String accountId = "e9ca23d68d884d4ebb19d07889727dae";
|
|
|
+ Long campaignId = 1640397758132260L;
|
|
|
+ JSONObject data = new JSONObject();
|
|
|
+ data.put("campaign_id", campaignId);
|
|
|
+ data.put("delivery_range", "DEFAULT");
|
|
|
+ data.put("budget_mode", "BUDGET_MODE_DAY");
|
|
|
+ data.put("budget", 2000);//需要大于bid
|
|
|
+ data.put("bid", 100);
|
|
|
+ data.put("start_time", "2019-07-30 01:00");
|
|
|
+ data.put("end_time", "2019-07-31 01:00");
|
|
|
+ data.put("pricing", "PRICING_CPM");
|
|
|
+ data.put("schedule_type", "SCHEDULE_FROM_NOW");
|
|
|
+ data.put("flow_control_mode", "FLOW_CONTROL_MODE_FAST");
|
|
|
+ data.put("name", "测试计划名称");
|
|
|
+ data.put("external_url", "https://lordsmobile.176.com/download.php");
|
|
|
+ data.put("download_url", "https://lordsmobile.176.com/download.php");
|
|
|
+ data.put("download_type", "DOWNLOAD_URL");//坑
|
|
|
+ data.put("package", "com.igg.android.lordsmobile_cn");//坑
|
|
|
+ data.put("app_type", "APP_ANDROID");//坑
|
|
|
+ return advertisePlanService.advertiserPlanCreate(accountId, campaignId, data.toJSONString());
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 11:创建广告创意信息
|
|
|
+ *
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
+ */
|
|
|
+ @RequestMapping("/advertiser/creative/create")
|
|
|
+ public Map<String, Object> advertiserCreativeCreate(String accountId, Long campaignId, String dataString) {
|
|
|
+ String getAccountId = "e9ca23d68d884d4ebb19d07889727dae";
|
|
|
+ Long adId = 1640445647618076L;
|
|
|
+ JSONObject data = new JSONObject();
|
|
|
+ JSONArray jsonArray = new JSONArray();
|
|
|
+ jsonArray.add("INVENTORY_FEED");
|
|
|
+ jsonArray.add("INVENTORY_VIDEO_FEED");
|
|
|
+ jsonArray.add("INVENTORY_HOTSOON_FEED");
|
|
|
+ jsonArray.add("INVENTORY_AWEME_FEED");
|
|
|
+ jsonArray.add("INVENTORY_UNION_SLOT");
|
|
|
+ data.put("inventory_type", jsonArray);
|
|
|
+
|
|
|
+ data.put("ad_id", adId);
|
|
|
+
|
|
|
+ data.put("app_name", "asdasd");
|
|
|
+
|
|
|
+ data.put("web_url", "http://www.chengzijianzhan.com/tetris/page/1593177139994627/");
|
|
|
+ JSONArray keywords = new JSONArray();
|
|
|
+ keywords.add("游戏");
|
|
|
+ keywords.add("娱乐");
|
|
|
+ keywords.add("塔防");
|
|
|
+ keywords.add("养成");
|
|
|
+ data.put("ad_keywords", keywords);
|
|
|
+ JSONArray creatives = new JSONArray();
|
|
|
+ JSONObject creative = new JSONObject();
|
|
|
+
|
|
|
+ creative.put("image_mode", "CREATIVE_IMAGE_MODE_VIDEO_VERTICAL");
|
|
|
+ creative.put("image_id", "71d10006f7067d0be514");
|
|
|
+ creative.put("video_id", "v020334a0000bkvbakj6936tng75j6ag");
|
|
|
+ creative.put("title", "测试标题11");
|
|
|
+ creatives.add(creative);
|
|
|
+ data.put("creatives", creatives);
|
|
|
+ data.put("third_industry_id", 19050501);
|
|
|
+ data.put("title", "测试创意标题123");
|
|
|
+ return creativeService.creativeCreate(getAccountId, adId, data.toJSONString());
|
|
|
+ }
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IByteDanceCreativeService creativeService;
|
|
|
/**
|
|
|
* 12:广告组更新状态信息 @param accountId 本平台广告主id
|
|
|
*/
|
|
@@ -141,6 +248,36 @@ public class ByteDanceAdvertiserPostController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 15:上传视频信息
|
|
|
+ *
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
+ * @
|
|
|
+ */
|
|
|
+ @RequestMapping("/advertiser/video/add")
|
|
|
+ public Map<String, Object> advertiserVideoAdd(String accountId, Long videoFileId) {
|
|
|
+ return fileInfoService.uploadVideoToTemplate(accountId, videoFileId, "bytedance");
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 15:上传图片信息
|
|
|
+ *
|
|
|
+ * @param accountId 本平台广告主id
|
|
|
+ * @
|
|
|
+ */
|
|
|
+ @RequestMapping("/advertiser/image/add")
|
|
|
+ public Map<String, Object> advertiserImageAdd(String accountId, Long imageFileId) {
|
|
|
+ return fileInfoService.uploadImageToTemplate(accountId, imageFileId, "bytedance");
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequestMapping("/industry/list")
|
|
|
+ public Map<String, Object> industryList(String accountId) {
|
|
|
+ return fileInfoService.getIndustryList(accountId);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IFileInfoService fileInfoService;
|
|
|
+
|
|
|
+ /**
|
|
|
* @param audience
|
|
|
* @param pageNo
|
|
|
* @param pageSize
|
|
@@ -190,4 +327,6 @@ public class ByteDanceAdvertiserPostController {
|
|
|
|
|
|
@Autowired
|
|
|
private ISysDictItemService sysDictItemService;
|
|
|
+ @Autowired
|
|
|
+ private IByteDanceAdvertisePlanService advertisePlanService;
|
|
|
}
|