Browse Source

增加文章匹配状态枚举

xueyiming 8 months ago
parent
commit
b3b337643e

+ 46 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/common/enums/ContentStatusEnum.java

@@ -0,0 +1,46 @@
+package com.tzld.piaoquan.longarticle.common.enums;
+
+public enum ContentStatusEnum {
+    SUCCESS_3(3, "成功"),
+    SUCCESS_4(4, "成功"),
+    ERROR_95(95, "KIMI识别文章风险不处理"),
+    ERROR_96(96, "文章品类处于账号的负向品类中"),
+    ERROR_97(97, "文章晋级或者退场"),
+    ERROR_99(99, "匹配视频失败");
+
+    private final int statusCode;
+    private final String message;
+
+    ContentStatusEnum(int statusCode, String message) {
+        this.statusCode = statusCode;
+        this.message = message;
+    }
+
+    public int getStatusCode() {
+        return statusCode;
+    }
+
+    public String getMessage() {
+        return message;
+    }
+
+    // 判断是否为成功状态
+    public static boolean isSuccess(int contentStatus) {
+        return contentStatus == SUCCESS_3.statusCode || contentStatus == SUCCESS_4.statusCode;
+    }
+
+    public static boolean isFail(int contentStatus) {
+        return contentStatus == ERROR_95.statusCode || contentStatus == ERROR_96.statusCode
+                || contentStatus == ERROR_97.statusCode || contentStatus == ERROR_99.statusCode;
+    }
+
+    // 获取错误信息
+    public static String getErrorMessage(int contentStatus) {
+        for (ContentStatusEnum status : ContentStatusEnum.values()) {
+            if (status.statusCode == contentStatus) {
+                return status.message;
+            }
+        }
+        return null;
+    }
+}

+ 8 - 20
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/CoreServiceImpl.java

@@ -1,6 +1,7 @@
 package com.tzld.piaoquan.longarticle.service.local.impl;
 
 import com.alibaba.fastjson.JSON;
+import com.tzld.piaoquan.longarticle.common.enums.ContentStatusEnum;
 import com.tzld.piaoquan.longarticle.common.enums.PublishGzhPushTypeEnum;
 import com.tzld.piaoquan.longarticle.dao.mapper.PlanAccountMapper;
 import com.tzld.piaoquan.longarticle.dao.mapper.PublishContentMapper;
@@ -151,37 +152,27 @@ public class CoreServiceImpl implements CoreService {
                 continue;
             }
             //没有待匹配的文章  更新状态为1
-            if (longArticleSystemContentVO.getTotalCount() == 0) {
-                planAccountService.updateMatchStatus(1, planAccount.getId());
+            if (longArticleSystemContentVO.getTotalCount() == 0
+                    || CollectionUtils.isEmpty(longArticleSystemContentVO.getContentItemList())) {
                 continue;
             }
             for (ContentItemVO contentItemVO : longArticleSystemContentVO.getContentItemList()) {
                 MatchVideo content = contentService.getContent(contentItemVO.getSourceId(), planAccount.getGhId());
                 if (content != null) {
                     Integer contentStatus = content.getContentStatus();
-                    if (contentStatus == 3 || contentStatus == 4) {
+                    if (ContentStatusEnum.isSuccess(contentStatus)) {
                         MatchMiniprogramStatusParam statusParam = new MatchMiniprogramStatusParam();
                         statusParam.setStatus(2);
                         statusParam.setPublishContentId(contentItemVO.getPublishContentId());
                         aigcService.updateMatchMiniprogramStatus(statusParam);
                         continue;
                     }
-                    if (contentStatus == 95 || contentStatus == 96 || contentStatus == 97 || contentStatus == 99) {
+                    if (ContentStatusEnum.isFail(contentStatus)) {
                         MatchMiniprogramStatusParam statusParam = new MatchMiniprogramStatusParam();
                         statusParam.setStatus(3);
                         statusParam.setPublishContentId(contentItemVO.getPublishContentId());
-                        if (contentStatus == 95) {
-                            statusParam.setErrorMsg("KIMI识别文章风险不处理");
-                        }
-                        if (contentStatus == 96) {
-                            statusParam.setErrorMsg("文章品类处于账号的负向品类中");
-                        }
-                        if (contentStatus == 97) {
-                            statusParam.setErrorMsg("文章晋级或者退场");
-                        }
-                        if (contentStatus == 99) {
-                            statusParam.setErrorMsg("匹配视频失败");
-                        }
+                        String errorMessage = ContentStatusEnum.getErrorMessage(contentStatus);
+                        statusParam.setErrorMsg(errorMessage);
                         aigcService.updateMatchMiniprogramStatus(statusParam);
                     }
                 } else {
@@ -210,10 +201,7 @@ public class CoreServiceImpl implements CoreService {
         }
         LocalTime currentTime = TimeZoneUtil
                 .currentTime(Optional.ofNullable(timezone).orElse(TimeZoneUtil.Timezone.china));
-        if (currentTime.isAfter(LocalTime.parse(startWindow)) && currentTime.isBefore(LocalTime.parse(endWindow))) {
-            return true;
-        }
-        return false;
+        return currentTime.isAfter(LocalTime.parse(startWindow)) && currentTime.isBefore(LocalTime.parse(endWindow));
     }
 
     private boolean checkPlanAccount(PlanAccount planAccount) {