|
@@ -6,11 +6,7 @@ import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.google.common.base.Joiner;
|
|
|
-import com.google.gson.JsonArray;
|
|
|
-import com.google.gson.JsonElement;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
-import org.apache.commons.collections.CollectionUtils;
|
|
|
-import org.apache.commons.collections.Transformer;
|
|
|
import org.jeecg.common.api.vo.Result;
|
|
|
import org.jeecg.common.util.DateUtils;
|
|
|
import org.jeecg.modules.bytedance.advertise.dockapi.MarketingService;
|
|
@@ -36,6 +32,7 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import javax.transaction.Transactional;
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
@@ -77,7 +74,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
public Long createCreative(AiBytedanceAdvertiserStrategy strategy, Integer createType, Long videoCnt, String openUrl) {
|
|
|
CtopOauthToken token = tokenService.getOauthTokenByAccountId(strategy.getAccountId()+"");
|
|
|
if (null == token) {
|
|
|
- log.info("token获取失败=>accountId:{}", token.getAccountId());
|
|
|
+ log.info("token获取失败=>accountId:{}", strategy.getAccountId());
|
|
|
return videoCnt;
|
|
|
}
|
|
|
|
|
@@ -97,11 +94,6 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
log.info("获取视频素材为空=>accountId:{}", token.getAccountId());
|
|
|
return videoCnt;
|
|
|
}
|
|
|
- /**
|
|
|
- * 1:创建组
|
|
|
- * 查询当前账户排列到的dp链接标识号
|
|
|
- */
|
|
|
- //根据dpLink获取组名称
|
|
|
|
|
|
for (ByteDanceVideoInfo video:videoInfos) {
|
|
|
//1:过滤掉所有不存在于视频库的数据
|
|
@@ -109,17 +101,21 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
if(null == materialInfo){
|
|
|
continue;
|
|
|
}
|
|
|
+ //过滤掉所有未绑定文案的数据
|
|
|
List<BytedanceVideoSlogenInfo>slogenInfos = slogenInfoService.listByParams(video.getSignature(),1);
|
|
|
if(null == slogenInfos||slogenInfos.isEmpty()){
|
|
|
continue;
|
|
|
}
|
|
|
- /**
|
|
|
- * 2:创建计划
|
|
|
- */
|
|
|
+ // 2:创建计划
|
|
|
Long dpIndex ;
|
|
|
AiBytedanceAdDplinkInfo adDplinkInfo = adDplinkInfoService.getlatestDpLinkInfo(strategy.getId(),strategy.getAccountId(),1);
|
|
|
if(null == adDplinkInfo){
|
|
|
adDplinkInfo = new AiBytedanceAdDplinkInfo();
|
|
|
+ if("FIX".equalsIgnoreCase(strategy.getAdBidCreateType())){
|
|
|
+ adDplinkInfo.setAdbid(strategy.getAdBid());
|
|
|
+ }else{
|
|
|
+ adDplinkInfo.setAdbid(strategy.getAdMinBid());
|
|
|
+ }
|
|
|
adDplinkInfo.setDpLinkIndex(strategy.getDpLinkStartIndex());
|
|
|
}else{
|
|
|
adDplinkInfo.setId(null);
|
|
@@ -138,8 +134,10 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
strategy.setAdOpenUrl(openUrl.replace("{{dp链接下标}}",dpIndex.toString()));
|
|
|
String dplinkCode = StringUtils.getParamFromUrl(strategy.getAdOpenUrl(),"bc_fl_src");
|
|
|
String adName = getAdName(strategy,dplinkCode,video);
|
|
|
- System.out.println(adName);
|
|
|
- JSONObject adParams = getAdParams(strategy,adName,campaignId);
|
|
|
+ //计算本次出价
|
|
|
+ BigDecimal currentBid = StringUtils.getRandomAdCpaBid(strategy.getAdBidCreateType(),strategy.getAdMaxBid(),strategy.getAdMinBid(),strategy.getAdStepBid(),adDplinkInfo.getAdbid());
|
|
|
+ adDplinkInfo.setAdbid(currentBid);
|
|
|
+ JSONObject adParams = getAdParams(strategy,adName,campaignId,currentBid);
|
|
|
Long adId = createAdInfo(token,strategy,adParams);
|
|
|
if(null == adId){
|
|
|
continue;
|
|
@@ -175,11 +173,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
if(null!=inventoryType&&!"".equals(inventoryType)){
|
|
|
String[] inventoryTypeString = inventoryType.split(",");
|
|
|
if(inventoryTypeString.length>0){
|
|
|
- JSONArray inventoryTypeArray = new JSONArray();
|
|
|
- for(int i=0;i<inventoryTypeString.length;i++){
|
|
|
- inventoryTypeArray.add(inventoryTypeString[i]);
|
|
|
- }
|
|
|
- params.put("inventory_type",inventoryTypeArray);
|
|
|
+ params.put("inventory_type",inventoryType);
|
|
|
}
|
|
|
}
|
|
|
Integer smartInventory = strategy.getCreativeSmartInventory();
|
|
@@ -298,7 +292,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
if(!Check.isNull(imageCode)){
|
|
|
//1:根据imageCode获取图片id
|
|
|
JSONObject promotionCard = new JSONObject();
|
|
|
- String iconImageId = getBytedanceImageIdByCode(imageCode,strategy,token);
|
|
|
+ String iconImageId = getBytedanceImageIdByCode(imageCode,token);
|
|
|
if(!Check.isNull(iconImageId)){
|
|
|
promotionCard.put("product_image_id",iconImageId);
|
|
|
}
|
|
@@ -306,11 +300,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
if(!Check.isNull(productSellingPoints)){
|
|
|
String[] pointString = productSellingPoints.split(",");
|
|
|
if(pointString.length>0){
|
|
|
- JSONArray pointArray = new JSONArray();
|
|
|
- for(int i=0;i<pointString.length;i++){
|
|
|
- pointArray.add(pointString[i]);
|
|
|
- }
|
|
|
- promotionCard.put("product_selling_points",pointArray);
|
|
|
+ promotionCard.put("product_selling_points",pointString);
|
|
|
}
|
|
|
}
|
|
|
String productDescription = strategy.getCreativeProductDescription();
|
|
@@ -371,7 +361,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
|
|
|
}
|
|
|
|
|
|
- private String getBytedanceImageIdByCode(String imageCode, AiBytedanceAdvertiserStrategy strategy,CtopOauthToken token) {
|
|
|
+ private String getBytedanceImageIdByCode(String imageCode, CtopOauthToken token) {
|
|
|
//1:根据code获取图片信息
|
|
|
BytedanceImageInfo bytedanceImageInfo = bytedanceImageInfoService.getByParams(imageCode);
|
|
|
if(null!=bytedanceImageInfo){
|
|
@@ -408,7 +398,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
return (Long)result.getResult();
|
|
|
}
|
|
|
|
|
|
- private JSONObject getAdParams(AiBytedanceAdvertiserStrategy strategy, String adName, Long campaignId) {
|
|
|
+ private JSONObject getAdParams(AiBytedanceAdvertiserStrategy strategy, String adName, Long campaignId,BigDecimal lastBid) {
|
|
|
JSONObject params = new JSONObject();
|
|
|
//公共参数
|
|
|
params.put("advertiser_id",strategy.getAccountId());
|
|
@@ -458,7 +448,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
}
|
|
|
if(!Check.isNull(strategy.getAdGamePackageThumbnailId())){
|
|
|
JSONArray ids = JSON.parseArray(strategy.getAdGamePackageThumbnailId());
|
|
|
- if(null == ids&&!ids.isEmpty()){
|
|
|
+ if(null != ids&&!ids.isEmpty()){
|
|
|
params.put("game_package_thumbnail_ids",ids);
|
|
|
}
|
|
|
}
|
|
@@ -471,7 +461,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
}
|
|
|
if(!Check.isNull(strategy.getAdCity())){
|
|
|
String[] city = strategy.getAdCity().split(",");
|
|
|
- if(null != city&&city.length>0){
|
|
|
+ if(city.length>0){
|
|
|
params.put("city",city);
|
|
|
}
|
|
|
}
|
|
@@ -572,51 +562,31 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
if(!Check.isNull(strategy.getAdInterestWords())){
|
|
|
String[] interestWords = strategy.getAdInterestWords().split(",");
|
|
|
if(interestWords.length>0){
|
|
|
- JSONArray interestWordsArray = new JSONArray();
|
|
|
- for(int i=0;i<interestWords.length;i++){
|
|
|
- interestWordsArray.add(interestWords[i]);
|
|
|
- }
|
|
|
- params.put("interest_words",interestWordsArray);
|
|
|
+ params.put("interest_words",interestWords);
|
|
|
}
|
|
|
}
|
|
|
if(!Check.isNull(strategy.getAdAwemeFanBehaviors())){
|
|
|
String[] awemeFanBehaviors = strategy.getAdAwemeFanBehaviors().split(",");
|
|
|
if(awemeFanBehaviors.length>0){
|
|
|
- JSONArray awemeFanBehaviorsArray = new JSONArray();
|
|
|
- for(int i=0;i<awemeFanBehaviors.length;i++){
|
|
|
- awemeFanBehaviorsArray.add(awemeFanBehaviors[i]);
|
|
|
- }
|
|
|
- params.put("aweme_fan_behaviors",awemeFanBehaviorsArray);
|
|
|
+ params.put("aweme_fan_behaviors",awemeFanBehaviors);
|
|
|
}
|
|
|
}
|
|
|
if(!Check.isNull(strategy.getAdAwemeFanCategories())){
|
|
|
String[] awemeFanCategories = strategy.getAdAwemeFanCategories().split(",");
|
|
|
if(awemeFanCategories.length>0){
|
|
|
- JSONArray awemeFanCategoriesArray = new JSONArray();
|
|
|
- for(int i=0;i<awemeFanCategories.length;i++){
|
|
|
- awemeFanCategoriesArray.add(awemeFanCategories[i]);
|
|
|
- }
|
|
|
- params.put("aweme_fan_categories",awemeFanCategoriesArray);
|
|
|
+ params.put("aweme_fan_categories",awemeFanCategories);
|
|
|
}
|
|
|
}
|
|
|
if(!Check.isNull(strategy.getAdAwemeFanAccounts())){
|
|
|
String[] awemeFanAccount = strategy.getAdAwemeFanAccounts().split(",");
|
|
|
if(awemeFanAccount.length>0){
|
|
|
- JSONArray awemeFanAccountArray = new JSONArray();
|
|
|
- for(int i=0;i<awemeFanAccount.length;i++){
|
|
|
- awemeFanAccountArray.add(awemeFanAccount[i]);
|
|
|
- }
|
|
|
- params.put("aweme_fan_accounts",awemeFanAccountArray);
|
|
|
+ params.put("aweme_fan_accounts",awemeFanAccount);
|
|
|
}
|
|
|
}
|
|
|
if(!Check.isNull(strategy.getAdAwemeFansNumbers())){
|
|
|
String[] awemeFansNumbers = strategy.getAdAwemeFansNumbers().split(",");
|
|
|
if(awemeFansNumbers.length>0){
|
|
|
- JSONArray awemeFansNumbersArray = new JSONArray();
|
|
|
- for(int i=0;i<awemeFansNumbers.length;i++){
|
|
|
- awemeFansNumbersArray.add(awemeFansNumbers[i]);
|
|
|
- }
|
|
|
- params.put("aweme_fans_numbers",awemeFansNumbersArray);
|
|
|
+ params.put("aweme_fans_numbers",awemeFansNumbers);
|
|
|
}
|
|
|
}
|
|
|
if(!Check.isNull(strategy.getAdFilterAwemeAbnormalActive())){
|
|
@@ -634,31 +604,19 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
if(!Check.isNull(strategy.getAdFlowPackage())){
|
|
|
String[] flowPackage = strategy.getAdFlowPackage().split(",");
|
|
|
if(flowPackage.length>0){
|
|
|
- JSONArray flowPackageArray = new JSONArray();
|
|
|
- for(int i=0;i<flowPackage.length;i++){
|
|
|
- flowPackageArray.add(flowPackage[i]);
|
|
|
- }
|
|
|
- params.put("flow_package",flowPackageArray);
|
|
|
+ params.put("flow_package",flowPackage);
|
|
|
}
|
|
|
}
|
|
|
if(!Check.isNull(strategy.getAdExcludeFlowPackage())){
|
|
|
String[] excludeFlowPackage = strategy.getAdExcludeFlowPackage().split(",");
|
|
|
if(excludeFlowPackage.length>0){
|
|
|
- JSONArray excludeFlowPackageArray = new JSONArray();
|
|
|
- for(int i=0;i<excludeFlowPackage.length;i++){
|
|
|
- excludeFlowPackageArray.add(excludeFlowPackage[i]);
|
|
|
- }
|
|
|
- params.put("exclude_flow_package",excludeFlowPackageArray);
|
|
|
+ params.put("exclude_flow_package",excludeFlowPackage);
|
|
|
}
|
|
|
}
|
|
|
if(!Check.isNull(strategy.getAdPlatform())){
|
|
|
String[] platform = strategy.getAdPlatform().split(",");
|
|
|
if(platform.length>0){
|
|
|
- JSONArray platformArray = new JSONArray();
|
|
|
- for(int i=0;i<platform.length;i++){
|
|
|
- platformArray.add(platform[i]);
|
|
|
- }
|
|
|
- params.put("platform",platformArray);
|
|
|
+ params.put("platform",platform);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -802,9 +760,8 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
if(!Check.isNull(strategy.getAdPricing())){
|
|
|
params.put("pricing",strategy.getAdPricing());
|
|
|
}
|
|
|
- if(!Check.isNull(strategy.getAdBid())){
|
|
|
- params.put("bid",strategy.getAdBid());
|
|
|
- }
|
|
|
+ BigDecimal bid = StringUtils.getRandomAdCpaBid(strategy.getAdBidCreateType(),strategy.getAdMaxBid(),strategy.getAdMinBid(),strategy.getAdStepBid(),lastBid);
|
|
|
+ params.put("bid",bid);
|
|
|
if(!Check.isNull(strategy.getAdCpaBid())){
|
|
|
params.put("cpa_bid",strategy.getAdCpaBid());
|
|
|
}
|
|
@@ -875,7 +832,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
if(null!=strategy.getCampaignBudgetMode()&& "BUDGET_MODE_DAY".equals(strategy.getCampaignBudgetMode())){
|
|
|
campaignParam.put("budget",strategy.getCampaignBudget());
|
|
|
}
|
|
|
- if(!Check.isNull(strategy.getCampaignDeliveryRelatedNum())){
|
|
|
+ if(null != strategy.getCampaignDeliveryRelatedNum()||!"".equals(strategy.getCampaignDeliveryRelatedNum().trim())){
|
|
|
campaignParam.put("delivery_related_num",strategy.getCampaignDeliveryRelatedNum());
|
|
|
}
|
|
|
//创建组
|
|
@@ -944,7 +901,6 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
if (org.apache.commons.lang3.StringUtils.equals(state,"1")){
|
|
|
// 修改 账户下 状态 为关闭
|
|
|
aiBytedanceAdvertiserStrategyMapper.updStaById(id,state);
|
|
|
-
|
|
|
}
|
|
|
|
|
|
return Result.successMsg("状态修改成功---》"+("0".equals(state) ? "开" : "关"), null);
|
|
@@ -988,8 +944,8 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
public Result getIndustryList(String accountId, String type) throws Exception {
|
|
|
CtopOauthToken token = tokenService.getOauthTokenByAccountId(accountId);
|
|
|
if (null == token) {
|
|
|
- log.info("token获取失败=>accountId:{}", token.getAccountId());
|
|
|
- return Result.error("token获取失败====>>>>accountId:"+token.getAccountId());
|
|
|
+ log.info("token获取失败=>accountId:{}", accountId);
|
|
|
+ return Result.error("token获取失败====>>>>accountId:"+accountId);
|
|
|
}
|
|
|
// api 获取行业列表
|
|
|
Result listResult = marketingService.getToolIndustryList(token,type);
|
|
@@ -1025,7 +981,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
List<Map<String,Object>> mapList = new ArrayList<>();
|
|
|
for (IndustryVo vo : allList) {
|
|
|
if (parentId.equals(vo.getPId())){
|
|
|
- Map<String,Object> map = new HashMap();
|
|
|
+ Map<String,Object> map = new HashMap<>();
|
|
|
map.put("industryId", vo.getIndustry_id());
|
|
|
map.put("industryName", vo.getIndustry_name());
|
|
|
map.put("level", vo.getLevel());
|
|
@@ -1042,26 +998,26 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
|
|
|
/**
|
|
|
*
|
|
|
- * @description: 获取广告组
|
|
|
+ * 获取广告组
|
|
|
*
|
|
|
* @param accountId 广告主id
|
|
|
* @param adGroupSearchVoList
|
|
|
* @param pageNo
|
|
|
* @param pageSize
|
|
|
- * @return: org.jeecg.common.api.vo.Result
|
|
|
- * @author: zianY
|
|
|
+ * @return org.jeecg.common.api.vo.Result
|
|
|
+ * @author zianY
|
|
|
*/
|
|
|
@Override
|
|
|
public Result getCampaignGroup(String accountId, List<AdGroupSearchVo> adGroupSearchVoList, Integer pageNo, Integer pageSize) {
|
|
|
|
|
|
CtopOauthToken token = tokenService.getOauthTokenByAccountId(accountId);
|
|
|
if (null == token) {
|
|
|
- log.info("token获取失败=>accountId:{}", token.getAccountId());
|
|
|
- return Result.error("token获取失败====>>>>accountId:"+token.getAccountId());
|
|
|
+ log.info("token获取失败=>accountId:{}", accountId);
|
|
|
+ return Result.error("token获取失败====>>>>accountId:"+accountId);
|
|
|
}
|
|
|
// 获取广告组
|
|
|
Result industryList = marketingService.getCampaignGroupList(token,accountId,null,pageNo,pageSize);
|
|
|
- log.error("获取广告组=======>>>>>>>>>>>", industryList.getResult());
|
|
|
+ log.error("获取广告组=======>>>>>>>>>>>{}", industryList.getResult());
|
|
|
return Result.successMsg("获取广告组成功。", industryList.getResult());
|
|
|
}
|
|
|
|
|
@@ -1069,10 +1025,10 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
|
|
|
/**
|
|
|
*
|
|
|
- * @description 获取广告计划
|
|
|
+ * 获取广告计划
|
|
|
*
|
|
|
* @param accountId 广告主id
|
|
|
- * @param adGroupSearchVoList
|
|
|
+ * @param adGroupSearchVoList 计划参数
|
|
|
* @param pageNo 页数
|
|
|
* @param pageSize 每页条数
|
|
|
* @return org.jeecg.common.api.vo.Result
|
|
@@ -1094,28 +1050,28 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
|
|
|
/**
|
|
|
*
|
|
|
- * @description: 获取创意详细信息
|
|
|
+ * 获取创意详细信息
|
|
|
*
|
|
|
* @param accountId 广告主id
|
|
|
* @param adId 计划id
|
|
|
- * @return: org.jeecg.common.api.vo.Result
|
|
|
- * @author: zianY
|
|
|
+ * @return org.jeecg.common.api.vo.Result
|
|
|
+ * @author zianY
|
|
|
*/
|
|
|
@Override
|
|
|
public Result creativeReadInfo(String accountId, String adId) {
|
|
|
CtopOauthToken token = tokenService.getOauthTokenByAccountId(accountId);
|
|
|
if (null == token) {
|
|
|
- log.info("token获取失败=>accountId:{}", token.getAccountId());
|
|
|
- return Result.error("token获取失败====>>>>accountId:"+token.getAccountId());
|
|
|
+ log.info("token获取失败=>accountId:{}", accountId);
|
|
|
+ return Result.error("token获取失败====>>>>accountId:"+accountId);
|
|
|
}
|
|
|
// 获取 创意详细信息
|
|
|
Result industryList = marketingService.creativeRead(token,accountId,adId);
|
|
|
- log.error("获取创意详细信息=======>>>>>>>>>>>", industryList.getResult());
|
|
|
+ log.error("获取创意详细信息=======>>>>>>>>>>>{}", industryList.getResult());
|
|
|
return Result.successMsg("获取创意详细信息成功。", industryList.getResult());
|
|
|
}
|
|
|
/**
|
|
|
*
|
|
|
- * @description: 修改 广告 组-计划-创意
|
|
|
+ * 修改 广告 组-计划-创意
|
|
|
*
|
|
|
* @param strategy
|
|
|
* @return: org.jeecg.common.api.vo.Result
|
|
@@ -1126,8 +1082,8 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
|
|
|
CtopOauthToken token = tokenService.getOauthTokenByAccountId(strategy.getAccountId()+"");
|
|
|
if (null == token) {
|
|
|
- log.info("token获取失败=>accountId:{}", token.getAccountId());
|
|
|
- return Result.error("token获取失败====>>>>accountId:"+token.getAccountId());
|
|
|
+ log.info("token获取失败=>accountId:{}", strategy.getAccountId());
|
|
|
+ return Result.error("token获取失败====>>>>accountId:"+strategy.getAccountId());
|
|
|
}
|
|
|
// 1:修改广告组
|
|
|
Result resultCampaign = marketingService.updateCampaign(token,
|
|
@@ -1247,15 +1203,16 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
|
|
|
/**
|
|
|
*
|
|
|
- * @description:获取行动号召
|
|
|
+ * 获取行动号召
|
|
|
*
|
|
|
* @param accountId
|
|
|
* @param landingType
|
|
|
* @param advancedCreativeType
|
|
|
- * @return: org.jeecg.common.api.vo.Result
|
|
|
- * @author: zianY
|
|
|
+ * @return org.jeecg.common.api.vo.Result
|
|
|
+ * @author zianY
|
|
|
*/
|
|
|
- public Result getAdActionText(String accountId,String landingType,String advancedCreativeType) throws Exception{
|
|
|
+ @Override
|
|
|
+ public Result getAdActionText(String accountId, String landingType, String advancedCreativeType) throws Exception{
|
|
|
CtopOauthToken token = tokenService.getOauthTokenByAccountId(accountId);
|
|
|
return marketingService.getActionText(token,landingType,advancedCreativeType);
|
|
|
}
|
|
@@ -1274,6 +1231,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
* @return: org.jeecg.common.api.vo.Result
|
|
|
* @author: zianY
|
|
|
*/
|
|
|
+ @Override
|
|
|
public Result getAdAudiencePackage(String accountId, String landingType, String deliveryRange){
|
|
|
CtopOauthToken token = tokenService.getOauthTokenByAccountId(accountId);
|
|
|
//查询定向包信息
|
|
@@ -1306,6 +1264,7 @@ public class AiBytedanceAdvertiserStrategyServiceImpl extends ServiceImpl<AiByte
|
|
|
* @return: org.jeecg.common.api.vo.Result
|
|
|
* @author: zianY
|
|
|
*/
|
|
|
+ @Override
|
|
|
public Result getDMPCustomAudience(String accountId){
|
|
|
|
|
|
CtopOauthToken token = tokenService.getOauthTokenByAccountId(accountId);
|