소스 검색

头条批量

jiequan.bi 4 년 전
부모
커밋
c315d9f849

+ 1 - 3
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/controller/ByteDanceAdvertisePlanController.java

@@ -18,7 +18,6 @@ import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
-import java.util.concurrent.atomic.AtomicInteger;
 
 /**
  * 今日头条广告计划信息
@@ -118,8 +117,7 @@ public class ByteDanceAdvertisePlanController {
     }
 
     @PostMapping(value = "/batchEdit")
-    public Result<List<ByteDanceAdvertisePlan>> edit(@RequestBody List<ByteDanceAdvertisePlan> byteDanceAdvertisePlanList
-    ) {
+    public Result<List<ByteDanceAdvertisePlan>> edit(@RequestBody List<ByteDanceAdvertisePlan> byteDanceAdvertisePlanList) {
         Result<List<ByteDanceAdvertisePlan>> result = new Result<>();
         byteDanceAdvertisePlanList.forEach(it->{
             ByteDanceAdvertisePlan byteDanceAdvertisePlanEntity = byteDanceAdvertisePlanService.getById(it.getId());

+ 14 - 0
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/tool/service/IByteDanceConvertToolService.java

@@ -0,0 +1,14 @@
+package cn.com.ctop.toutiao.modules.tool.service;
+
+import cn.com.ctop.common.module.entity.CtopOauthToken;
+
+import java.util.Map;
+
+public interface IByteDanceConvertToolService {
+
+    //【新】查询计划可用转化id  https://ad.oceanengine.com/open_api/2/tools/ad_convert/query/
+    Map<String,Object> queryAdConvert(CtopOauthToken token, Long accountId, String landingType, String appType,
+                                      String downloadType,String externalUrl,String toutiaoPackage,
+                                      String itunesUrl);
+
+}

+ 63 - 0
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/tool/service/impl/ByteDanceConvertToolServiceImpl.java

@@ -0,0 +1,63 @@
+package cn.com.ctop.toutiao.modules.tool.service.impl;
+
+import cn.com.ctop.common.module.entity.CtopOauthToken;
+import cn.com.ctop.common.module.utils.HttpUtils;
+import cn.com.ctop.toutiao.modules.tool.constants.QueryToolUrlConstant;
+import cn.com.ctop.toutiao.modules.tool.service.IByteDanceConvertToolService;
+import com.alibaba.fastjson.JSONObject;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import java.util.HashMap;
+import java.util.Map;
+
+@Slf4j
+@Service
+public class ByteDanceConvertToolServiceImpl implements IByteDanceConvertToolService {
+
+    @Override
+    public Map<String, Object> queryAdConvert(CtopOauthToken token, Long accountId, String landingType, String appType,
+                                              String downloadType,String externalUrl,String toutiaoPackage,
+                                              String itunesUrl) {
+
+        Map<String, String> headers = new HashMap<>();
+        headers.put("Content-Type", "application/json");
+        headers.put("Access-Token", token.getAccessToken());
+
+        JSONObject params=new JSONObject();
+        params.put("advertiser_id",accountId);
+        params.put("landing_type",landingType);
+        if(landingType.equals("LINK")){
+            params.put("promotion_content","EXTERNAL_URL");
+            params.put("external_url",externalUrl);
+        }else if(landingType.equals("APP")){
+            if(downloadType.equals("DOWNLOAD_URL")){
+                params.put("promotion_content","DOWNLOAD_URL");
+                if(appType.equals("APP_ANDROID")){
+                    params.put("package_name",toutiaoPackage);
+                    params.put("app_type",appType);
+                }else if(appType.equals("APP_IOS")){
+                    params.put("itunes_url",itunesUrl);
+                    params.put("app_type",appType);
+                }
+            }else if(downloadType.equals("EXTERNAL_URL")){
+                params.put("promotion_content","EXTERNAL_URL");
+                params.put("external_url",externalUrl);
+            }
+
+        }
+        JSONObject jsonObject = JSONObject.parseObject(HttpUtils.httpGet(QueryToolUrlConstant.AD_CONVERT_QUERY, params, headers));
+        Map<String,Object> resultMap=new HashMap<>();
+        if(jsonObject.getInteger("code")!=0){
+            log.error("查询计划可用转化id失败==》accountId:{},message:{}", token.getAccountId(), jsonObject.getString("message"));
+            resultMap.put("code", -1);
+            resultMap.put("message", jsonObject.getString("message"));
+            return resultMap;
+        }
+        resultMap.put("code", 0);
+        resultMap.put("data",jsonObject.getJSONObject("data"));
+        //.getJSONArray("list").getJSONArray(3).getLong(1)
+        return resultMap;
+    }
+
+}