|
@@ -49,33 +49,41 @@ public class ComPlayerDisasterServiceImpl extends CommonServiceImpl<ComPlayerDis
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 获取经历的灾难记录
|
|
* 获取经历的灾难记录
|
|
|
|
|
+ *
|
|
|
* @param userId
|
|
* @param userId
|
|
|
* @return
|
|
* @return
|
|
|
*/
|
|
*/
|
|
|
@Override
|
|
@Override
|
|
|
- public List<ComPlayerDisaster> getHistory(String userId){
|
|
|
|
|
- log.info("获取灾难记录:{}",userId);
|
|
|
|
|
- List<ComPlayerDisaster> list=comPlayerDisasterRepository.getUnShow(userId).stream().sorted(Comparator.comparing(ComPlayerDisaster::getCreateTime)).collect(Collectors.toList());
|
|
|
|
|
- log.info("获取灾难记录:{}",JSONUtil.toJsonStr(list));
|
|
|
|
|
- list.forEach(a->a.setShow(true));
|
|
|
|
|
|
|
+ public List<ComPlayerDisaster> getHistory(String userId) {
|
|
|
|
|
+ log.info("获取灾难记录:{}", userId);
|
|
|
|
|
+ List<ComPlayerDisaster> list = comPlayerDisasterRepository.getUnShow(userId).stream().sorted(Comparator.comparing(ComPlayerDisaster::getCreateTime)).collect(Collectors.toList());
|
|
|
|
|
+ log.info("获取灾难记录:{}", JSONUtil.toJsonStr(list));
|
|
|
|
|
+ list.forEach(a -> a.setShow(true));
|
|
|
comPlayerDisasterRepository.saveAll(list);
|
|
comPlayerDisasterRepository.saveAll(list);
|
|
|
return list;
|
|
return list;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 灾难模块核心功能
|
|
* 灾难模块核心功能
|
|
|
|
|
+ *
|
|
|
* @param userId
|
|
* @param userId
|
|
|
* @return
|
|
* @return
|
|
|
*/
|
|
*/
|
|
|
@Override
|
|
@Override
|
|
|
- public ComPlayerDisasterVo getDisaster(String userId) {
|
|
|
|
|
|
|
+ public void getDisaster(String userId) {
|
|
|
//todo 需要有个定时任务去处理,定期拉取所有人,然后执行
|
|
//todo 需要有个定时任务去处理,定期拉取所有人,然后执行
|
|
|
- log.info("灾难模式:{}",userId);
|
|
|
|
|
- ComPlayerDisasterVo comPlayerDisasterVo = null;
|
|
|
|
|
|
|
+ log.info("灾难模式:{}", userId);
|
|
|
|
|
+
|
|
|
|
|
+ ComPlayerDisaster hasComPlayerDisaster = comPlayerDisasterRepository.findByUserId(userId);
|
|
|
|
|
+ if (hasComPlayerDisaster != null) {
|
|
|
|
|
+ log.info("灾难结果:{}", "今日已触发过灾难");
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
//如果本周内还有灾难
|
|
//如果本周内还有灾难
|
|
|
if (getDisasterNum(userId) > 0) {
|
|
if (getDisasterNum(userId) > 0) {
|
|
|
//随机获取一种灾难方式灾难对象
|
|
//随机获取一种灾难方式灾难对象
|
|
|
- comPlayerDisasterVo = getDisasterList(userId).get(RandomUtil.randomInt(0, 2));
|
|
|
|
|
|
|
+ ComPlayerDisasterVo comPlayerDisasterVo = getDisasterList(userId).get(RandomUtil.randomInt(0, 2));
|
|
|
//查看该灾难是否有防护,如果有防护需要按照防护几率计算是否防御住灾害了
|
|
//查看该灾难是否有防护,如果有防护需要按照防护几率计算是否防御住灾害了
|
|
|
if (comPlayerDisasterVo.getIsBuyProtected()) {
|
|
if (comPlayerDisasterVo.getIsBuyProtected()) {
|
|
|
int randomProtect = RandomUtil.randomInt(0, 101);
|
|
int randomProtect = RandomUtil.randomInt(0, 101);
|
|
@@ -96,7 +104,6 @@ public class ComPlayerDisasterServiceImpl extends CommonServiceImpl<ComPlayerDis
|
|
|
} else {
|
|
} else {
|
|
|
log.info("灾难结果:{}", "本周无灾难了");
|
|
log.info("灾难结果:{}", "本周无灾难了");
|
|
|
}
|
|
}
|
|
|
- return comPlayerDisasterVo;
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|