|
@@ -100,23 +100,21 @@ public class VideoPoolAuditService {
|
|
|
Page<VideoPoolAuditListVO> result = new Page<>();
|
|
|
// 根据配置判断当日是否审核完成 并 选择内容池返回
|
|
|
PublishSingleVideoSource obj = null;
|
|
|
- Integer poolLevel = getAuditPoolLevel();
|
|
|
+ List<String> excludePoolLevel = new ArrayList<>();
|
|
|
+ Integer poolLevel = getAuditPoolLevel(excludePoolLevel);
|
|
|
if (Objects.isNull(poolLevel)) {
|
|
|
obj = videoPoolAuditMapper.articleVideoAuditNext(param.getContentId(),
|
|
|
param.getStatus(), param.getTitle(), param.getAuditAccount(), poolLevel);
|
|
|
} else {
|
|
|
- for (String poolLevelStr : dailyAuditPoolCount.keySet()) {
|
|
|
- ContentPoolEnum poolEnum = ContentPoolEnum.from(poolLevelStr);
|
|
|
- if (!Objects.equals(poolEnum.getValue(), poolLevel)) {
|
|
|
- continue;
|
|
|
- }
|
|
|
+ do {
|
|
|
obj = videoPoolAuditMapper.articleVideoAuditNext(param.getContentId(),
|
|
|
param.getStatus(), param.getTitle(), param.getAuditAccount(), poolLevel);
|
|
|
if (Objects.nonNull(obj)) {
|
|
|
break;
|
|
|
}
|
|
|
- poolLevel = poolLevel + 1;
|
|
|
- }
|
|
|
+ excludePoolLevel.add(ContentPoolEnum.from(poolLevel).getContentPool());
|
|
|
+ poolLevel = getAuditPoolLevel(excludePoolLevel);
|
|
|
+ } while (Objects.nonNull(poolLevel));
|
|
|
}
|
|
|
if (Objects.isNull(obj)) {
|
|
|
return result;
|
|
@@ -126,13 +124,16 @@ public class VideoPoolAuditService {
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
- private Integer getAuditPoolLevel() {
|
|
|
+ private Integer getAuditPoolLevel(List<String> excludePoolLevel) {
|
|
|
if (MapUtils.isEmpty(dailyAuditPoolCount)) {
|
|
|
return null;
|
|
|
}
|
|
|
String dateStr = DateUtils.getCurrentDateStr("yyyyMMdd");
|
|
|
for (Map.Entry<String, Integer> entry : dailyAuditPoolCount.entrySet()) {
|
|
|
String poolLevel = entry.getKey();
|
|
|
+ if (excludePoolLevel.contains(poolLevel)) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
int target = entry.getValue();
|
|
|
String key = "video_audit_count_" + dateStr + "_" + poolLevel;
|
|
|
int totalCount = Integer.parseInt(Optional.ofNullable(redisTemplate.opsForValue().get(key)).orElse("0"));
|