Explorar el Código

Merge branch 'master' into wyp/1224-feishuCard

wangyunpeng hace 6 meses
padre
commit
9b646e4a1c

+ 2 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/common/enums/aigc/PublishPlanInputSourceTypesEnum.java

@@ -18,6 +18,8 @@ public enum PublishPlanInputSourceTypesEnum {
     template(10, "评论/私信模板"),
     monitor_plan(11, "监控计划内容"),
     longArticleVideoPoolSource(12, "长文视频池内容"),
+    all(-1, ""),
+
     other(999, ""),
     ;
 

+ 2 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/repository/longArticle/GetOffVideoArticleRepository.java

@@ -12,4 +12,6 @@ public interface GetOffVideoArticleRepository extends JpaRepository<GetOffVideoA
     List<GetOffVideoArticle> getByPublishTimeBetween(Long startTime, Long endTime);
 
     List<GetOffVideoArticle> getByPublishTimeGreaterThanEqual(Long publishTime);
+
+    GetOffVideoArticle getByVideoId(Long videoId);
 }

+ 28 - 14
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/recommend/ArticleAuditService.java

@@ -110,11 +110,13 @@ public class ArticleAuditService {
                 List<LongArticlesMatchVideoResponse> responseList = JSONArray.parseArray(longArticlesMatchVideo.getResponse()
                         , LongArticlesMatchVideoResponse.class);
                 for (LongArticlesMatchVideoResponse response : responseList) {
-                    String ossPath = getOssPath(response.getVideoPath());
-                    if (existsOssPath.contains(ossPath)) {
-                        continue;
+                    String ossPath = response.getVideoOSS();
+                    if (StringUtils.hasText(ossPath)) {
+                        if (existsOssPath.contains(ossPath)) {
+                            continue;
+                        }
+                        existsOssPath.add(ossPath);
                     }
-                    existsOssPath.add(ossPath);
                     LongArticleVideoAudit videoAudit = new LongArticleVideoAudit();
                     videoAudit.setVideoId(response.getVideoID());
                     videoAudit.setTraceId(traceId);
@@ -202,20 +204,31 @@ public class ArticleAuditService {
             // 暂时不做删除 先发送通知
             if (longArticleVideoAudit.getStatus().equals(PQVideoAuditResultEnum.REJECT.getStatus())) {
                 FeishuMessageSender.sendWebHookMessage(FeishuRobotIdEnum.ARTICLE_DELETE.getRobotId(),
-                        "视频审核不通过\n" +
+                        "视频审核不通过【"+sensitiveLevelEnum.getDescription()+"】\n" +
                                 "traceId:" + longArticleVideoAudit.getTraceId() + "\n" +
                                 "视频id:" + longArticleVideoAudit.getVideoId() + "\n" +
-                                "视频path:" + longArticleVideoAudit.getOssPath() + "\n" +
-                                "敏感等级:" + sensitiveLevelEnum.getDescription() + "\n" +
-                                "管理后台地址:https://admin.piaoquantv.com/cms/post-detail/" + longArticleVideoAudit.getVideoId() + "/detail");
+                                "管理后台地址:https://admin.piaoquantv.com/cms/post-detail/" + longArticleVideoAudit.getVideoId() + "/detail\n" +
+                                "操作删除视频及文章(慎点):" +
+                                "http://192.168.203.83:30081/articleAudit/saveDeleteRecord?videoId=" + longArticleVideoAudit.getVideoId());
             }
         }
     }
 
-    public void saveDeleteRecord(String ossPath) {
-        List<LongArticleCrawlerVideo> crawlerVideoList = longArticleCrawlerVideoRepository.getByVideoOssPath(ossPath);
+    public String saveDeleteRecord(Long videoId) {
+        GetOffVideoArticle getOffVideos = getOffVideoArticleRepository.getByVideoId(videoId);
+        String traceId = getOffVideos.getTraceId();
+        LongArticlesMatchVideo matchVideo = longArticlesMatchVideoRepository.getByTraceId(traceId);
+        List<LongArticlesMatchVideoResponse> responseList = JSONArray.parseArray(matchVideo.getResponse()
+                , LongArticlesMatchVideoResponse.class);
+        LongArticlesMatchVideoResponse response = responseList.stream()
+                .filter(o -> o.getVideoID() == videoId).findFirst().orElse(null);
+        if (Objects.isNull(response) || !StringUtils.hasText(response.getVideoOSS())) {
+            return "matchVideo response videoOss null videoId:" + videoId + " traceId:" + traceId;
+        }
+        List<LongArticleCrawlerVideo> crawlerVideoList = longArticleCrawlerVideoRepository.getByVideoOssPath(response.getVideoOSS());
         if (CollectionUtils.isEmpty(crawlerVideoList)) {
-            return;
+            return "matchVideo response videoOss findCrawlerVideo Null videoId:" + videoId +
+                    " traceId:" + traceId + " videoOss:" + response.getVideoOSS();
         }
         for (LongArticleCrawlerVideo longArticleCrawlerVideo : crawlerVideoList) {
             longArticleCrawlerVideo.setIsIllegal(1);
@@ -240,9 +253,10 @@ public class ArticleAuditService {
         List<String> deleteTraceIds = publishContentIds.stream().map(PublishTraceIdMap::get).collect(Collectors.toList());
         // 重新匹配小程序
         List<String> reMatchTraceIds = traceIds.stream().filter(o -> !deleteTraceIds.contains(o)).collect(Collectors.toList());
-        buildReMatchRecord(reMatchTraceIds, ossPath, matchVideoMap);
+        buildReMatchRecord(reMatchTraceIds, response.getVideoOSS(), matchVideoMap);
         // 文章删除
         buildArticleAuditDelete(publishContentIds);
+        return null;
     }
 
     private void buildReMatchRecord(List<String> reMatchTraceIds, String ossPath,
@@ -497,8 +511,8 @@ public class ArticleAuditService {
         }
         // 处理视频内容池内容
         List<PublishContentDTO> videoPoolContents = publishContents.stream()
-               .filter(o -> Objects.equals(o.getSourceType(), PublishPlanInputSourceTypesEnum.longArticleVideoPoolSource.getVal()))
-               .collect(Collectors.toList());
+                .filter(o -> Objects.equals(o.getSourceType(), PublishPlanInputSourceTypesEnum.longArticleVideoPoolSource.getVal()))
+                .collect(Collectors.toList());
         if (CollectionUtils.isNotEmpty(videoPoolContents)) {
             for (PublishContentDTO videoPoolContent : videoPoolContents) {
                 longArticleBaseMapper.updateVideoPoolContentBad(videoPoolContent.getSourceId());

+ 5 - 6
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/recommend/rank/RankService.java

@@ -145,16 +145,15 @@ public class RankService implements InitializingBean {
         Integer sourceType = getStrategyPoolSourceType(strategy, index);
         Integer videoSourceType = PublishPlanInputSourceTypesEnum.longArticleVideoPoolSource.getVal();
         List<Content> videoPool = pool.stream().filter(o -> Objects.equals(o.getSourceType(), videoSourceType)).collect(Collectors.toList());
-        List<Content> otherPool = pool.stream().filter(o ->!Objects.equals(o.getSourceType(), videoSourceType)).collect(Collectors.toList());
-        if (Objects.nonNull(sourceType) && sourceType.equals(videoSourceType)) {
+        List<Content> otherPool = pool.stream().filter(o -> !Objects.equals(o.getSourceType(), videoSourceType)).collect(Collectors.toList());
+        if (Objects.equals(sourceType, PublishPlanInputSourceTypesEnum.all.getVal())) {
+            return pool;
+        } else if (sourceType.equals(videoSourceType)) {
             if (CollectionUtils.isNotEmpty(videoPool)) {
                 return videoPool;
-            } else {
-                return otherPool;
             }
-        } else {
-            return otherPool;
         }
+        return otherPool;
     }
 
     public static void commonAdd38Content(RankParam param, List<Content> result, String[] contentPools,

+ 2 - 3
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/web/recommend/ArticleAuditController.java

@@ -28,9 +28,8 @@ public class ArticleAuditController {
     }
 
     @GetMapping("/saveDeleteRecord")
-    public CommonResponse<Void> saveDeleteRecord(String ossPath) {
-        service.saveDeleteRecord(ossPath);
-        return CommonResponse.success();
+    public CommonResponse<String> saveDeleteRecord(Long videoId) {
+        return CommonResponse.success(service.saveDeleteRecord(videoId));
     }
 
     @PostMapping("/titleDangerFindDelete")