Commit 5801c4ca by shenjunjie

案例上新调整

parent 8439c28d
...@@ -36,6 +36,7 @@ public class ChannelIndex extends AbstractBaseMongo { ...@@ -36,6 +36,7 @@ public class ChannelIndex extends AbstractBaseMongo {
/** /**
* 关联项目组ID * 关联项目组ID
*/ */
@Deprecated
private String linkedGroupId; private String linkedGroupId;
/** /**
......
...@@ -787,19 +787,28 @@ public class ProjectWarnServiceImpl implements ProjectWarnService { ...@@ -787,19 +787,28 @@ public class ProjectWarnServiceImpl implements ProjectWarnService {
String cursorKey = RedisUtil.getNewCrisisCaseCursor(projectId); String cursorKey = RedisUtil.getNewCrisisCaseCursor(projectId);
String cursor = redisUtil.get(cursorKey); String cursor = redisUtil.get(cursorKey);
Set<String> keys = redisUtil.keys(RedisUtil.getNewCrisisCaseListAllKey()); Set<String> keys = redisUtil.keys(RedisUtil.getNewCrisisCaseListAllKey());
int recordCursor = null == cursor ? 0 : Integer.parseInt(cursor); BrandkbsWarnTemplate brandkbsWarnTemplate = null;
List<BrandkbsNewCaseWarn.NewCase> resList = new ArrayList<>(); if (CollectionUtils.isNotEmpty(keys)) {
for (String key : keys) { int recordCursor;
CrisisCaseWarnVO crisisCaseWarnVO = JSON.parseObject(redisUtil.get(key), CrisisCaseWarnVO.class); // 不存在游标则记录最大值
// 符合条件并记录游标 if (null == cursor) {
if (recordCursor < crisisCaseWarnVO.getId()) { recordCursor = keys.stream().mapToInt(Integer::valueOf).max().getAsInt();
recordCursor = crisisCaseWarnVO.getId(); } else {
resList.add(BrandkbsNewCaseWarn.NewCase.createFromCrisisCaseWarnVO(crisisCaseWarnVO, recordCursor = Integer.parseInt(cursor);
getCrisisEventUrlByCrisisEventId(crisisCaseWarnVO.getId()))); List<BrandkbsNewCaseWarn.NewCase> resList = new ArrayList<>();
for (String key : keys) {
CrisisCaseWarnVO crisisCaseWarnVO = JSON.parseObject(redisUtil.get(key), CrisisCaseWarnVO.class);
// 符合条件并记录游标
if (recordCursor < crisisCaseWarnVO.getId()) {
recordCursor = crisisCaseWarnVO.getId();
resList.add(BrandkbsNewCaseWarn.NewCase.createFromCrisisCaseWarnVO(crisisCaseWarnVO,
getCrisisEventUrlByCrisisEventId(crisisCaseWarnVO.getId())));
}
}
brandkbsWarnTemplate = brandkbsWarnTemplate4NewCase(resList, time, project);
} }
redisUtil.set(cursorKey, String.valueOf(recordCursor));
} }
BrandkbsWarnTemplate brandkbsWarnTemplate = brandkbsWarnTemplate4NewCase(resList, time, project);
redisUtil.set(cursorKey, String.valueOf(recordCursor));
log.info("获取案例上新预警结束,project:{}", project.getProjectName()); log.info("获取案例上新预警结束,project:{}", project.getProjectName());
return ResponseResult.success(brandkbsWarnTemplate); return ResponseResult.success(brandkbsWarnTemplate);
} catch (Exception e) { } catch (Exception e) {
...@@ -812,7 +821,7 @@ public class ProjectWarnServiceImpl implements ProjectWarnService { ...@@ -812,7 +821,7 @@ public class ProjectWarnServiceImpl implements ProjectWarnService {
public void newCrisisCaseWarn(CrisisCaseWarnVO caseWarnVO) { public void newCrisisCaseWarn(CrisisCaseWarnVO caseWarnVO) {
// 存入redis缓存 // 存入redis缓存
String listKey = RedisUtil.getNewCrisisCaseListKey(String.valueOf(caseWarnVO.getId())); String listKey = RedisUtil.getNewCrisisCaseListKey(String.valueOf(caseWarnVO.getId()));
redisUtil.setExpire(listKey, JSON.toJSONString(caseWarnVO), Constant.ONE_DAY * 7, TimeUnit.DAYS); redisUtil.setExpire(listKey, JSON.toJSONString(caseWarnVO), 7, TimeUnit.DAYS);
} }
private String getCrisisEventUrlByCrisisEventId(int id) { private String getCrisisEventUrlByCrisisEventId(int id) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment