|
@@ -72,6 +72,9 @@ public class ArticleVideoAuditService {
|
|
|
@ApolloJsonValue("${daily.article.audit.pool.count.config:{}}")
|
|
|
private Map<String, Integer> dailyAuditPoolCount;
|
|
|
|
|
|
+ @ApolloJsonValue("${highPriorityProducePlan:[]}")
|
|
|
+ private List<String> highPriorityProducePlan;
|
|
|
+
|
|
|
public Page<ArticleVideoAuditListVO> list(ArticleVideoAuditListParam param) {
|
|
|
int offset = (param.getPageNum() - 1) * param.getPageSize();
|
|
|
int count = articleAuditMapper.articleVideoAuditListCount(param.getContentId(), param.getStatus(),
|
|
@@ -475,6 +478,18 @@ public class ArticleVideoAuditService {
|
|
|
auditQueuePoolCountMap = auditQueueList.stream().collect(Collectors.groupingBy(item -> ContentPoolEnum.from(item.getFlowPoolLevel()).getContentPool()));
|
|
|
excludeContentIds.addAll(auditQueueIds);
|
|
|
}
|
|
|
+ // 高优先级计划内容添加
|
|
|
+ if (CollectionUtils.isNotEmpty(highPriorityProducePlan)) {
|
|
|
+ List<ArticleVideoAuditListVO> addList = articleAuditMapper.articleVideoWatingAuditList(
|
|
|
+ Arrays.asList(ArticleVideoAuditStatusEnum.WAITING.getCode()),
|
|
|
+ null, excludeContentIds, highPriorityProducePlan, 100);
|
|
|
+ if (CollectionUtils.isNotEmpty(addList)) {
|
|
|
+ for (ArticleVideoAuditListVO item : addList) {
|
|
|
+ redisTemplate.opsForZSet().add(auditQueueRedisKey, item.getContentId(), 101);
|
|
|
+ excludeContentIds.add(item.getContentId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
// 每日配置发送量不足添加
|
|
|
for (Map.Entry<String, Integer> entry : dailyAuditPoolCount.entrySet()) {
|
|
|
ContentPoolEnum poolEnum = ContentPoolEnum.from(entry.getKey());
|
|
@@ -487,7 +502,7 @@ public class ArticleVideoAuditService {
|
|
|
if (needCount > 0) {
|
|
|
List<ArticleVideoAuditListVO> addList = articleAuditMapper.articleVideoWatingAuditList(
|
|
|
Arrays.asList(ArticleVideoAuditStatusEnum.WAITING.getCode()),
|
|
|
- Arrays.asList(poolEnum.getContentPool()), excludeContentIds, needCount);
|
|
|
+ Arrays.asList(poolEnum.getContentPool()), excludeContentIds, null, needCount);
|
|
|
if (CollectionUtils.isNotEmpty(addList)) {
|
|
|
for (ArticleVideoAuditListVO item : addList) {
|
|
|
redisTemplate.opsForZSet().add(auditQueueRedisKey, item.getContentId(), poolEnum.getWeight());
|
|
@@ -501,7 +516,8 @@ public class ArticleVideoAuditService {
|
|
|
Long auditQueueSize = redisTemplate.opsForZSet().size(auditQueueRedisKey);
|
|
|
if (Objects.isNull(auditQueueSize) || auditQueueSize < 20) {
|
|
|
List<ArticleVideoAuditListVO> list = articleAuditMapper.articleVideoWatingAuditList(
|
|
|
- Arrays.asList(ArticleVideoAuditStatusEnum.WAITING.getCode()), null, excludeContentIds, 40);
|
|
|
+ Arrays.asList(ArticleVideoAuditStatusEnum.WAITING.getCode()), null,
|
|
|
+ excludeContentIds, null, 40);
|
|
|
if (CollectionUtils.isNotEmpty(list)) {
|
|
|
for (ArticleVideoAuditListVO item : list) {
|
|
|
ContentPoolEnum poolEnum = ContentPoolEnum.from(item.getFlowPoolLevel());
|