房间日奖励-首页-流水值-小数取两位

This commit is contained in:
handsome
2025-09-19 14:12:11 +08:00
parent 536dde3122
commit 78beef257c

View File

@@ -116,7 +116,7 @@ public class RoomDaySendRankRewardManager {
Date statTime = Boolean.TRUE.equals(isToday)? todayTime: DateTimeUtil.addDays(todayTime, -1);
Set<Map<String, Object>> rankList = sendRoomDayRankService.getRank(statTime, roomUid, 0L, -1L, room.getPartitionId());
BigDecimal roomSerialValue = rankList.stream().map(entry-> new BigDecimal(entry.get(RedisZSetEnum.score.name()).toString())).reduce(BigDecimal.ZERO, BigDecimal::add);
BigDecimal roomSerialValue = rankList.stream().map(entry-> BigDecimal.valueOf((Double)entry.get(RedisZSetEnum.score.name())).setScale(2, RoundingMode.DOWN)).reduce(BigDecimal.ZERO, BigDecimal::add);
RoomDaySendRankRewardHomeVo.RewardInfoVo rewardInfoVo = rewardService.buildBySerialValue(roomSerialValue);
vo.setRewardInfo(rewardInfoVo);
@@ -140,13 +140,13 @@ public class RoomDaySendRankRewardManager {
List<Long> uidList = top10RankList.stream().map(entry-> Long.parseLong(entry.get(RedisZSetEnum.member.name()).toString())).toList();
Map<Long, Users> usersMap = usersService.getUsersMapByUids(uidList);
BigDecimal top10SerialValue = top10RankList.stream().map(entry-> new BigDecimal(entry.get(RedisZSetEnum.score.name()).toString())).reduce(BigDecimal.ZERO, BigDecimal::add);
BigDecimal top10SerialValue = top10RankList.stream().map(entry-> BigDecimal.valueOf((Double)entry.get(RedisZSetEnum.score.name())).setScale(2, RoundingMode.DOWN)).reduce(BigDecimal.ZERO, BigDecimal::add);
int rank = 1;
List<RoomDaySendRankRewardHomeVo.RankItemVo> voList = new ArrayList<>();
for (Map<String, Object> entry: top10RankList){
Long uid = Long.parseLong(entry.get(RedisZSetEnum.member.name()).toString());
BigDecimal score = new BigDecimal(entry.get(RedisZSetEnum.score.name()).toString());
BigDecimal score = BigDecimal.valueOf((Double)entry.get(RedisZSetEnum.score.name())).setScale(2, RoundingMode.DOWN);
RoomDaySendRankRewardHomeVo.RankItemVo itemVo = new RoomDaySendRankRewardHomeVo.RankItemVo();
itemVo.setRanking(rank++);
@@ -193,7 +193,7 @@ public class RoomDaySendRankRewardManager {
int rank = 1;
for (Map<String, Object> entry: rankList){
Long uid = Long.parseLong(entry.get(RedisZSetEnum.member.name()).toString());
BigDecimal score = new BigDecimal(entry.get(RedisZSetEnum.score.name()).toString());
BigDecimal score = BigDecimal.valueOf((Double)entry.get(RedisZSetEnum.score.name())).setScale(2, RoundingMode.DOWN);
if (rank <= 10){
theTenScore = score;