Browse Source

定时重置分组

wangyunpeng 5 months ago
parent
commit
8733947a9d

+ 22 - 4
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/recommend/ArticleVideoAuditService.java

@@ -22,10 +22,7 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
 import java.util.stream.Collectors;
 
 @Service
@@ -253,4 +250,25 @@ public class ArticleVideoAuditService {
         long now = System.currentTimeMillis();
         articleAuditMapper.updateVideoTitle(param, now);
     }
+
+    @XxlJob("shuffleAuditGroup")
+    public ReturnT<String> shuffleAuditGroup(String param) {
+        int per = 0;
+        List<String> auditUser = Arrays.asList("a","b","c","d","e","f","g","h","i","j");
+        List<LongArticleTitleAudit> contentIds = titleAuditRepository.getByStatus(ArticleVideoAuditStatusEnum.WAITING.getCode());
+        Collections.shuffle(contentIds);
+        int perNum = contentIds.size() / auditUser.size();
+        for (int i = 0; i < contentIds.size(); i++) {
+            if ((i+1) % perNum == 0) {
+                if (per == auditUser.size() - 1)
+                    per = 0;
+                else
+                    per++;
+            }
+            LongArticleTitleAudit audit = contentIds.get(i);
+            audit.setAuditAccount(auditUser.get(per));
+            titleAuditRepository.save(audit);
+        }
+        return ReturnT.SUCCESS;
+    }
 }

+ 7 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/web/recommend/ArticleVideoAuditController.java

@@ -62,4 +62,11 @@ public class ArticleVideoAuditController {
         return CommonResponse.success();
     }
 
+
+    @GetMapping("/shuffleAuditGroup")
+    public CommonResponse<Void> shuffleAuditGroup() {
+        service.shuffleAuditGroup(null);
+        return CommonResponse.success();
+    }
+
 }