Commit b14a14b01d2c632f4feff86f1a41d3761869b49a
1 parent
c800e90e
Exists in
master
and in
1 other branch
feat✨:排行榜报名成功返回标记
Showing
3 changed files
with
9 additions
and
3 deletions
Show diff stats
models/roomrank.go
| @@ -31,6 +31,7 @@ type RoomRankInfo struct { | @@ -31,6 +31,7 @@ type RoomRankInfo struct { | ||
| 31 | UserClass int `form:"user_class" json:"user_class"` // 用户评级 | 31 | UserClass int `form:"user_class" json:"user_class"` // 用户评级 |
| 32 | SelfRank int `form:"self_rank" json:"self_rank"` // 自己排名 | 32 | SelfRank int `form:"self_rank" json:"self_rank"` // 自己排名 |
| 33 | SelfScore int64 `form:"self_score" json:"self_score"` // 自己积分 | 33 | SelfScore int64 `form:"self_score" json:"self_score"` // 自己积分 |
| 34 | + FirstJoin bool `form:"first_join" json:"first_join"` // 是否本期第一次报名 | ||
| 34 | RobotAvatarPath string `form:"robot_avatar_path" json:"robot_avatar_path"` // 机器人头像路径 | 35 | RobotAvatarPath string `form:"robot_avatar_path" json:"robot_avatar_path"` // 机器人头像路径 |
| 35 | Tops []RoomRankTopNode `form:"tops" json:"tops"` // 排行榜数据列表 | 36 | Tops []RoomRankTopNode `form:"tops" json:"tops"` // 排行榜数据列表 |
| 36 | } | 37 | } |
service/roomrank/handle.go
| @@ -70,7 +70,7 @@ func HandleInfo(req *models.ReqRoomRankInfo) (code string, rsp models.RspRoomRan | @@ -70,7 +70,7 @@ func HandleInfo(req *models.ReqRoomRankInfo) (code string, rsp models.RspRoomRan | ||
| 70 | } | 70 | } |
| 71 | 71 | ||
| 72 | // 尝试加入房间 | 72 | // 尝试加入房间 |
| 73 | - room, hasRoom := TryGetRoom(gameId, req.TopType, player, config, playerLevel) | 73 | + room, hasRoom, firstJoin := TryGetRoom(gameId, req.TopType, player, config, playerLevel) |
| 74 | 74 | ||
| 75 | if !hasRoom { | 75 | if !hasRoom { |
| 76 | code = code_msg.RECODE_MERGE_CONFIG_ERROR | 76 | code = code_msg.RECODE_MERGE_CONFIG_ERROR |
| @@ -80,6 +80,7 @@ func HandleInfo(req *models.ReqRoomRankInfo) (code string, rsp models.RspRoomRan | @@ -80,6 +80,7 @@ func HandleInfo(req *models.ReqRoomRankInfo) (code string, rsp models.RspRoomRan | ||
| 80 | SavePlayer(gameId, player) | 80 | SavePlayer(gameId, player) |
| 81 | SaveRoom(gameId, room) | 81 | SaveRoom(gameId, room) |
| 82 | rsp.RoomRankInfo = GetInfoFromRoom(gameId, player, room, config) | 82 | rsp.RoomRankInfo = GetInfoFromRoom(gameId, player, room, config) |
| 83 | + rsp.RoomRankInfo.FirstJoin = firstJoin | ||
| 83 | 84 | ||
| 84 | return | 85 | return |
| 85 | } | 86 | } |
| @@ -189,7 +190,7 @@ func HandleAddScore(req *models.ReqRoomRankAddScore) (code string, rsp models.Rs | @@ -189,7 +190,7 @@ func HandleAddScore(req *models.ReqRoomRankAddScore) (code string, rsp models.Rs | ||
| 189 | } | 190 | } |
| 190 | 191 | ||
| 191 | // 尝试加入房间 | 192 | // 尝试加入房间 |
| 192 | - room, hasRoom := TryGetRoom(gameId, req.TopType, player, config, playerLevel) | 193 | + room, hasRoom, firstJoin := TryGetRoom(gameId, req.TopType, player, config, playerLevel) |
| 193 | 194 | ||
| 194 | // 房间排行增加积分 | 195 | // 房间排行增加积分 |
| 195 | oldScore, newScore := ChangePlayerScore(room, player, req.AddScore) | 196 | oldScore, newScore := ChangePlayerScore(room, player, req.AddScore) |
| @@ -203,6 +204,7 @@ func HandleAddScore(req *models.ReqRoomRankAddScore) (code string, rsp models.Rs | @@ -203,6 +204,7 @@ func HandleAddScore(req *models.ReqRoomRankAddScore) (code string, rsp models.Rs | ||
| 203 | SaveRoom(gameId, room) | 204 | SaveRoom(gameId, room) |
| 204 | 205 | ||
| 205 | rsp.RoomRankInfo = GetInfoFromRoom(gameId, player, room, config) | 206 | rsp.RoomRankInfo = GetInfoFromRoom(gameId, player, room, config) |
| 207 | + rsp.RoomRankInfo.FirstJoin = firstJoin | ||
| 206 | 208 | ||
| 207 | // 记录日志 | 209 | // 记录日志 |
| 208 | recordBase := NewRecordBase(player.Uid, req.TopType, config.Id) | 210 | recordBase := NewRecordBase(player.Uid, req.TopType, config.Id) |
service/roomrank/room.go
| @@ -85,8 +85,9 @@ func FindRoom(gameId string, topType int, activityId int64, roomConfigId int) (r | @@ -85,8 +85,9 @@ func FindRoom(gameId string, topType int, activityId int64, roomConfigId int) (r | ||
| 85 | } | 85 | } |
| 86 | 86 | ||
| 87 | // TryGetRoom 尝试获取房间 | 87 | // TryGetRoom 尝试获取房间 |
| 88 | -func TryGetRoom(gameId string, topType int, player *Player, config *confroomrank.ActivityConfig, playerLevel int) (room *Room, hasRoom bool) { | 88 | +func TryGetRoom(gameId string, topType int, player *Player, config *confroomrank.ActivityConfig, playerLevel int) (room *Room, hasRoom bool, firstJoin bool) { |
| 89 | hasRoom = false | 89 | hasRoom = false |
| 90 | + firstJoin = false | ||
| 90 | if player.ActivityId != config.Id { | 91 | if player.ActivityId != config.Id { |
| 91 | player.ActivityId = config.Id | 92 | player.ActivityId = config.Id |
| 92 | player.RoomUid = 0 | 93 | player.RoomUid = 0 |
| @@ -136,6 +137,7 @@ func TryGetRoom(gameId string, topType int, player *Player, config *confroomrank | @@ -136,6 +137,7 @@ func TryGetRoom(gameId string, topType int, player *Player, config *confroomrank | ||
| 136 | if hasRoom { | 137 | if hasRoom { |
| 137 | // 如果有 就加入 | 138 | // 如果有 就加入 |
| 138 | PlayerJoinRoom(room, player) | 139 | PlayerJoinRoom(room, player) |
| 140 | + firstJoin = true | ||
| 139 | } else { | 141 | } else { |
| 140 | // 如果没有合适条件的房间 创建一个 | 142 | // 如果没有合适条件的房间 创建一个 |
| 141 | roomCreate, hasCreate := CreateRoom(gameId, topType, config.Id, roomConfigId) | 143 | roomCreate, hasCreate := CreateRoom(gameId, topType, config.Id, roomConfigId) |
| @@ -146,6 +148,7 @@ func TryGetRoom(gameId string, topType int, player *Player, config *confroomrank | @@ -146,6 +148,7 @@ func TryGetRoom(gameId string, topType int, player *Player, config *confroomrank | ||
| 146 | JoinInitRobot(gameId, room, roomConfig) | 148 | JoinInitRobot(gameId, room, roomConfig) |
| 147 | 149 | ||
| 148 | PlayerJoinRoom(room, player) | 150 | PlayerJoinRoom(room, player) |
| 151 | + firstJoin = true | ||
| 149 | hasRoom = hasCreate | 152 | hasRoom = hasCreate |
| 150 | } | 153 | } |
| 151 | } | 154 | } |