Переглянути джерело

修改自动上新代码逻辑

syh 4 роки тому
батько
коміт
d13c2e6961

+ 8 - 8
jeecg-boot-module-system/src/main/resources/application-wps.yml

@@ -95,16 +95,16 @@ spring:
         # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
         connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
       datasource:
-        master:
-          url: jdbc:mysql://139.186.151.174:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true
-          username: hcst
-          password: hcst@2020
-          driver-class-name: com.mysql.jdbc.Driver
 #        master:
-#          url: jdbc:mysql://139.186.27.96:4000/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false
-#          username: data
-#          password: hcst@2021
+#          url: jdbc:mysql://139.186.151.174:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true
+#          username: hcst
+#          password: hcst@2020
 #          driver-class-name: com.mysql.jdbc.Driver
+        master:
+          url: jdbc:mysql://139.186.27.96:4000/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false
+          username: data
+          password: hcst@2021
+          driver-class-name: com.mysql.jdbc.Driver
   #redis 配置
   redis:
     database: 0

+ 8 - 8
jeecg-boot-module-system/src/test/java/org/jeecg/SampleTest.java

@@ -501,15 +501,15 @@ public class SampleTest {
 //        if (null == accountTargetTemplates || accountTargetTemplates.isEmpty()) {
 //            return;
 //        }
+//        for (AiKuaishouAccountTargetTemplate template:accountTargetTemplates){
+//            if(template.getAccountId()!=9556344L){
+//                AiKuaishouAccountTargetTemplate accountTargetTemplate2 = aiKuaishouAccountTargetTemplateService.getByAccountId(template.getAccountId());
+//                aiKuaishouNewCreateCampaign.kuaishouAiAddNewMaterialCreativity(accountTargetTemplate2,50);
+//            }
+//        }
 
-//        AiKuaishouAccountTargetTemplate accountTargetTemplate0 = aiKuaishouAccountTargetTemplateService.getById(1);
-//        aiKuaishouNewCreateCampaign.kuaishouAiAddNewMaterialCreativity(accountTargetTemplate0,50);
-//
-//        AiKuaishouAccountTargetTemplate accountTargetTemplate1 = aiKuaishouAccountTargetTemplateService.getById(30002);
-//        aiKuaishouNewCreateCampaign.kuaishouAiAddNewMaterialCreativity(accountTargetTemplate1,50);
-
-        AiKuaishouAccountTargetTemplate accountTargetTemplate2 = aiKuaishouAccountTargetTemplateService.getById(90005);
-        aiKuaishouNewCreateCampaign.kuaishouAiAdsNewMaterialCreativity(accountTargetTemplate2);
+        AiKuaishouAccountTargetTemplate accountTargetTemplate2 = aiKuaishouAccountTargetTemplateService.getById(120001);
+        aiKuaishouNewCreateCampaign.kuaishouAiAddNewMaterialCreativity(accountTargetTemplate2,1);
     }
 
     @Test

+ 24 - 1
module-job-kuaishou/src/main/java/cn/com/ctop/job/kuaishou/handler/KuaishouAiAdsNewMaterialCreativityJob.java

@@ -3,17 +3,24 @@ package cn.com.ctop.job.kuaishou.handler;
 import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouAccountTargetTemplate;
 import cn.com.ctop.kuaishou.modules.ai.service.IAiKuaishouAccountTargetTemplateService;
 import cn.com.ctop.kuaishou.modules.ai.service.IAiKuaishouNewCreateCampaign;
+import com.xxl.job.core.context.XxlJobHelper;
 import com.xxl.job.core.handler.annotation.XxlJob;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
 
 @Component
 public class KuaishouAiAdsNewMaterialCreativityJob {
 
     @Autowired
     IAiKuaishouNewCreateCampaign aiKuaishouNewCreateCampaign;
+    static ExecutorService executorService = Executors.newFixedThreadPool(5);
+    static CountDownLatch countDownLatch = null;
+
     @Autowired
     private IAiKuaishouAccountTargetTemplateService aiKuaishouAccountTargetTemplateService;
     @XxlJob("kuaishouAiAdsNewMaterialCreativityJob")
@@ -32,7 +39,23 @@ public class KuaishouAiAdsNewMaterialCreativityJob {
         if(null==accountTargetTemplates||accountTargetTemplates.isEmpty()){
             return;
         }
-        accountTargetTemplates.forEach(targetTemplate -> aiKuaishouNewCreateCampaign.kuaishouAiAddNewMaterialCreativity(targetTemplate, 10));
+        countDownLatch = new CountDownLatch(accountTargetTemplates.size());
+        accountTargetTemplates.forEach(targetTemplate -> executorService.submit(()->{
+            try {
+                aiKuaishouNewCreateCampaign.kuaishouAiAddNewMaterialCreativity(targetTemplate, 10);
+                XxlJobHelper.log("账户上新结束=>accountId:{}",targetTemplate.getAccountId());
+            }catch (Exception e) {
+                e.printStackTrace();
+            }finally {
+                countDownLatch.countDown();
+            }
+        }));
+        try {
+            countDownLatch.await();
+        } catch (InterruptedException e) {
+            e.printStackTrace();
+        }
+        XxlJobHelper.log("全部账户上新结束");
     }
 
     @XxlJob("kuaishouAiAdsHotMaterialCreativityJob")

+ 3 - 1
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/controller/AiKuaishouAdvertiserStrategyController.java

@@ -57,7 +57,9 @@ public class AiKuaishouAdvertiserStrategyController {
 			records.forEach(record->{
 				Long accountId = record.getAccountId();
 				UserAllocation allocation = allocationService.getByAccountId(accountId);
-				record.setAuthName(allocation.getAuthName());
+				if(null !=allocation){
+					record.setAuthName(allocation.getAuthName());
+				}
 				setData.add(record);
 			});
 			pageList.setRecords(setData);

+ 3 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/entity/AiKuaishouAccountTargetTemplate.java

@@ -119,6 +119,9 @@ public class AiKuaishouAccountTargetTemplate {
      * 创建时间
      */
     private Date createTime;
+    private Integer  filterConvertedLevel;
+    private String actionBarText;
+    private String creativeDescription;
     /**
      * updateTime
      */

+ 1 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/IAiKuaishouAccountTargetTemplateService.java

@@ -15,4 +15,5 @@ public interface IAiKuaishouAccountTargetTemplateService extends IService<AiKuai
 
     List<AiKuaishouAccountTargetTemplate> getAllEffectTemplate();
 
+    AiKuaishouAccountTargetTemplate getByAccountId(Long accountId);
 }

+ 11 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/AiKuaishouAccountTargetTemplateServiceImpl.java

@@ -24,4 +24,15 @@ public class AiKuaishouAccountTargetTemplateServiceImpl extends ServiceImpl<AiKu
         queryWrapper.eq("status",1);
         return this.list(queryWrapper);
     }
+
+    @Override
+    public AiKuaishouAccountTargetTemplate getByAccountId(Long accountId) {
+        QueryWrapper<AiKuaishouAccountTargetTemplate> queryWrapper = new QueryWrapper<>();
+        if(null!=accountId&&accountId!=0){
+            queryWrapper.eq("account_id",accountId);
+        }
+        queryWrapper.eq("status",1);
+        queryWrapper.last("limit 1");
+        return this.getOne(queryWrapper);
+    }
 }

+ 5 - 3
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/AiKuaishouNewCreateCampaignServiceImpl.java

@@ -318,13 +318,12 @@ public class AiKuaishouNewCreateCampaignServiceImpl implements IAiKuaishouNewCre
         creativeParams.put("unit_id",unitId);
         creativeParams.put("photo_id",videoItem.getPhotoId());
         creativeParams.put("creative_material_type",videoItem.getMaterialType());
-        creativeParams.put("action_bar_text","下载抢购");
-        creativeParams.put("description","不买亏大了!众多商品低至一元!看看你多花了多少冤枉钱!");
+        creativeParams.put("action_bar_text",targetTemplate.getActionBarText());
+        creativeParams.put("description",targetTemplate.getCreativeDescription());
         // 安卓下载中间页ID
         JSONArray siteIdArray = JSONArray.parseArray(targetTemplate.getSiteId());
         if(null == siteIdArray||!siteIdArray.isEmpty()){
             JSONObject siteObject = siteIdArray.getJSONObject(0);
-            Long appId = siteObject.getLong("appId");
             Long siteId = siteObject.getLong("siteId");
             if(null!=siteId){
                 creativeParams.put("site_id",siteId);
@@ -407,6 +406,9 @@ public class AiKuaishouNewCreateCampaignServiceImpl implements IAiKuaishouNewCre
         if(null!=population&&!population.isEmpty()){
             targetJsonObject.put("population",population);
         }
+        if(null!=targetTemplate.getFilterConvertedLevel()&&targetTemplate.getFilterConvertedLevel()!=0){
+            targetJsonObject.put("filter_converted_level",targetTemplate.getFilterConvertedLevel());
+        }
         JSONArray excludePopulation = JSONArray.parseArray(targetTemplate.getExcludePopulation());
         if(null!=excludePopulation&&!excludePopulation.isEmpty()){
             targetJsonObject.put("exclude_population",excludePopulation);