更新房间等级图标

This commit is contained in:
2024-12-26 11:47:58 +08:00
parent d102c02b89
commit 45c6bf0291
5 changed files with 24 additions and 10 deletions

View File

@@ -483,6 +483,7 @@ public class RoomVo implements Comparable<RoomVo> {
@ApiModelProperty("房间右下角icon1、2入口配置")
private RoomRightBottomIconVo rightBottomIconConfig;
private Integer roomLevel; // 房间等级
private String roomLevelIcon;//房间等级图标
private Integer usedMicSkinId;//使用中的麦位皮肤id
private Integer usedMicEffectId;//使用中的麦位特效id

View File

@@ -87,6 +87,7 @@ public class RankListener implements ApplicationListener<GiftMessageEvent> {
if (roomVo != null) {
JSONObject jsonObject = new JSONObject();
jsonObject.put("serialValue", roomVo.getSerialValue());
jsonObject.put("roomLevelIcon", roomVo.getRoomLevelIcon());
sendSysMsgService.sendSingleRoomMessage(roomVo.getRoomId(), String.valueOf(roomVo.getUid()), Constant.DefMsgType.RANK, Constant.DefMsgType.RANK_UPDATE, jsonObject);
}
}

View File

@@ -5,6 +5,7 @@ import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.accompany.business.dto.QueueListResponseDTO;
import com.accompany.business.dto.QueueValueDTO;
import com.accompany.business.model.room.RoomLevelInfo;
import com.accompany.business.service.SendSysMsgService;
import com.accompany.business.service.rank.room.SendRoomDayRankService;
import com.accompany.business.service.redenvelope.RedEnvelopeServerNotifySwitchService;
@@ -14,6 +15,7 @@ import com.accompany.common.constant.Constant;
import com.accompany.common.enums.RedisZSetEnum;
import com.accompany.common.netease.ErBanNetEaseService;
import com.accompany.core.model.Room;
import com.accompany.core.model.Users;
import com.accompany.core.service.account.AccountService;
import com.accompany.core.service.common.JedisService;
import lombok.extern.slf4j.Slf4j;
@@ -73,6 +75,9 @@ public abstract class AbstractRoomService implements IRoom {
@Autowired
private SendRoomDayRankService sendRoomDayRankService;
@Autowired
private RoomLevelService roomLevelService;
@Override
public void wrapRoom(Room room) {
Long roomUid = room.getUid();
@@ -125,6 +130,13 @@ public abstract class AbstractRoomService implements IRoom {
}
BigDecimal rankScore = dayRank.stream().map(v -> new BigDecimal(v.get(RedisZSetEnum.score.name()).toString())).reduce(BigDecimal.ZERO, BigDecimal::add);
roomVo.setSerialValue(rankScore.setScale(2, RoundingMode.DOWN).doubleValue());
RoomLevelInfo roomLevelInfo = roomLevelService.getRoomLevelByRoomUid(roomVo.getPartitionId(), roomVo.getUid());
Integer roomLevel = 1;
if (roomLevelInfo != null) {
roomLevel = roomLevelInfo.getLevelSeq();
roomVo.setRoomLevel(roomLevel);
roomVo.setRoomLevelIcon(roomLevelInfo.getLevelIcon());
}
}
@Override

View File

@@ -901,6 +901,14 @@ public class RoomService extends BaseService {
return roomMapper.selectByPrimaryKey(uid);
}
public RoomVo getRoomVoByUid(Long uid) {
Room room = getRoomByUid(uid);
if (room == null) {
return null;
}
return convertRoomToVo(room);
}
public Room getRoomByUid(Long uid) {
Room room = getRoomCacheByUid(uid);
if (room == null) {
@@ -912,14 +920,6 @@ public class RoomService extends BaseService {
return room;
}
public RoomVo getRoomVoByUid(Long uid) {
Room room = getRoomByUid(uid);
if (room == null) {
return null;
}
return convertRoomToVo(room);
}
public RoomVo getRoomVoWithUsersByUid(Long uid) {
Room room = getRoomByUid(uid);
if (room == null) {

View File

@@ -255,11 +255,11 @@ public class RoomController extends BaseController {
roomLevel = roomLevelInfo.getLevelSeq();
roomVo.setRoomLevelIcon(roomLevelInfo.getLevelIcon());
}
RoomMicDress roomMicDress = roomMicDressService.roomMicDressUsed(RoomConstant.MicDressType.EFFECT, uid, roomLevel);
RoomMicDress roomMicDress = roomMicDressService.roomMicDressUsed(RoomConstant.MicDressType.EFFECT, uid, roomVo.getRoomLevel());
if (roomMicDress != null) {
roomVo.setUsedMicEffectId(roomMicDress.getId());
}
RoomMicDress roomMicSkin = roomMicDressService.roomMicDressUsed(RoomConstant.MicDressType.SKIN, uid, roomLevel);
RoomMicDress roomMicSkin = roomMicDressService.roomMicDressUsed(RoomConstant.MicDressType.SKIN, uid, roomVo.getRoomLevel());
if (roomMicSkin != null) {
roomVo.setUsedMicSkinId(roomMicSkin.getId());
}