Jelajahi Sumber

Merge remote-tracking branch 'origin/master'

syh 4 tahun lalu
induk
melakukan
596317374c

+ 4 - 3
module-alarm/src/main/java/cn/com/ctop/alarm/modules/service/impl/RuleAccountThresholdServiceImpl.java

@@ -102,11 +102,12 @@ public class RuleAccountThresholdServiceImpl extends ServiceImpl<RuleAccountThre
                         continue;
                     }
                     String threshold = ruleJson.getString("threshold");
+                    RuleAccountThreshold updateThreshold = new RuleAccountThreshold();
                     if (Check.isNull(threshold)) {
-                        continue;
+                        updateThreshold.setThreshold("");
+                    } else {
+                        updateThreshold.setThreshold(threshold);
                     }
-                    RuleAccountThreshold updateThreshold = new RuleAccountThreshold();
-                    updateThreshold.setThreshold(threshold);
                     QueryWrapper<RuleAccountThreshold> updateQueryWrapper = new QueryWrapper();
                     updateQueryWrapper.eq("account_id", accountId);
                     updateQueryWrapper.eq("rule_id", ruleId);

+ 6 - 1
module-job-kuaishou/src/main/java/cn/com/ctop/job/kuaishou/handler/KuaishouDailyAudienceReportJob.java

@@ -48,11 +48,16 @@ public class KuaishouDailyAudienceReportJob {
         }
         //查询有效策略的账户ID
         List<Long> accountIds = kuaishouStrategyService.queryActiveAccount();
