|
@@ -190,6 +190,9 @@ public class ByteDanceCreativeServiceImpl extends ServiceImpl<ByteDanceCreativeM
|
|
resultMap.put("message", "广告计划("+adId+"):"+message);
|
|
resultMap.put("message", "广告计划("+adId+"):"+message);
|
|
return resultMap;
|
|
return resultMap;
|
|
}
|
|
}
|
|
|
|
+ Thread thread = new Thread(()->getAdvertiserCreative(token, null, null));
|
|
|
|
+ thread.start();
|
|
|
|
+
|
|
resultMap.put("success", true);
|
|
resultMap.put("success", true);
|
|
resultMap.put("code", 0);
|
|
resultMap.put("code", 0);
|
|
resultMap.put("message", "广告计划("+adId+"):"+"创意创建成功");
|
|
resultMap.put("message", "广告计划("+adId+"):"+"创意创建成功");
|
|
@@ -200,9 +203,9 @@ public class ByteDanceCreativeServiceImpl extends ServiceImpl<ByteDanceCreativeM
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
- public Map<String, Object> getCreativeDetail(Long accountId, Long adId){
|
|
|
|
|
|
+ public Map<String, Object> getCreativeDetail(Long accountId, Long planId){
|
|
Map<String,Object>resultMap = new HashMap<>();
|
|
Map<String,Object>resultMap = new HashMap<>();
|
|
- if(null == adId||adId == 0||null == accountId||accountId == 0){
|
|
|
|
|
|
+ if(null == planId||planId == 0||null == accountId||accountId == 0){
|
|
ResultMapUtils.setResultMap(resultMap,StatusCode.COMMON_PARAM_ERROR);
|
|
ResultMapUtils.setResultMap(resultMap,StatusCode.COMMON_PARAM_ERROR);
|
|
return resultMap;
|
|
return resultMap;
|
|
}
|
|
}
|
|
@@ -211,7 +214,7 @@ public class ByteDanceCreativeServiceImpl extends ServiceImpl<ByteDanceCreativeM
|
|
ResultMapUtils.setResultMap(resultMap,StatusCode.BYTEDANCE_PLAN_DATA_NOT_EXIST);
|
|
ResultMapUtils.setResultMap(resultMap,StatusCode.BYTEDANCE_PLAN_DATA_NOT_EXIST);
|
|
return resultMap;
|
|
return resultMap;
|
|
}
|
|
}
|
|
- ByteDanceAdvertisePlan plan = byteDanceAdvertisePlanService.getById(adId);
|
|
|
|
|
|
+ ByteDanceAdvertisePlan plan = byteDanceAdvertisePlanService.getById(planId);
|
|
if(null == plan||plan.getOptStatus().equals("AD_STATUS_DELETE")){
|
|
if(null == plan||plan.getOptStatus().equals("AD_STATUS_DELETE")){
|
|
ResultMapUtils.setResultMap(resultMap,StatusCode.BYTEDANCE_ACCOUNT_DATA_NOT_EXIST);
|
|
ResultMapUtils.setResultMap(resultMap,StatusCode.BYTEDANCE_ACCOUNT_DATA_NOT_EXIST);
|
|
return resultMap;
|
|
return resultMap;
|
|
@@ -222,11 +225,27 @@ public class ByteDanceCreativeServiceImpl extends ServiceImpl<ByteDanceCreativeM
|
|
// 请求参数
|
|
// 请求参数
|
|
JSONObject data = new JSONObject();
|
|
JSONObject data = new JSONObject();
|
|
data.put("advertiser_id", token.getAccountId());
|
|
data.put("advertiser_id", token.getAccountId());
|
|
- data.put("ad_id",adId);
|
|
|
|
|
|
+ data.put("ad_id",planId);
|
|
JSONObject result = HttpUtils.bytedanceGetRequest(token.getAccessToken(),url,data);
|
|
JSONObject result = HttpUtils.bytedanceGetRequest(token.getAccessToken(),url,data);
|
|
|
|
+ System.out.println(result);
|
|
Integer code = result.getInteger("code");
|
|
Integer code = result.getInteger("code");
|
|
String message = result.getString("message");
|
|
String message = result.getString("message");
|
|
- if (null == code || code != 0) {
|
|
|
|
|
|
+ if (null == code) {
|
|
|
|
+ log.info("广告创意获取详情失败,accountId:{},message:{}", accountId, message);
|
|
|
|
+ resultMap.put("success", false);
|
|
|
|
+ resultMap.put("code", -1);
|
|
|
|
+ resultMap.put("message", message);
|
|
|
|
+ return resultMap;
|
|
|
|
+ }
|
|
|
|
+ if(code == 40001){
|
|
|
|
+ //尚未创建创意
|
|
|
|
+ resultMap.put("success", true);
|
|
|
|
+ resultMap.put("code", 0);
|
|
|
|
+ result.put("data","");
|
|
|
|
+ resultMap.put("message", message);
|
|
|
|
+ return resultMap;
|
|
|
|
+ }
|
|
|
|
+ if(code!=0){
|
|
log.info("广告创意获取详情失败,accountId:{},message:{}", accountId, message);
|
|
log.info("广告创意获取详情失败,accountId:{},message:{}", accountId, message);
|
|
resultMap.put("success", false);
|
|
resultMap.put("success", false);
|
|
resultMap.put("code", -1);
|
|
resultMap.put("code", -1);
|
|
@@ -241,34 +260,332 @@ public class ByteDanceCreativeServiceImpl extends ServiceImpl<ByteDanceCreativeM
|
|
|
|
|
|
private JSONObject formatData(JSONObject getData) {
|
|
private JSONObject formatData(JSONObject getData) {
|
|
JSONObject data = new JSONObject();
|
|
JSONObject data = new JSONObject();
|
|
|
|
+ Long advertiserId = getData.getLong("advertiser_id");
|
|
|
|
+ if(null!=advertiserId&&advertiserId!=0){
|
|
|
|
+ data.put("advertiserId",advertiserId);
|
|
|
|
+ }
|
|
|
|
+ Long adId = getData.getLong("ad_id");
|
|
|
|
+ if(null!=adId&&adId!=0){
|
|
|
|
+ data.put("adId",adId);
|
|
|
|
+ }
|
|
|
|
+ String modifyTime = getData.getString("modify_time");
|
|
|
|
+ if(null!=modifyTime&&!modifyTime.trim().equals("")){
|
|
|
|
+ data.put("modifyTime",modifyTime);
|
|
|
|
+ }
|
|
|
|
+ String trackUrl = getData.getString("track_url");
|
|
|
|
+ if(null!=trackUrl&&!trackUrl.trim().equals("")){
|
|
|
|
+ data.put("trackUrl",trackUrl);
|
|
|
|
+ }
|
|
|
|
+ String actionTrackUrl = getData.getString("action_track_url");
|
|
|
|
+ if(null!=actionTrackUrl&&!actionTrackUrl.trim().equals("")){
|
|
|
|
+ data.put("actionTrackUrl",actionTrackUrl);
|
|
|
|
+ }
|
|
|
|
+ String videoPlayEffectiveTrackUrl = getData.getString("video_play_effective_track_url");
|
|
|
|
+ if(null!=videoPlayEffectiveTrackUrl&&!videoPlayEffectiveTrackUrl.trim().equals("")){
|
|
|
|
+ data.put("video_play_effective_track_url",videoPlayEffectiveTrackUrl);
|
|
|
|
+ }
|
|
|
|
+ String videoPlayDoneTrackUrl = getData.getString("video_play_done_track_url");
|
|
|
|
+ if(null!=videoPlayDoneTrackUrl&&!videoPlayDoneTrackUrl.trim().equals("")){
|
|
|
|
+ data.put("video_play_done_track_url",videoPlayDoneTrackUrl);
|
|
|
|
+ }
|
|
|
|
+ String videoPlayTrackUrl = getData.getString("video_play_track_url");
|
|
|
|
+ if(null!=videoPlayTrackUrl&&!videoPlayTrackUrl.trim().equals("")){
|
|
|
|
+ data.put("videoPlayTrackUrl",videoPlayTrackUrl);
|
|
|
|
+ }
|
|
|
|
+ Integer isCommentDisable = getData.getInteger("is_comment_disable");
|
|
|
|
+ if(null!=isCommentDisable){
|
|
|
|
+ data.put("isCommentDisable",isCommentDisable);
|
|
|
|
+ }
|
|
|
|
+ Integer closeVideoDetail = getData.getInteger("close_video_detail");
|
|
|
|
+ if(null!=closeVideoDetail){
|
|
|
|
+ data.put("closeVideoDetail",closeVideoDetail);
|
|
|
|
+ }
|
|
|
|
+ String creativeDisplayMode = getData.getString("creative_display_mode");
|
|
|
|
+ if(null!=creativeDisplayMode&&!creativeDisplayMode.trim().equals("")){
|
|
|
|
+ data.put("creativeDisplayMode",creativeDisplayMode);
|
|
|
|
+ }
|
|
|
|
+ Long smartInventory = getData.getLong("smart_inventory");
|
|
|
|
+ if(null!=smartInventory&&smartInventory!=0){
|
|
|
|
+ data.put("smartInventory",smartInventory);
|
|
|
|
+ }
|
|
|
|
+ String sceneInventory = getData.getString("scene_inventory");
|
|
|
|
+ if(null!=sceneInventory&&!sceneInventory.trim().equals("")){
|
|
|
|
+ data.put("sceneInventory",sceneInventory);
|
|
|
|
+ }
|
|
|
|
+ Long generateDerivedAd = getData.getLong("generate_derived_ad");
|
|
|
|
+ if(null!=generateDerivedAd&&generateDerivedAd!=0){
|
|
|
|
+ data.put("generateDerivedAd",generateDerivedAd);
|
|
|
|
+ }
|
|
|
|
+ JSONArray inventoryType = getData.getJSONArray("inventory_type");
|
|
|
|
+ if(null!=inventoryType&&!inventoryType.isEmpty()){
|
|
|
|
+ data.put("inventoryType",inventoryType);
|
|
|
|
+ }
|
|
|
|
+ String source = getData.getString("source");
|
|
|
|
+ if(null!=source&&!source.trim().equals("")){
|
|
|
|
+ data.put("source",source);
|
|
|
|
+ }
|
|
|
|
+ String appName = getData.getString("app_name");
|
|
|
|
+ if(null!=appName&&!appName.trim().equals("")){
|
|
|
|
+ data.put("appName",appName);
|
|
|
|
+ }
|
|
|
|
+ String webUrl = getData.getString("web_url");
|
|
|
|
+ if(null!=webUrl&&!webUrl.trim().equals("")){
|
|
|
|
+ data.put("webUrl",webUrl);
|
|
|
|
+ }
|
|
|
|
+ JSONArray adKeywords = getData.getJSONArray("ad_keywords");
|
|
|
|
+ if(null!=adKeywords&&!adKeywords.isEmpty()){
|
|
|
|
+ data.put("adKeywords",adKeywords);
|
|
|
|
+ }
|
|
|
|
+ Long thirdIndustryId = getData.getLong("third_industry_id");
|
|
|
|
+ if(null!=thirdIndustryId&&thirdIndustryId!=0){
|
|
|
|
+ data.put("thirdIndustryId",thirdIndustryId);
|
|
|
|
+ }
|
|
|
|
+ String advancedCreativeType = getData.getString("advanced_creative_type");
|
|
|
|
+ if(null!=advancedCreativeType&&!advancedCreativeType.trim().equals("")){
|
|
|
|
+ data.put("advancedCreativeType",advancedCreativeType);
|
|
|
|
+ }
|
|
|
|
+ String advancedCreativeTitle = getData.getString("advanced_creative_title");
|
|
|
|
+ if(null!=advancedCreativeTitle&&!advancedCreativeTitle.trim().equals("")){
|
|
|
|
+ data.put("advancedCreativeTitle",advancedCreativeTitle);
|
|
|
|
+ }
|
|
|
|
+ String phoneNumber = getData.getString("phone_number");
|
|
|
|
+ if(null!=phoneNumber&&!phoneNumber.trim().equals("")){
|
|
|
|
+ data.put("phoneNumber",phoneNumber);
|
|
|
|
+ }
|
|
|
|
+ String buttonText = getData.getString("button_text");
|
|
|
|
+ if(null!=buttonText&&!buttonText.trim().equals("")){
|
|
|
|
+ data.put("buttonText",buttonText);
|
|
|
|
+ }
|
|
|
|
+ String actionText = getData.getString("action_text");
|
|
|
|
+ if(null!=actionText&&!actionText.trim().equals("")){
|
|
|
|
+ data.put("actionText",actionText);
|
|
|
|
+ }
|
|
|
|
+ String formUrl = getData.getString("form_url");
|
|
|
|
+ if(null!=formUrl&&!formUrl.trim().equals("")){
|
|
|
|
+ data.put("formUrl",formUrl);
|
|
|
|
+ }
|
|
|
|
+ String creativeMaterialMode = getData.getString("creative_material_mode");
|
|
|
|
+ if(null!=creativeMaterialMode&&!creativeMaterialMode.trim().equals("")){
|
|
|
|
+ data.put("creativeMaterialMode",creativeMaterialMode);
|
|
|
|
+ }
|
|
|
|
+ String iesCoreUserId = getData.getString("ies_core_user_id");
|
|
|
|
+ if(null!=iesCoreUserId&&!iesCoreUserId.trim().equals("")){
|
|
|
|
+ data.put("iesCoreUserId",iesCoreUserId);
|
|
|
|
+ }
|
|
|
|
+ Long isFeedAndFavSee = getData.getLong("is_feed_and_fav_see");
|
|
|
|
+ if(null!=isFeedAndFavSee){
|
|
|
|
+ data.put("isFeedAndFavSee",isFeedAndFavSee);
|
|
|
|
+ }
|
|
|
|
+ JSONArray commerceCards = getData.getJSONArray("commerce_cards");
|
|
|
|
+ if(null!=commerceCards&&!commerceCards.isEmpty()){
|
|
|
|
+ data.put("commerceCards",commerceCards);
|
|
|
|
+ }
|
|
|
|
+ String playableUrl = getData.getString("playable_url");
|
|
|
|
+ if(null!=playableUrl&&!playableUrl.trim().equals("")){
|
|
|
|
+ data.put("playableUrl",playableUrl);
|
|
|
|
+ }
|
|
|
|
+ Long proceduralPackageId = getData.getLong("procedural_package_id");
|
|
|
|
+ if(null!=proceduralPackageId&&proceduralPackageId!=0){
|
|
|
|
+ data.put("proceduralPackageId",proceduralPackageId);
|
|
|
|
+ }
|
|
|
|
+ Long proceduralPackageVersion = getData.getLong("procedural_package_version");
|
|
|
|
+ if(null!=proceduralPackageVersion&&proceduralPackageVersion!=0){
|
|
|
|
+ data.put("proceduralPackageVersion",proceduralPackageVersion);
|
|
|
|
+ }
|
|
|
|
+ Long isPresentedVideo = getData.getLong("is_presented_video");
|
|
|
|
+ if(null!=isPresentedVideo){
|
|
|
|
+ data.put("isPresentedVideo",isPresentedVideo);
|
|
|
|
+ }
|
|
|
|
+ String subTitle = getData.getString("sub_title");
|
|
|
|
+ if(null!=subTitle&&!subTitle.trim().equals("")){
|
|
|
|
+ data.put("subTitle",subTitle);
|
|
|
|
+ }
|
|
|
|
+ Long creativeAutoGenerateSwitch = getData.getLong("creative_auto_generate_switch");
|
|
|
|
+ if(null!=creativeAutoGenerateSwitch){
|
|
|
|
+ data.put("creativeAutoGenerateSwitch",creativeAutoGenerateSwitch);
|
|
|
|
+ }
|
|
|
|
+ String trackUrlSendType = getData.getString("track_url_send_type");
|
|
|
|
+ if(null!=trackUrlSendType&&!trackUrlSendType.trim().equals("")){
|
|
|
|
+ data.put("trackUrlSendType",trackUrlSendType);
|
|
|
|
+ }
|
|
|
|
+ JSONArray subLinkIdList = getData.getJSONArray("sub_link_id_list");
|
|
|
|
+ if(null!=subLinkIdList&&!subLinkIdList.isEmpty()){
|
|
|
|
+ data.put("subLinkIdList",subLinkIdList);
|
|
|
|
+ }
|
|
|
|
+ JSONArray titleList = getData.getJSONArray("title_list");
|
|
|
|
+ if(null!=titleList&&!titleList.isEmpty()){
|
|
|
|
+ JSONArray titleArray = new JSONArray();
|
|
|
|
+ for (int i=0;i<titleList.size();i++){
|
|
|
|
+ JSONObject title = titleList.getJSONObject(i);
|
|
|
|
+ JSONArray creativeWordIds = title.getJSONArray("creative_word_ids");
|
|
|
|
+ JSONArray dpaDictIds = title.getJSONArray("dpa_dict_ids");
|
|
|
|
+ title.remove("creative_word_ids");
|
|
|
|
+ title.remove("dpa_dict_ids");
|
|
|
|
+ title.put("creativeWordIds",creativeWordIds);
|
|
|
|
+ title.put("dpaDictIds",dpaDictIds);
|
|
|
|
+ titleArray.add(title);
|
|
|
|
+ }
|
|
|
|
+ data.put("titleList",titleArray);
|
|
|
|
+ }
|
|
|
|
+ JSONArray imageList = getData.getJSONArray("image_list");
|
|
|
|
+ if(null!=imageList&&!imageList.isEmpty()){
|
|
|
|
+ JSONArray imageArray = new JSONArray();
|
|
|
|
+ for (int i=0;i<imageList.size();i++){
|
|
|
|
+ JSONObject getImage = imageList.getJSONObject(i);
|
|
|
|
+ JSONObject setImage = new JSONObject();
|
|
|
|
+ String imageMode = getImage.getString("image_mode");
|
|
|
|
+ setImage.put("imageMode",imageMode);
|
|
|
|
+ String imageId = getImage.getString("image_id");
|
|
|
|
+ if(null!=imageId&&!imageId.trim().equals("")){
|
|
|
|
+ setImage.put("imageId",imageId);
|
|
|
|
+ setImage.put("imageUrl","https://sf6-ttcdn-tos.pstatp.com/obj/mosaic-legacy/"+imageId);
|
|
|
|
+ }
|
|
|
|
+ String videoId = getImage.getString("video_id");
|
|
|
|
+ if(null!=videoId&&!videoId.trim().equals("")){
|
|
|
|
+ setImage.put("videoId",videoId);
|
|
|
|
+ setImage.put("videoUrl","https://aweme.snssdk.com/aweme/v1/playwm/?video_id="+videoId+"&line=0");
|
|
|
|
+ }
|
|
|
|
+ JSONArray imageIds = getImage.getJSONArray("image_ids");
|
|
|
|
+ if(null!=imageIds&&!imageIds.isEmpty()){
|
|
|
|
+ setImage.put("imageIds",imageIds);
|
|
|
|
+ }
|
|
|
|
+ String templateId = getImage.getString("template_id");
|
|
|
|
+ if(null!=templateId&&!templateId.trim().equals("")){
|
|
|
|
+ setImage.put("templateId",templateId);
|
|
|
|
+ }
|
|
|
|
+ imageArray.add(setImage);
|
|
|
|
+ }
|
|
|
|
+ data.put("imageList",imageArray);
|
|
|
|
+ }
|
|
|
|
+ JSONArray creativeList = getData.getJSONArray("creatives");
|
|
|
|
+ if(null!=creativeList&&!creativeList.isEmpty()){
|
|
|
|
+ JSONArray creativeArray = new JSONArray();
|
|
|
|
+ for (int i=0;i<creativeList.size();i++){
|
|
|
|
+ JSONObject getCreative = creativeList.getJSONObject(i);
|
|
|
|
+ JSONObject setCreative = new JSONObject();
|
|
|
|
+ String creative_id = getCreative.getString("creative_id");
|
|
|
|
+ if(null!=creative_id&&!creative_id.trim().equals("")){
|
|
|
|
+ setCreative.put("creative_id",creative_id);
|
|
|
|
+ }
|
|
|
|
+ String title = getCreative.getString("title");
|
|
|
|
+ if(null!=title&&!title.trim().equals("")){
|
|
|
|
+ setCreative.put("title",title);
|
|
|
|
+ }
|
|
|
|
+ JSONArray creativeWordIds = getCreative.getJSONArray("creative_word_ids");
|
|
|
|
+ if(null!=creativeWordIds&&!creativeWordIds.isEmpty()){
|
|
|
|
+ setCreative.put("creativeWordIds",creativeWordIds);
|
|
|
|
+ }
|
|
|
|
+ JSONArray dpaDictIds = getCreative.getJSONArray("dpa_dict_ids");
|
|
|
|
+ if(null!=dpaDictIds&&!dpaDictIds.isEmpty()){
|
|
|
|
+ setCreative.put("dpaDictIds",dpaDictIds);
|
|
|
|
+ }
|
|
|
|
+ String imageMode = getCreative.getString("image_mode");
|
|
|
|
+ if(null!=imageMode&&!imageMode.trim().equals("")){
|
|
|
|
+ setCreative.put("imageMode",imageMode);
|
|
|
|
+ }
|
|
|
|
+ JSONArray imageIds = getCreative.getJSONArray("imageIds");
|
|
|
|
+ if(null!=imageIds&&!imageIds.isEmpty()){
|
|
|
|
+ setCreative.put("imageIds",imageIds);
|
|
|
|
+ }
|
|
|
|
+ String imageId = getCreative.getString("image_id");
|
|
|
|
+ if(null!=imageId&&!imageId.trim().equals("")){
|
|
|
|
+ setCreative.put("imageId",imageId);
|
|
|
|
+ setCreative.put("imageUrl","https://sf6-ttcdn-tos.pstatp.com/obj/mosaic-legacy/"+imageId);
|
|
|
|
+ }
|
|
|
|
+ String videoId = getCreative.getString("video_id");
|
|
|
|
+ if(null!=videoId&&!videoId.trim().equals("")){
|
|
|
|
+ setCreative.put("videoId",videoId);
|
|
|
|
+ setCreative.put("videoUrl","https://aweme.snssdk.com/aweme/v1/playwm/?video_id="+videoId+"&line=0");
|
|
|
|
+ }
|
|
|
|
+ String thirdPartyId = getCreative.getString("third_party_id");
|
|
|
|
+ if(null!=thirdPartyId&&!thirdPartyId.trim().equals("")){
|
|
|
|
+ setCreative.put("thirdPartyId",thirdPartyId);
|
|
|
|
+ }
|
|
|
|
+ Long derivePosterCid = getCreative.getLong("derive_poster_cid");
|
|
|
|
+ if(null!=derivePosterCid){
|
|
|
|
+ setCreative.put("derivePosterCid",derivePosterCid);
|
|
|
|
+ }
|
|
|
|
+ Integer templateId = getCreative.getInteger("template_id");
|
|
|
|
+ if(null!=templateId){
|
|
|
|
+ setCreative.put("templateId",templateId);
|
|
|
|
+ }
|
|
|
|
+ String templateImageId = getCreative.getString("template_image_id");
|
|
|
|
+ if(null!=templateImageId&&!templateImageId.trim().equals("")){
|
|
|
|
+ setCreative.put("templateImageId",templateImageId);
|
|
|
|
+ }
|
|
|
|
+ Long dpaTemplate = getCreative.getLong("dpa_template");
|
|
|
|
+ if(null!=dpaTemplate){
|
|
|
|
+ setCreative.put("dpaTemplate",dpaTemplate);
|
|
|
|
+ }
|
|
|
|
+ String dpaVideoTemplateType = getCreative.getString("dpa_video_template_type");
|
|
|
|
+ if(null!=dpaVideoTemplateType&&!dpaVideoTemplateType.trim().equals("")){
|
|
|
|
+ setCreative.put("dpaVideoTemplateType",dpaVideoTemplateType);
|
|
|
|
+ }
|
|
|
|
+ JSONArray dpaVideoTaskIds = getCreative.getJSONArray("dpa_video_task_ids");
|
|
|
|
+ if(null!=dpaVideoTaskIds&&!dpaVideoTaskIds.isEmpty()){
|
|
|
|
+ setCreative.put("dpaVideoTaskIds",dpaVideoTaskIds);
|
|
|
|
+ }
|
|
|
|
+ creativeArray.add(setCreative);
|
|
|
|
+ }
|
|
|
|
+ data.put("creatives",creativeArray);
|
|
|
|
+ }
|
|
|
|
+
|
|
return data;
|
|
return data;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
- * TODO 后续需要拼接参数
|
|
|
|
- * @param accountId
|
|
|
|
* @param data
|
|
* @param data
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
- public Map<String,Object> updateCreative(Long accountId,JSONObject data){
|
|
|
|
- Map<String,Object>resultMap = new HashMap<>();
|
|
|
|
|
|
+ public Map<String,Object> updateCreative(JSONObject data){
|
|
|
|
+ log.info(data.toJSONString());
|
|
|
|
+ Map<String,Object>result = new HashMap<>();
|
|
|
|
+ Long accountId = data.getLong("accountId");
|
|
CtopOauthToken token = tokenService.getTokenByAccountId(accountId);
|
|
CtopOauthToken token = tokenService.getTokenByAccountId(accountId);
|
|
|
|
+ if(null == token){
|
|
|
|
+ ResultMapUtils.setResultMap(result,StatusCode.COMMON_PARAM_ERROR);
|
|
|
|
+ return result;
|
|
|
|
+ }
|
|
|
|
+ JSONArray planIdArray = data.getJSONArray("adIds");
|
|
|
|
+ if(null == planIdArray||planIdArray.isEmpty()){
|
|
|
|
+ ResultMapUtils.setResultMap(result,StatusCode.COMMON_PARAM_ERROR);
|
|
|
|
+ return result;
|
|
|
|
+ }
|
|
|
|
+ data.remove("adIds");
|
|
|
|
+ data.put("adId",planIdArray.getLong(0));
|
|
|
|
+ JSONObject detail = (JSONObject) this.getCreativeDetail(accountId,planIdArray.getLong(0)).get("data");
|
|
|
|
+ String modifyTime = detail.getString("modifyTime");
|
|
|
|
+ data.put("modifyTime",modifyTime);
|
|
|
|
+ JSONObject params = initParams(data);
|
|
|
|
+ JSONArray array = new JSONArray();
|
|
|
|
+ Map<String,Object> getData = updateCreative(token,params,planIdArray.getLong(0));
|
|
|
|
+ array.add(getData);
|
|
|
|
+ result.put("data",array);
|
|
|
|
+ ResultMapUtils.setResultMap(result, StatusCode.COMMON_SUCCESS);
|
|
|
|
+ return result;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Map<String,Object>updateCreative(CtopOauthToken token,JSONObject params,Long adId){
|
|
|
|
+ Map<String, Object> result = new HashMap<>();
|
|
// 请求地址
|
|
// 请求地址
|
|
String url = PropertiesUtils.getValue("bytedance_config", "bytedance_api_url") + PropertiesUtils.getValue("bytedance_config", "bytedance_v2_creative_update");
|
|
String url = PropertiesUtils.getValue("bytedance_config", "bytedance_api_url") + PropertiesUtils.getValue("bytedance_config", "bytedance_v2_creative_update");
|
|
- JSONObject result = HttpUtils.bytedancePostRequest(token.getAccessToken(),url,data);
|
|
|
|
- Integer code = result.getInteger("code");
|
|
|
|
- String message = result.getString("message");
|
|
|
|
|
|
+ JSONObject dataObject = HttpUtils.bytedancePostRequest(token.getAccessToken(),url,params);
|
|
|
|
+ Integer code = dataObject.getInteger("code");
|
|
|
|
+ String message = dataObject.getString("message");
|
|
if (null == code || code != 0) {
|
|
if (null == code || code != 0) {
|
|
- log.info("广告创意更新失败,accountId:{},message:{}", accountId, message);
|
|
|
|
- resultMap.put("success", false);
|
|
|
|
- resultMap.put("code", -1);
|
|
|
|
- resultMap.put("message", message);
|
|
|
|
- return resultMap;
|
|
|
|
|
|
+ log.info("广告创意更新失败,accountId:{},message:{}", token.getAccountId(), message);
|
|
|
|
+ result.put("success", false);
|
|
|
|
+ result.put("code", -1);
|
|
|
|
+ result.put("message", message);
|
|
|
|
+ return result;
|
|
}
|
|
}
|
|
- resultMap.put("data",result.getJSONObject("data"));
|
|
|
|
- ResultMapUtils.setResultMap(resultMap, StatusCode.COMMON_SUCCESS);
|
|
|
|
- return resultMap;
|
|
|
|
|
|
+ Thread thread = new Thread(()->getAdvertiserCreative(token,null, DateUtils.formatDate()));
|
|
|
|
+ thread.start();
|
|
|
|
+ result.put("success", true);
|
|
|
|
+ result.put("code", 0);
|
|
|
|
+ result.put("message", "广告计划("+adId+"):"+"创意更新成功");
|
|
|
|
+ return result;
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -320,7 +637,8 @@ public class ByteDanceCreativeServiceImpl extends ServiceImpl<ByteDanceCreativeM
|
|
Map<String,Object> getData = creativeCreate(accountId+"",planIds.getLong(i),params);
|
|
Map<String,Object> getData = creativeCreate(accountId+"",planIds.getLong(i),params);
|
|
array.add(getData);
|
|
array.add(getData);
|
|
}
|
|
}
|
|
- getAdvertiserCreative(token,null, DateUtils.formatDate());
|
|
|
|
|
|
+ Thread thread = new Thread(()->getAdvertiserCreative(token,null, DateUtils.formatDate()));
|
|
|
|
+ thread.start();
|
|
result.put("data",array);
|
|
result.put("data",array);
|
|
ResultMapUtils.setResultMap(result,StatusCode.COMMON_SUCCESS);
|
|
ResultMapUtils.setResultMap(result,StatusCode.COMMON_SUCCESS);
|
|
return result;
|
|
return result;
|
|
@@ -331,6 +649,12 @@ public class ByteDanceCreativeServiceImpl extends ServiceImpl<ByteDanceCreativeM
|
|
JSONObject params = new JSONObject();
|
|
JSONObject params = new JSONObject();
|
|
String creativeWay = data.getString("creativeWay");
|
|
String creativeWay = data.getString("creativeWay");
|
|
params.put("advertiser_id",data.getLong("accountId"));
|
|
params.put("advertiser_id",data.getLong("accountId"));
|
|
|
|
+ Long adId = data.getLong("adId");
|
|
|
|
+ if(null!=adId&&adId!=0){
|
|
|
|
+ params.put("ad_id",adId);
|
|
|
|
+ }
|
|
|
|
+ String modifyTime = data.getString("modifyTime");
|
|
|
|
+ params.put("modify_time",modifyTime);
|
|
//###############公共参数开始################################
|
|
//###############公共参数开始################################
|
|
//优选广告位
|
|
//优选广告位
|
|
Integer smartInventory = data.getInteger("smartInventory");
|
|
Integer smartInventory = data.getInteger("smartInventory");
|
|
@@ -560,11 +884,11 @@ public class ByteDanceCreativeServiceImpl extends ServiceImpl<ByteDanceCreativeM
|
|
if(null!=dpaDictIds&&!dpaDictIds.isEmpty()){
|
|
if(null!=dpaDictIds&&!dpaDictIds.isEmpty()){
|
|
creativeObject.put("dpa_dict_ids",dpaDictIds);
|
|
creativeObject.put("dpa_dict_ids",dpaDictIds);
|
|
}
|
|
}
|
|
- String text = creativeObject.getString("text");
|
|
|
|
- creativeObject.remove("text");
|
|
|
|
- if(null!=text&&!"".equals(text.trim())){
|
|
|
|
- creativeObject.put("title",text);
|
|
|
|
- }
|
|
|
|
|
|
+// String text = creativeObject.getString("title");
|
|
|
|
+// creativeObject.remove("text");
|
|
|
|
+// if(null!=text&&!"".equals(text.trim())){
|
|
|
|
+// creativeObject.put("title",text);
|
|
|
|
+// }
|
|
Integer derivePosterCid = creativeObject.getInteger("derivePosterCid");
|
|
Integer derivePosterCid = creativeObject.getInteger("derivePosterCid");
|
|
creativeObject.remove("derivePosterCid");
|
|
creativeObject.remove("derivePosterCid");
|
|
if(null!=derivePosterCid&&derivePosterCid!=0){
|
|
if(null!=derivePosterCid&&derivePosterCid!=0){
|