use of com.code.server.kafka.MsgProducer in project summer by foxsugar.
the class Game method genRecord.
protected void genRecord(Map<Long, Double> scores, Room room, long id) {
Map<String, Object> data = new HashMap<>();
data.put("count", scores.size());
data.put("room_uuid", room.getUuid());
data.put("replay_id", id);
GameRecord gameRecord = new GameRecord();
gameRecord.setCurGameNumber(room.getCurGameNumber());
scores.forEach((key, value) -> {
UserRecord userRecord = new UserRecord();
userRecord.setScore(value);
userRecord.setUserId(key);
userRecord.setRoomId(room.getRoomId());
UserBean userBean = RedisManager.getUserRedisService().getUserBean(key);
if (userBean != null) {
userRecord.setName(userBean.getUsername());
}
gameRecord.getRecords().add(userRecord);
});
data.put("record", JsonUtil.toJson(gameRecord));
KafkaMsgKey kafkaMsgKey = new KafkaMsgKey().setMsgId(KAFKA_MSG_ID_GAME_RECORD);
MsgProducer msgProducer = SpringUtil.getBean(MsgProducer.class);
msgProducer.send(IKafaTopic.CENTER_TOPIC, kafkaMsgKey, data);
}
use of com.code.server.kafka.MsgProducer in project summer by foxsugar.
the class Room method getRoomClubByUser.
@Override
public int getRoomClubByUser(long userId) {
Map<String, Object> result = new HashMap<>();
result.put("userId", userId);
if (this.clubId == null) {
result.put("clubId", 0);
MsgSender.sendMsg2Player(new ResponseVo("roomService", "getRoomClubByUser", result), userId);
} else {
result.put("clubId", this.clubId);
KafkaMsgKey kafkaMsgKey = new KafkaMsgKey().setMsgId(KAFKA_MSG_ID_ROOM_CLUB_USER);
MsgProducer msgProducer = SpringUtil.getBean(MsgProducer.class);
msgProducer.send(IKafaTopic.CENTER_TOPIC, kafkaMsgKey, result);
}
return 0;
}
use of com.code.server.kafka.MsgProducer in project summer by foxsugar.
the class Room method genRoomRecord.
/**
* 生成房间战绩
*/
public void genRoomRecord() {
RoomRecord roomRecord = new RoomRecord();
roomRecord.setRoomId(this.roomId);
roomRecord.setId(this.getUuid());
roomRecord.setType(this.roomType);
roomRecord.setTime(System.currentTimeMillis());
roomRecord.setClubId(clubId);
roomRecord.setClubRoomModel(clubRoomModel);
this.userScores.forEach((key, value) -> {
UserRecord userRecord = new UserRecord();
userRecord.setScore(value);
userRecord.setUserId(key);
UserBean userBean = RedisManager.getUserRedisService().getUserBean(key);
if (userBean != null) {
userRecord.setName(userBean.getUsername());
}
roomRecord.getRecords().add(userRecord);
});
KafkaMsgKey kafkaMsgKey = new KafkaMsgKey().setMsgId(KAFKA_MSG_ID_ROOM_RECORD);
MsgProducer msgProducer = SpringUtil.getBean(MsgProducer.class);
msgProducer.send(IKafaTopic.CENTER_TOPIC, kafkaMsgKey, roomRecord);
}
use of com.code.server.kafka.MsgProducer in project summer by foxsugar.
the class GameDouDiZhu method genRecord.
protected void genRecord() {
long id = IdWorker.getDefaultInstance().nextId();
genRecord(playerCardInfos.values().stream().collect(Collectors.toMap(PlayerCardInfoDouDiZhu::getUserId, PlayerCardInfoDouDiZhu::getScore)), room, id);
// 回放
replay.setId(id);
replay.setCount(playerCardInfos.size());
replay.setRoom_uuid(this.room.getUuid());
replay.setRoomInfo(this.room.toVo(0));
KafkaMsgKey kafkaMsgKey = new KafkaMsgKey().setMsgId(KAFKA_MSG_ID_REPLAY);
MsgProducer msgProducer = SpringUtil.getBean(MsgProducer.class);
msgProducer.send(IKafaTopic.CENTER_TOPIC, kafkaMsgKey, replay);
}
Aggregations