+        if (Check.isNull(accountIds) || accountIds.size() == 0) {
+            XxlJobHelper.log("定时获取人群分析报表数据异常:为获取到有效策略账户信息");
+            XxlJobHelper.handleFail();
+            return;
+        }
         //筛选出有效账户,获取该账户的组级人群报表数据
         List<CtopOauthToken> activeTokens = new ArrayList<>();
         for (Long accountId : accountIds) {
             for (CtopOauthToken token : tokens) {
-                if (token.getAccountId() == accountId) {
+                if (token.getAccountId() - accountId == 0) {
                     activeTokens.add(token);
                 }
             }

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

@@ -14,7 +14,7 @@ public class KuaishouEffectVideoJob {
     @Autowired
     private IKuaishouVideoEtlInfoService etlInfoService;
 
-    @XxlJob("kuaishouGroupDailyReportJob")
+    @XxlJob("kuaishouEffectVideoJob")
     public void execute() throws ParseException {
         Date getDate = DateUtils.addDay(new Date(),-1);
         etlInfoService.etlKuaishouVideoInfo(getDate);

+ 5 - 10
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/controller/MaterialRefuseController.java

@@ -47,9 +47,13 @@ public class MaterialRefuseController {
                                                              HttpServletRequest req) {
         Result<IPage<KuaiShouCreative>> result = new Result<>();
         try {
-
+            String creativeName = creative.getCreativeName();
+            creative.setCreativeName(null);
             QueryWrapper<KuaiShouCreative> queryWrapper = QueryGenerator.initQueryWrapper(creative, req.getParameterMap());
             queryWrapper.eq("status", 42);
+            if (!Check.isNull(creativeName)) {
+                queryWrapper.like("creative_name", creativeName);
+            }
             queryWrapper.orderByDesc("creative_create_time");
             Page<KuaiShouCreative> page = new Page<KuaiShouCreative>(pageNo, pageSize);
             IPage<KuaiShouCreative> pageList = creativeService.page(page, queryWrapper);
@@ -247,19 +251,14 @@ public class MaterialRefuseController {
                 newString = sMo.replace(';', ';');
             } else if (sMo.contains("!")) {
                 newString = sMo.replace("!", "!");
-
             } else if (sMo.contains("?")) {
                 newString = sMo.replace('?', '?');
-
             } else if (sMo.contains(":")) {
                 newString = sMo.replace(':', ':');
-
             } else if (sMo.contains("“")) {
                 newString = sMo.replace('“', '"');
-
             } else if (sMo.contains("”")) {
                 newString = sMo.replace('”', '"');
-
             } else if (sMo.contains("<")) {
                 newString = sMo.replace('>', '》').replace('<', '《');
             } else if (sMo.contains(",")) {
@@ -270,16 +269,12 @@ public class MaterialRefuseController {
                 newString = sMo.replace(';', ';');
             } else if (sMo.contains("!")) {
                 newString = sMo.replace("!", "!");
-
             } else if (sMo.contains("?")) {
                 newString = sMo.replace('?', '?');
-
             } else if (sMo.contains(":")) {
                 newString = sMo.replace(':', ':');
-
             } else if (sMo.contains(""")) {
                 newString = sMo.replace('"', '“');
-
             } else if (sMo.contains(""")) {
                 newString = sMo.replace('"', '”');
             } else if (sMo.contains("《")) {

+ 2 - 1
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/entity/KuaiShouGroupTemplate.java

@@ -214,7 +214,8 @@ public class KuaiShouGroupTemplate {
     private Integer createCreativeCount;
     private Integer creativeStatus;
     private String creativeReviewDetail;
-
+    private Integer createType;
+    private String photoIds;
 
     /**
      * 创建时间

+ 2 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/mapper/KuaiShouGroupTemplateMapper.java

@@ -23,4 +23,6 @@ public interface KuaiShouGroupTemplateMapper extends BaseMapper<KuaiShouGroupTem
     Integer getApiCreateCount(@Param("accountId") Long accountId, @Param("date") String date);
 
     JSONObject getUrlByPhotoId(@Param("photoId") Long photoId);
+
+    JSONObject getImageJsonByMd5(String md5);
 }

+ 11 - 1
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/mapper/xml/KuaiShouGroupTemplateMapper.xml

@@ -18,8 +18,18 @@
       url as 'url'
       from ctop_material_cut_frame
       where video_signature = #{md5}
-      limit 6
+       ORDER BY RAND() LIMIT 6
     </select>
+    <select id="getImageJsonByMd5" resultType="com.alibaba.fastjson.JSONObject">
+      select
+      signature as 'md5',
+      url as 'url'
+      from ctop_material_cut_frame
+      where video_signature = #{md5}
+       ORDER BY RAND() LIMIT 1
+    </select>
+
+
     <select id="getApiCreateCount" resultType="java.lang.Integer">
     select count(1)
     from

+ 2 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/IKuaiShouGroupTemplateService.java

@@ -33,4 +33,6 @@ public interface IKuaiShouGroupTemplateService extends IService<KuaiShouGroupTem
     JSONObject getUrlByPhotoId(Long photoId);
 
     void createCreative(String accessToken, Long unitId, KuaiShouGroupTemplate template);
+
+    JSONObject getUnionJson(Long templateId);
 }

+ 0 - 20
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/impl/BatchServiceImpl.java

@@ -1860,39 +1860,29 @@ public class BatchServiceImpl implements IBatchService {
         if (Check.isNull(requestJson)) {
             throw new Exception("入参为空");
         }
-
-
         JSONObject creativeJson = new JSONObject();
         creativeJson.put("advertiser_id", token.getAccountId());
-
         Long creativeId = requestJson.getLong("creativeId");
         if (Check.isNull(creativeId)) {
             throw new Exception("请选择广告创意");
         }
         creativeJson.put("creative_id", creativeId);
-
-
         // 创意名称
         if (!Check.isNull(requestJson.get("creativeName"))) {
             creativeJson.put("creative_name", requestJson.get("creativeName"));
         }
-
         //封面
         if (!Check.isNull(requestJson.get("photoId"))) {
             creativeJson.put("photo_id", requestJson.get("photoId"));
         }
-
         // 视频id
         if (!Check.isNull(requestJson.get("imageToken"))) {
             creativeJson.put("image_token", requestJson.get("imageToken"));
         }
-
         // 行动号召按钮
         if (!Check.isNull(requestJson.get("actionBarText"))) {
             creativeJson.put("action_bar_text", requestJson.get("actionBarText"));
         }
-
-
         // 广告语
         if (!Check.isNull(requestJson.get("description"))) {
             creativeJson.put("description", requestJson.getString("description").trim());
@@ -1901,7 +1891,6 @@ public class BatchServiceImpl implements IBatchService {
         if (!Check.isNull(requestJson.get("stickerTitle"))) {
             creativeJson.put("sticker_title", requestJson.get("stickerTitle"));
         }
-
         // 贴纸样式
         if (!Check.isNull(requestJson.get("overlayType"))) {
             creativeJson.put("overlay_type", requestJson.get("overlayType"));
@@ -1910,18 +1899,15 @@ public class BatchServiceImpl implements IBatchService {
         if (!Check.isNull(requestJson.get("clickTrackUrl"))) {
             creativeJson.put("click_track_url", requestJson.get("clickTrackUrl"));
         }
-
         // 后贴片 第三方检测链接
         if (!Check.isNull(requestJson.get("adPhotoPlayedT3sUrl"))) {
             creativeJson.put("ad_photo_played_t3s_url", requestJson.get("adPhotoPlayedT3sUrl"));
         }
-
         // 后贴片 第三方检测链接
         if (!Check.isNull(requestJson.get("impressionUrl"))) {
             creativeJson.put("impression_url", requestJson.get("impressionUrl"));
         }
         JSONObject returnJson = updateService.updateCreative(token.getAccessToken(), creativeJson);
-
         return returnJson;
     }
 
@@ -1935,14 +1921,12 @@ public class BatchServiceImpl implements IBatchService {
      */
     @Override
     public JSONObject getWhiteList(Long accountId, String accessToken) {
-
         String url = "https://ad.e.kuaishou.com/rest/openapi/v1/advertiser/white_list";
         Map<String, String> headers = new HashMap<String, String>();
         headers.put("Content-Type", "application/json");
         headers.put("Access-Token", accessToken);
         Map<String, Object> param = new HashMap<String, Object>();
         param.put("advertiser_id", accountId);
-
         String result = HttpUtils.httpPostRequest(url, param, headers);
         JSONObject resultJson = JSONObject.parseObject(result);
         log.info("获取联盟白名单,accountId:{},data:{}", accountId, resultJson);
@@ -1951,7 +1935,6 @@ public class BatchServiceImpl implements IBatchService {
             if (code == 0) {
                 return resultJson.getJSONObject("data");
             }
-
         }
         return null;
     }
@@ -1997,7 +1980,6 @@ public class BatchServiceImpl implements IBatchService {
      */
     @Override
     public JSONArray getCreativeCategory(Long accountId, String accessToken) {
-
         try {
             String url = "https://ad.e.kuaishou.com/rest/openapi/v1/creative/creative_category/list";
             Map<String, String> headers = new HashMap<String, String>();
@@ -2038,7 +2020,6 @@ public class BatchServiceImpl implements IBatchService {
 
 
     private JSONArray getSecond(String categoryId, JSONArray details) {
-
         JSONArray secondArr = new JSONArray();
         for (int i = 0; i < details.size(); i++) {
             JSONObject secondJson = details.getJSONObject(i);
@@ -2060,7 +2041,6 @@ public class BatchServiceImpl implements IBatchService {
             if (categoryId.equals(parent_id)) {
                 thirdArr.add(thirdJson);
             }
-
         }
         return thirdArr;
     }

+ 1 - 1
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/impl/KuaiShouCreativeServiceImpl.java

@@ -86,7 +86,7 @@ public class KuaiShouCreativeServiceImpl extends ServiceImpl<KuaiShouCreativeMap
         if (!Check.isNull(campaignId)) {
             param.put("campaign_id", campaignId);
         }
-        param.put("page_size", 200);
+        param.put("page_size", 500);
         param.put("page", page);
 
         String result = HttpUtils.kuaiShouhttpPostRequest(url, param.toJSONString(), headers);

+ 148 - 55
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/impl/KuaiShouGroupTemplateServiceImpl.java

@@ -72,11 +72,21 @@ public class KuaiShouGroupTemplateServiceImpl extends ServiceImpl<KuaiShouGroupT
         if (Check.isNull(photoArr)) {
             throw new Exception("请选择需要创建的视频");
         }
-        if (createCount != photoArr.size()) {
-            throw new Exception("视频数量必须和创建数量保持一致");
+
+        Integer createType = requestJson.getInteger("createType"); // 创建类型 0 单品 1 混搭
+        if (Check.isNull(createType)) {
+            throw new Exception("请选择创意创建方式混搭、单品");
+        }
+
+        if (createType == 0 && createCount != photoArr.size()) {
+            throw new Exception("单品视频数量必须和创建数量保持一致");
         }
-        JSONObject returnJson = new JSONObject();
 
+        if (createType == 1 && createCount * 15 != photoArr.size()) {
+            throw new Exception("混搭视频数量必须和创建数量保持倍数关系");
+        }
+
+        JSONObject returnJson = new JSONObject();
         String userId = requestJson.getString("userId");
         String unitName = requestJson.getString("unitName");
         Long template_id = requestJson.getLong("templateId");
@@ -109,16 +119,27 @@ public class KuaiShouGroupTemplateServiceImpl extends ServiceImpl<KuaiShouGroupT
         String description = requestJson.getString("description");
         Long site_id = requestJson.getLong("siteId");
 
+
         List<KuaiShouGroupTemplate> templates = new ArrayList<>();
         for (int i = 0; i < createCount; i++) {
-            Long photoId = photoArr.getLong(i);
-            String name = unitName + "_" + i;
             KuaiShouGroupTemplate template = new KuaiShouGroupTemplate();
+            template.setCreateType(createType);
+            if (createType == 0) { // 创建方式为单品
+                Long photoId = photoArr.getLong(i);
+                template.setPhotoId(photoId);
+            } else if (createType == 1) { // 创建方式为混搭
+                JSONArray photoIds = getPhotoIds(photoArr, i);
+                if (Check.isNull(photoIds)) {
+                    log.error("根据下标未获取到详细信息");
+                    continue;
+                }
+                template.setPhotoIds(photoIds.toJSONString());
+            }
+            String name = unitName + "_" + i;
             template.setAccountId(accountId);
             template.setUserId(userId);
             template.setCampaignId(campaignId);
             template.setUnitName(name);
-            template.setPhotoId(photoId);
             if (!Check.isNull(template_id)) {
                 template.setTemplateId(template_id);
             }
@@ -227,6 +248,29 @@ public class KuaiShouGroupTemplateServiceImpl extends ServiceImpl<KuaiShouGroupT
     }
 
 
+    private JSONArray getPhotoIds(JSONArray photoArr, Integer index) {
+        JSONArray array = new JSONArray();
+        Integer minIndex;
+        Integer maxIndex;
+        if (index == 0) {
+            maxIndex = (index + 1) * 15 - 1;
+            minIndex = index;
+        } else {
+            maxIndex = (index + 1) * 15 - 1;
+            minIndex = index * 15;
+        }
+        for (int i = 0; i < photoArr.size(); i++) {
+            if (minIndex > maxIndex) {
+                break;
+            }
+            Long photoId = photoArr.getLong(minIndex);
+            array.add(photoId);
+            minIndex++;
+        }
+        return array;
+    }
+
+
     /**
      * 创建组
      */
@@ -384,7 +428,8 @@ public class KuaiShouGroupTemplateServiceImpl extends ServiceImpl<KuaiShouGroupT
      *
      * @return
      */
-    private JSONObject getUnionJson(Long templateId) {
+    @Override
+    public JSONObject getUnionJson(Long templateId) {
         JSONObject returnJson = new JSONObject();
         QueryWrapper<KuaishouTemplateTarget> targetQueryWrapper = new QueryWrapper<>();
         targetQueryWrapper.eq("template_id", templateId);
@@ -489,7 +534,6 @@ public class KuaiShouGroupTemplateServiceImpl extends ServiceImpl<KuaiShouGroupT
         return groupTemplateMapper.getUrlByPhotoId(photoId);
     }
 
-
     /**
      * 创建创意
      *
@@ -504,17 +548,6 @@ public class KuaiShouGroupTemplateServiceImpl extends ServiceImpl<KuaiShouGroupT
         updateTemplate.setCreativeStatus(1);
         updateTemplate.setCreativeReviewDetail("创意创建中");
         this.updateById(updateTemplate);
-        Long photoId = template.getPhotoId();
-        JSONObject md5Json = groupTemplateMapper.getMd5ByPhotoId(photoId);
-        if (Check.isNull(md5Json)) {
-            log.error("未获取到素材详细信息,accountId:{},unitId:{}", template.getAccountId(), unitId);
-            updateTemplate.setCreativeStatus(3);
-            updateTemplate.setCreativeReviewDetail("未获取到素材信息");
-            this.updateById(updateTemplate);
-            return;
-        }
-        String md5 = md5Json.getString("md5");
-        List<JSONObject> imageList = groupTemplateMapper.getImageListByMd5(md5);
         JSONObject createJson = new JSONObject();
         createJson.put("unit_id", unitId);
         if (!Check.isNull(template.getClickTrackUrl())) {
@@ -529,51 +562,91 @@ public class KuaiShouGroupTemplateServiceImpl extends ServiceImpl<KuaiShouGroupT
         if (!Check.isNull(template.getCreativeTag())) {
             createJson.put("creative_tag", JSONArray.parseArray(template.getCreativeTag()));
         }
-        Integer materialType = md5Json.getInteger("materialType");
+
         JSONArray creatives = new JSONArray();
-        if (Check.isNull(imageList)) {
-            JSONObject json = new JSONObject();
-            json.put("creative_name", template.getCreativeName());
-            json.put("photo_id", template.getPhotoId());
-            json.put("creative_material_type", materialType);
-            json.put("action_bar_text", template.getActionBarText());
-            json.put("description", template.getDescription());
-            if (Check.isNull(template.getSiteId())) {
-                json.put("site_id", template.getSiteId());
-            }
-            creatives.add(json);
-        } else {
-            for (int i = 0; i < imageList.size(); i++) {
-                JSONObject imageJson = imageList.get(i);
-                if (Check.isNull(imageJson)) {
-                    continue;
-                }
+        Integer createType = template.getCreateType();
+        if (createType == 0) { // 单品
+            Long photoId = template.getPhotoId();
+            JSONObject videoMd5Json = groupTemplateMapper.getMd5ByPhotoId(photoId);
+            if (Check.isNull(videoMd5Json)) {
+                log.error("未获取到素材详细信息,accountId:{},unitId:{}", template.getAccountId(), unitId);
+                updateTemplate.setCreativeStatus(3);
+                updateTemplate.setCreativeReviewDetail("未获取到素材信息");
+                this.updateById(updateTemplate);
+                return;
+            }
+            Integer materialType = videoMd5Json.getInteger("materialType");
+            String videoMd5 = videoMd5Json.getString("md5");
+            List<JSONObject> imageList = groupTemplateMapper.getImageListByMd5(videoMd5);
+            if (Check.isNull(imageList)) {
                 JSONObject json = new JSONObject();
-                String signature = imageJson.getString("md5");
-                String imageToken = null;
-                if (!Check.isNull(signature)) {
-                    QueryWrapper<KuaiShouImageGet> queryWrapper = new QueryWrapper<>();
-                    queryWrapper.eq("account_id", template.getAccountId());
-                    queryWrapper.eq("signature", signature);
-                    queryWrapper.last("limit 1");
-                    KuaiShouImageGet imageGet = imageGetService.getOne(queryWrapper);
-                    if (!Check.isNull(imageGet)) {
-                        imageToken = imageGet.getImageToken();
-                    } else {
-                        String url = imageJson.getString("url");
-                        imageToken = uploadService.kuauiShouImageUpload(url, signature, template.getAccountId(), accessToken);
+                json.put("creative_name", template.getCreativeName());
+                json.put("photo_id", template.getPhotoId());
+                json.put("creative_material_type", materialType);
+                json.put("action_bar_text", template.getActionBarText());
+                json.put("description", template.getDescription());
+                if (!Check.isNull(template.getSiteId())) {
+                    json.put("site_id", template.getSiteId());
+                }
+                creatives.add(json);
+            } else {
+                for (int i = 0; i < imageList.size(); i++) {
+                    JSONObject imageJson = imageList.get(i);
+                    if (Check.isNull(imageJson)) {
+                        continue;
+                    }
+                    JSONObject json = new JSONObject();
+                    String imageMd5 = imageJson.getString("md5");
+                    String imageToken = getImageToken(imageMd5, template.getAccountId(), accessToken, imageJson.getString("url"));
+                    if (Check.isNull(imageToken)) {
+                        continue;
                     }
+                    json.put("image_token", imageToken);
+                    json.put("creative_name", template.getCreativeName() + "_" + i);
+                    json.put("photo_id", template.getPhotoId());
+                    json.put("creative_material_type", materialType);
+                    json.put("action_bar_text", template.getActionBarText());
+                    json.put("description", template.getDescription());
+                    if (!Check.isNull(template.getSiteId())) {
+                        json.put("site_id", template.getSiteId());
+                    }
+                    creatives.add(json);
                 }
-                if (Check.isNull(imageToken)) {
-                    continue;
+            }
+        } else if (createType == 1) {  // 混搭
+            JSONArray array = JSONArray.parseArray(template.getPhotoIds());
+            if (Check.isNull(array)) {
+                updateTemplate.setCreativeStatus(3);
+                updateTemplate.setCreativeReviewDetail("未获取到混搭素材信息");
+                this.updateById(updateTemplate);
+                return;
+            }
+            for (int i = 0; i < array.size(); i++) {
+                Long photoId = array.getLong(i);
+                JSONObject videoJson = groupTemplateMapper.getMd5ByPhotoId(photoId);
+                if (Check.isNull(videoJson)) {
+                    log.error("未获取到素材详细信息,accountId:{},unitId:{}", template.getAccountId(), unitId);
+                    updateTemplate.setCreativeStatus(3);
+                    updateTemplate.setCreativeReviewDetail("未获取到素材信息");
+                    this.updateById(updateTemplate);
+                    return;
+                }
+                String videoMd5 = videoJson.getString("md5");
+                Integer materialType = videoJson.getInteger("materialType");
+                JSONObject json = new JSONObject();
+                JSONObject imageJson = groupTemplateMapper.getImageJsonByMd5(videoMd5);
+                if (!Check.isNull(imageJson)) {
+                    String imageToken = getImageToken(imageJson.getString("md5"), template.getAccountId(), accessToken, imageJson.getString("url"));
+                    if (!Check.isNull(imageToken)) {
+                        json.put("image_token", imageToken);
+                    }
                 }
-                json.put("image_token", imageToken);
                 json.put("creative_name", template.getCreativeName() + "_" + i);
-                json.put("photo_id", template.getPhotoId());
+                json.put("photo_id", photoId);
                 json.put("creative_material_type", materialType);
                 json.put("action_bar_text", template.getActionBarText());
                 json.put("description", template.getDescription());
-                if (Check.isNull(template.getSiteId())) {
+                if (!Check.isNull(template.getSiteId())) {
                     json.put("site_id", template.getSiteId());
                 }
                 creatives.add(json);
@@ -592,4 +665,24 @@ public class KuaiShouGroupTemplateServiceImpl extends ServiceImpl<KuaiShouGroupT
         }
         this.updateById(updateTemplate);
     }
+
+
+    private String getImageToken(String md5, Long accountId, String accessToken, String url) {
+
+        String imageToken = null;
+        QueryWrapper<KuaiShouImageGet> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("account_id", accountId);
+        queryWrapper.eq("signature", md5);
+        queryWrapper.last("limit 1");
+        KuaiShouImageGet imageGet = imageGetService.getOne(queryWrapper);
+        if (!Check.isNull(imageGet)) {
+            imageToken = imageGet.getImageToken();
+        } else {
+            imageToken = uploadService.kuauiShouImageUpload(url, md5, accountId, accessToken);
+        }
+
+
+        return imageToken;
+
+    }
 }

+ 0 - 1
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/report/service/impl/KuaishouAudienceReportDailyServiceImpl.java

@@ -288,6 +288,5 @@ public class KuaishouAudienceReportDailyServiceImpl extends ServiceImpl<Kuaishou
         } catch (Exception e) {
             log.error("插入人群分析报表数据异常,数据维度:{}", type, e);
         }
-        log.info("use time :{} ms", (System.currentTimeMillis() - start));
     }
 }