Browse Source

未发布落地页 添加定时发布

ZHAOXIAN 1 year ago
parent
commit
fe64c4b1de

+ 2 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ToolsSiteMapper.java

@@ -35,6 +35,8 @@ public interface ToolsSiteMapper {
 
     List<Long> getsiteAdvertiserIds();
 
+    List<JSONObject> getsiteAdvertiserIds2();
+
     boolean updateAdvertiserToolsSite(AdvertiserToolsSite advertiserToolsSite);
 
     boolean insertAdvertiserToolsSite(AdvertiserToolsSite advertiserToolsSite);

+ 7 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/ToolsSiteMapper.xml

@@ -288,11 +288,16 @@
         AND plat_type = #{platType}
     </update>
 
+    <select id="getsiteAdvertiserIds2" resultType="com.alibaba.fastjson.JSONObject">
+        select advertiser_id,task_id
+        from deepthink.advertiser_tools_site
+        where status = 'EDIT'
+    </select>
+
     <select id="getsiteAdvertiserIds" resultType="Long">
         select advertiser_id
         from deepthink.advertiser_tools_site
-        where status = 'EDIT'
-           OR status = 'ENABLE'
+        where status = 'ENABLE'
     </select>
 
     <select id="queryIsCreateSite" resultType="com.alibaba.fastjson.JSONObject">

+ 6 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IToolsSiteService.java

@@ -1,5 +1,7 @@
 package cn.com.ctop.job.bytedance.data.service;
 
+import com.alibaba.fastjson.JSONObject;
+
 import java.util.List;
 
 public interface IToolsSiteService {
@@ -20,5 +22,9 @@ public interface IToolsSiteService {
 
     List<Long> getSiteAdvertiserIds();
 
+    List<JSONObject> getSiteAdvertiserIds2();
+
     void updateSiteStatus(Long id, Integer page);
+
+    void publishSiteStatus(Long id, String taskId);
 }

+ 18 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/ToolsSiteServiceImpl.java

@@ -213,6 +213,11 @@ public class ToolsSiteServiceImpl implements IToolsSiteService {
     }
 
     @Override
+    public List<JSONObject> getSiteAdvertiserIds2() {
+        return toolsSiteMapper.getsiteAdvertiserIds2();
+    }
+
+    @Override
     public void updateSiteStatus(Long advertiserId, Integer page) {
         String accessToken = tokenMapper.onlyGetToken(advertiserId);
         boolean nextPage = false;
@@ -246,6 +251,19 @@ public class ToolsSiteServiceImpl implements IToolsSiteService {
         }
     }
 
+    @Override
+    public void publishSiteStatus(Long id, String taskId) {
+        String url = "https://api.deepthink.artlinkworld.cn/task/createTask";
+        Map<String, Object> param = new HashMap<>();
+        param.put("taskId", taskId);
+        param.put("advertiserId", id);
+        String s = HttpUtils.httpPostRequest(url, param, null);
+        JSONObject jsonObject = JSONObject.parseObject(s);
+        if (!Check.isNull(jsonObject) && jsonObject.getInteger("code") == 0) {
+            log.info("任务id:{},advertiserId: {} 执行创建落地页", taskId, id);
+        }
+    }
+
     //主动去创建落地页
     private void pushCreateSite(Long advertiserId, Long instanceId) {
         List<JSONObject> objectList = toolsSiteMapper.queryIsCreateSite(advertiserId, instanceId);

+ 10 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/handler/ToolsSiteJob.java

@@ -3,6 +3,7 @@ package cn.com.ctop.job.bytedance.handler;
 
 import cn.com.ctop.job.bytedance.data.service.IToolsSiteService;
 import cn.com.ctop.job.bytedance.data.utils.Check;
+import com.alibaba.fastjson.JSONObject;
 import com.xxl.job.core.handler.annotation.XxlJob;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -73,13 +74,21 @@ public class ToolsSiteJob {
             }));
         }
 
-        //落地页
+        //更新落地页状态
         List<Long> siteIds = toolsSiteService.getSiteAdvertiserIds();
         if (!Check.isNull(siteIds)) {
             siteIds.forEach(id -> siteExecutorService.submit(() -> {
                 toolsSiteService.updateSiteStatus(id, 1);
             }));
         }
+
+        //发布落地页
+        List<JSONObject> sids = toolsSiteService.getSiteAdvertiserIds2();
+        if (!Check.isNull(siteIds)) {
+            sids.forEach(o -> siteExecutorService.submit(() -> {
+                toolsSiteService.publishSiteStatus(o.getLong("advertiser_id"),o.getString("task_id"));
+            }));
+        }
     }
 
 }