Commit c3dc4be0f106ceebfb4a3bf734020cb15fc44d68
1 parent
76ba366c
Exists in
master
and in
1 other branch
feat✨:房间排行活动:操作日志记录到数据库
Showing
8 changed files
with
147 additions
and
50 deletions
Show diff stats
routers/router.go
| @@ -29,7 +29,7 @@ func init() { | @@ -29,7 +29,7 @@ func init() { | ||
| 29 | beego.Router(prefix+"/roomrank/info", &controllers.RoomRankController{}, "post:Info") | 29 | beego.Router(prefix+"/roomrank/info", &controllers.RoomRankController{}, "post:Info") |
| 30 | // 领取上期结算奖励 | 30 | // 领取上期结算奖励 |
| 31 | beego.Router(prefix+"/roomrank/getsettleaward", &controllers.RoomRankController{}, "post:GetSettleAward") | 31 | beego.Router(prefix+"/roomrank/getsettleaward", &controllers.RoomRankController{}, "post:GetSettleAward") |
| 32 | - // 房间排行增加积分 | 32 | + // 增加积分 |
| 33 | beego.Router(prefix+"/roomrank/addscore", &controllers.RoomRankController{}, "post:AddScore") | 33 | beego.Router(prefix+"/roomrank/addscore", &controllers.RoomRankController{}, "post:AddScore") |
| 34 | 34 | ||
| 35 | beego.Router(prefix+"/demo", &controllers.DemoController{}, "post:Demo") | 35 | beego.Router(prefix+"/demo", &controllers.DemoController{}, "post:Demo") |
service-common/svconst/mysql.go
| @@ -17,7 +17,9 @@ const ( | @@ -17,7 +17,9 @@ const ( | ||
| 17 | MYSQL_TABLE_S_CARDHOLDER_RECORD_REWARDALBUM = "s_cardholder_record_rewardalbum" // 开卡包活动日志领取卡组奖励 | 17 | MYSQL_TABLE_S_CARDHOLDER_RECORD_REWARDALBUM = "s_cardholder_record_rewardalbum" // 开卡包活动日志领取卡组奖励 |
| 18 | MYSQL_TABLE_S_CARDHOLDER_RECORD_REWARDROUND = "s_cardholder_record_rewardround" // 开卡包活动日志领取轮次奖励 | 18 | MYSQL_TABLE_S_CARDHOLDER_RECORD_REWARDROUND = "s_cardholder_record_rewardround" // 开卡包活动日志领取轮次奖励 |
| 19 | 19 | ||
| 20 | - MYSQL_TABLE_S_ROOMRANK_CONFIG = "s_beach_rank_activity" // 房间排行活动配置 | ||
| 21 | - MYSQL_TABLE_S_ROOMRANK_PLAYER = "s_roomrank_player" // 房间排行玩家数据 | ||
| 22 | - MYSQL_TABLE_S_ROOMRANK_ROOM = "s_roomrank_room" // 房间排行房间数据 | 20 | + MYSQL_TABLE_S_ROOMRANK_CONFIG = "s_beach_rank_activity" // 房间排行活动配置 |
| 21 | + MYSQL_TABLE_S_ROOMRANK_PLAYER = "s_roomrank_player" // 房间排行玩家数据 | ||
| 22 | + MYSQL_TABLE_S_ROOMRANK_ROOM = "s_roomrank_room" // 房间排行房间数据 | ||
| 23 | + MYSQL_TABLE_S_ROOMRANK_RECORD_SETTLEAWARD = "s_roomrank_record_getsettleaward" // 房间排行领取上期结算奖励 | ||
| 24 | + MYSQL_TABLE_S_ROOMRANK_RECORD_ADDSCORE = "s_roomrank_record_addscore" // 房间排行增加积分 | ||
| 23 | ) | 25 | ) |
service/cardholder/dto-record.go
| @@ -7,8 +7,8 @@ import ( | @@ -7,8 +7,8 @@ import ( | ||
| 7 | "fmt" | 7 | "fmt" |
| 8 | ) | 8 | ) |
| 9 | 9 | ||
| 10 | -// RecordCardHolderBase 开卡包活动日志公共 | ||
| 11 | -type RecordCardHolderBase struct { | 10 | +// RecordBase 日志公共 |
| 11 | +type RecordBase struct { | ||
| 12 | Id int64 `gorm:"primaryKey;comment:日志ID"` | 12 | Id int64 `gorm:"primaryKey;comment:日志ID"` |
| 13 | Uid int64 `gorm:"comment:玩家唯一ID"` | 13 | Uid int64 `gorm:"comment:玩家唯一ID"` |
| 14 | SequenceId string `gorm:"type:varchar(255);comment:用户序列组ID"` | 14 | SequenceId string `gorm:"type:varchar(255);comment:用户序列组ID"` |
| @@ -19,9 +19,9 @@ type RecordCardHolderBase struct { | @@ -19,9 +19,9 @@ type RecordCardHolderBase struct { | ||
| 19 | UpdateTime int64 `gorm:"comment:修改时间戳"` | 19 | UpdateTime int64 `gorm:"comment:修改时间戳"` |
| 20 | } | 20 | } |
| 21 | 21 | ||
| 22 | -func NewRecordCardHolderBase(uid int64, sequenceId string, cohort string, activityId int64, round int) RecordCardHolderBase { | 22 | +func NewRecordBase(uid int64, sequenceId string, cohort string, activityId int64, round int) RecordBase { |
| 23 | secNow := lxtime.NowUninx() | 23 | secNow := lxtime.NowUninx() |
| 24 | - return RecordCardHolderBase{ | 24 | + return RecordBase{ |
| 25 | CreateTime: secNow, | 25 | CreateTime: secNow, |
| 26 | UpdateTime: secNow, | 26 | UpdateTime: secNow, |
| 27 | Uid: uid, | 27 | Uid: uid, |
| @@ -32,15 +32,15 @@ func NewRecordCardHolderBase(uid int64, sequenceId string, cohort string, activi | @@ -32,15 +32,15 @@ func NewRecordCardHolderBase(uid int64, sequenceId string, cohort string, activi | ||
| 32 | } | 32 | } |
| 33 | } | 33 | } |
| 34 | 34 | ||
| 35 | -// RecordCardHolderOpen 开卡包活动日志开卡包 | ||
| 36 | -type RecordCardHolderOpen struct { | ||
| 37 | - RecordCardHolderBase | 35 | +// RecordOpen 打开卡包 |
| 36 | +type RecordOpen struct { | ||
| 37 | + RecordBase | ||
| 38 | OpenMode int `gorm:"comment:开包类型0客户端驱动1星星商店购买2剩余星星兑换"` | 38 | OpenMode int `gorm:"comment:开包类型0客户端驱动1星星商店购买2剩余星星兑换"` |
| 39 | CardholderId int `gorm:"comment:卡包ID"` | 39 | CardholderId int `gorm:"comment:卡包ID"` |
| 40 | CardList string `gorm:"type:varchar(255);comment:开卡内容"` | 40 | CardList string `gorm:"type:varchar(255);comment:开卡内容"` |
| 41 | } | 41 | } |
| 42 | 42 | ||
| 43 | -func (d *RecordCardHolderOpen) MysqlInfo(suffix string) *svmysql.MysqlInfo { | 43 | +func (d *RecordOpen) MysqlInfo(suffix string) *svmysql.MysqlInfo { |
| 44 | tableName := svconst.MYSQL_TABLE_S_CARDHOLDER_RECORD_OPEN | 44 | tableName := svconst.MYSQL_TABLE_S_CARDHOLDER_RECORD_OPEN |
| 45 | return &svmysql.MysqlInfo{ | 45 | return &svmysql.MysqlInfo{ |
| 46 | DbMysql: svconst.DbCommon, | 46 | DbMysql: svconst.DbCommon, |
| @@ -48,24 +48,24 @@ func (d *RecordCardHolderOpen) MysqlInfo(suffix string) *svmysql.MysqlInfo { | @@ -48,24 +48,24 @@ func (d *RecordCardHolderOpen) MysqlInfo(suffix string) *svmysql.MysqlInfo { | ||
| 48 | } | 48 | } |
| 49 | } | 49 | } |
| 50 | 50 | ||
| 51 | -func NewRecordCardHolderOpen(recordBase RecordCardHolderBase, | ||
| 52 | - openMode int, cardholderId int, cardList string) *RecordCardHolderOpen { | ||
| 53 | - return &RecordCardHolderOpen{ | ||
| 54 | - RecordCardHolderBase: recordBase, | ||
| 55 | - OpenMode: openMode, | ||
| 56 | - CardholderId: cardholderId, | ||
| 57 | - CardList: cardList, | 51 | +func NewRecordOpen(recordBase RecordBase, |
| 52 | + openMode int, cardholderId int, cardList string) *RecordOpen { | ||
| 53 | + return &RecordOpen{ | ||
| 54 | + RecordBase: recordBase, | ||
| 55 | + OpenMode: openMode, | ||
| 56 | + CardholderId: cardholderId, | ||
| 57 | + CardList: cardList, | ||
| 58 | } | 58 | } |
| 59 | } | 59 | } |
| 60 | 60 | ||
| 61 | -// RecordCardHolderRewardAlbum 开卡包活动日志领取卡组奖励 | ||
| 62 | -type RecordCardHolderRewardAlbum struct { | ||
| 63 | - RecordCardHolderBase | 61 | +// RecordRewardAlbum 领取卡组奖励 |
| 62 | +type RecordRewardAlbum struct { | ||
| 63 | + RecordBase | ||
| 64 | AlbumId int `gorm:"comment:卡组ID"` | 64 | AlbumId int `gorm:"comment:卡组ID"` |
| 65 | Award string `gorm:"type:varchar(255);comment:奖励内容"` | 65 | Award string `gorm:"type:varchar(255);comment:奖励内容"` |
| 66 | } | 66 | } |
| 67 | 67 | ||
| 68 | -func (d *RecordCardHolderRewardAlbum) MysqlInfo(suffix string) *svmysql.MysqlInfo { | 68 | +func (d *RecordRewardAlbum) MysqlInfo(suffix string) *svmysql.MysqlInfo { |
| 69 | tableName := svconst.MYSQL_TABLE_S_CARDHOLDER_RECORD_REWARDALBUM | 69 | tableName := svconst.MYSQL_TABLE_S_CARDHOLDER_RECORD_REWARDALBUM |
| 70 | return &svmysql.MysqlInfo{ | 70 | return &svmysql.MysqlInfo{ |
| 71 | DbMysql: svconst.DbCommon, | 71 | DbMysql: svconst.DbCommon, |
| @@ -73,22 +73,22 @@ func (d *RecordCardHolderRewardAlbum) MysqlInfo(suffix string) *svmysql.MysqlInf | @@ -73,22 +73,22 @@ func (d *RecordCardHolderRewardAlbum) MysqlInfo(suffix string) *svmysql.MysqlInf | ||
| 73 | } | 73 | } |
| 74 | } | 74 | } |
| 75 | 75 | ||
| 76 | -func NewRecordCardHolderRewardAlbum(recordBase RecordCardHolderBase, | ||
| 77 | - albumId int, award string) *RecordCardHolderRewardAlbum { | ||
| 78 | - return &RecordCardHolderRewardAlbum{ | ||
| 79 | - RecordCardHolderBase: recordBase, | ||
| 80 | - AlbumId: albumId, | ||
| 81 | - Award: award, | 76 | +func NewRecordRewardAlbum(recordBase RecordBase, |
| 77 | + albumId int, award string) *RecordRewardAlbum { | ||
| 78 | + return &RecordRewardAlbum{ | ||
| 79 | + RecordBase: recordBase, | ||
| 80 | + AlbumId: albumId, | ||
| 81 | + Award: award, | ||
| 82 | } | 82 | } |
| 83 | } | 83 | } |
| 84 | 84 | ||
| 85 | -// RecordCardHolderRewardRound 开卡包活动日志领取轮次奖励 | ||
| 86 | -type RecordCardHolderRewardRound struct { | ||
| 87 | - RecordCardHolderBase | 85 | +// RecordRewardRound 领取轮次奖励 |
| 86 | +type RecordRewardRound struct { | ||
| 87 | + RecordBase | ||
| 88 | Award string `gorm:"type:varchar(255);comment:奖励内容"` | 88 | Award string `gorm:"type:varchar(255);comment:奖励内容"` |
| 89 | } | 89 | } |
| 90 | 90 | ||
| 91 | -func (d *RecordCardHolderRewardRound) MysqlInfo(suffix string) *svmysql.MysqlInfo { | 91 | +func (d *RecordRewardRound) MysqlInfo(suffix string) *svmysql.MysqlInfo { |
| 92 | tableName := svconst.MYSQL_TABLE_S_CARDHOLDER_RECORD_REWARDROUND | 92 | tableName := svconst.MYSQL_TABLE_S_CARDHOLDER_RECORD_REWARDROUND |
| 93 | return &svmysql.MysqlInfo{ | 93 | return &svmysql.MysqlInfo{ |
| 94 | DbMysql: svconst.DbCommon, | 94 | DbMysql: svconst.DbCommon, |
| @@ -96,10 +96,10 @@ func (d *RecordCardHolderRewardRound) MysqlInfo(suffix string) *svmysql.MysqlInf | @@ -96,10 +96,10 @@ func (d *RecordCardHolderRewardRound) MysqlInfo(suffix string) *svmysql.MysqlInf | ||
| 96 | } | 96 | } |
| 97 | } | 97 | } |
| 98 | 98 | ||
| 99 | -func NewRecordCardHolderRewardRound(recordBase RecordCardHolderBase, | ||
| 100 | - award string) *RecordCardHolderRewardRound { | ||
| 101 | - return &RecordCardHolderRewardRound{ | ||
| 102 | - RecordCardHolderBase: recordBase, | ||
| 103 | - Award: award, | 99 | +func NewRecordRewardRound(recordBase RecordBase, |
| 100 | + award string) *RecordRewardRound { | ||
| 101 | + return &RecordRewardRound{ | ||
| 102 | + RecordBase: recordBase, | ||
| 103 | + Award: award, | ||
| 104 | } | 104 | } |
| 105 | } | 105 | } |
service/cardholder/logic.go
| @@ -40,7 +40,7 @@ func CheckGameData(d *Player, conf *confcardholder.ActivityConfig) string { | @@ -40,7 +40,7 @@ func CheckGameData(d *Player, conf *confcardholder.ActivityConfig) string { | ||
| 40 | 40 | ||
| 41 | // GetUserSequenceIdAndCohort 获取 用户序列组ID(sequenceId) 用户分组(cohort) | 41 | // GetUserSequenceIdAndCohort 获取 用户序列组ID(sequenceId) 用户分组(cohort) |
| 42 | func GetUserSequenceIdAndCohort(uid int64) (sequenceId, cohort string) { | 42 | func GetUserSequenceIdAndCohort(uid int64) (sequenceId, cohort string) { |
| 43 | - // todo 这里后续要对接 | 43 | + // todo 这里后续要对接 用户序列组ID(sequenceId) 用户分组(cohort) |
| 44 | sequenceId = "1" | 44 | sequenceId = "1" |
| 45 | cohort = "1" | 45 | cohort = "1" |
| 46 | return | 46 | return |
| @@ -195,8 +195,8 @@ func DoOpen(gameId string, | @@ -195,8 +195,8 @@ func DoOpen(gameId string, | ||
| 195 | } | 195 | } |
| 196 | // 记录开卡包日志 | 196 | // 记录开卡包日志 |
| 197 | { | 197 | { |
| 198 | - recordBase := NewRecordCardHolderBase(player.Uid, sequenceId, cohort, config.Id, player.Details.Round) | ||
| 199 | - _ = svmysql.Create(NewRecordCardHolderOpen(recordBase, | 198 | + recordBase := NewRecordBase(player.Uid, sequenceId, cohort, config.Id, player.Details.Round) |
| 199 | + _ = svmysql.Create(NewRecordOpen(recordBase, | ||
| 200 | openMode, utstring.StringToInt(confCardholder.Id), zjson.Str(newCards)), | 200 | openMode, utstring.StringToInt(confCardholder.Id), zjson.Str(newCards)), |
| 201 | gameId) | 201 | gameId) |
| 202 | } | 202 | } |
| @@ -244,8 +244,8 @@ func DoOpenCheckAward(gameId string, | @@ -244,8 +244,8 @@ func DoOpenCheckAward(gameId string, | ||
| 244 | awardAlbum[albumId] = award | 244 | awardAlbum[albumId] = award |
| 245 | { | 245 | { |
| 246 | // 记录日志 | 246 | // 记录日志 |
| 247 | - recordBase := NewRecordCardHolderBase(player.Uid, sequenceId, cohort, config.Id, player.Details.Round) | ||
| 248 | - _ = svmysql.Create(NewRecordCardHolderRewardAlbum(recordBase, | 247 | + recordBase := NewRecordBase(player.Uid, sequenceId, cohort, config.Id, player.Details.Round) |
| 248 | + _ = svmysql.Create(NewRecordRewardAlbum(recordBase, | ||
| 249 | albumId, award), | 249 | albumId, award), |
| 250 | gameId) | 250 | gameId) |
| 251 | } | 251 | } |
| @@ -256,8 +256,8 @@ func DoOpenCheckAward(gameId string, | @@ -256,8 +256,8 @@ func DoOpenCheckAward(gameId string, | ||
| 256 | awardRound = config.Awards[utstring.IntToString(player.Details.Round)] | 256 | awardRound = config.Awards[utstring.IntToString(player.Details.Round)] |
| 257 | 257 | ||
| 258 | // 记录日志 | 258 | // 记录日志 |
| 259 | - recordBase := NewRecordCardHolderBase(player.Uid, sequenceId, cohort, config.Id, player.Details.Round) | ||
| 260 | - _ = svmysql.Create(NewRecordCardHolderRewardRound(recordBase, | 259 | + recordBase := NewRecordBase(player.Uid, sequenceId, cohort, config.Id, player.Details.Round) |
| 260 | + _ = svmysql.Create(NewRecordRewardRound(recordBase, | ||
| 261 | awardRound), | 261 | awardRound), |
| 262 | gameId) | 262 | gameId) |
| 263 | 263 |
service/init.go
| @@ -13,13 +13,15 @@ func Init() { | @@ -13,13 +13,15 @@ func Init() { | ||
| 13 | // 卡牌卡包 | 13 | // 卡牌卡包 |
| 14 | for _, gameId := range svconst.GameListCardHolder { | 14 | for _, gameId := range svconst.GameListCardHolder { |
| 15 | svmysql.InitTable(new(cardholder.Player), gameId, true) | 15 | svmysql.InitTable(new(cardholder.Player), gameId, true) |
| 16 | - svmysql.InitTable(new(cardholder.RecordCardHolderOpen), gameId, true) | ||
| 17 | - svmysql.InitTable(new(cardholder.RecordCardHolderRewardAlbum), gameId, true) | ||
| 18 | - svmysql.InitTable(new(cardholder.RecordCardHolderRewardRound), gameId, true) | 16 | + svmysql.InitTable(new(cardholder.RecordOpen), gameId, true) |
| 17 | + svmysql.InitTable(new(cardholder.RecordRewardAlbum), gameId, true) | ||
| 18 | + svmysql.InitTable(new(cardholder.RecordRewardRound), gameId, true) | ||
| 19 | } | 19 | } |
| 20 | // 房间排行 | 20 | // 房间排行 |
| 21 | for _, gameId := range svconst.GameListRoomRank { | 21 | for _, gameId := range svconst.GameListRoomRank { |
| 22 | svmysql.InitTable(new(roomrank.Player), gameId, true) | 22 | svmysql.InitTable(new(roomrank.Player), gameId, true) |
| 23 | + svmysql.InitTable(new(roomrank.RecordGetSettleAward), gameId, true) | ||
| 24 | + svmysql.InitTable(new(roomrank.RecordAddScore), gameId, true) | ||
| 23 | } | 25 | } |
| 24 | 26 | ||
| 25 | } | 27 | } |
| @@ -0,0 +1,75 @@ | @@ -0,0 +1,75 @@ | ||
| 1 | +package roomrank | ||
| 2 | + | ||
| 3 | +import ( | ||
| 4 | + "apigame/service-common/svconst" | ||
| 5 | + "apigame/service-common/svmysql" | ||
| 6 | + "apigame/util/util-lx/lxtime" | ||
| 7 | + "fmt" | ||
| 8 | +) | ||
| 9 | + | ||
| 10 | +// RecordBase 日志公共 | ||
| 11 | +type RecordBase struct { | ||
| 12 | + Id int64 `gorm:"primaryKey;comment:日志ID"` | ||
| 13 | + Uid int64 `gorm:"comment:玩家唯一ID"` | ||
| 14 | + ActivityId int64 `gorm:"comment:当前活动ID"` | ||
| 15 | + CreateTime int64 `gorm:"comment:创建时间戳"` | ||
| 16 | + UpdateTime int64 `gorm:"comment:修改时间戳"` | ||
| 17 | +} | ||
| 18 | + | ||
| 19 | +func NewRecordBase(uid int64, activityId int64) RecordBase { | ||
| 20 | + secNow := lxtime.NowUninx() | ||
| 21 | + return RecordBase{ | ||
| 22 | + CreateTime: secNow, | ||
| 23 | + UpdateTime: secNow, | ||
| 24 | + Uid: uid, | ||
| 25 | + ActivityId: activityId, | ||
| 26 | + } | ||
| 27 | +} | ||
| 28 | + | ||
| 29 | +// RecordGetSettleAward 领取上期结算奖励 | ||
| 30 | +type RecordGetSettleAward struct { | ||
| 31 | + RecordBase | ||
| 32 | + Award string `gorm:"type:varchar(255);comment:奖励内容"` | ||
| 33 | +} | ||
| 34 | + | ||
| 35 | +func (d *RecordGetSettleAward) MysqlInfo(suffix string) *svmysql.MysqlInfo { | ||
| 36 | + tableName := svconst.MYSQL_TABLE_S_ROOMRANK_RECORD_SETTLEAWARD | ||
| 37 | + return &svmysql.MysqlInfo{ | ||
| 38 | + DbMysql: svconst.DbCommon, | ||
| 39 | + TableName: fmt.Sprintf("%s_%s", tableName, suffix), | ||
| 40 | + } | ||
| 41 | +} | ||
| 42 | + | ||
| 43 | +func NewRecordGetSettleAward(recordBase RecordBase, | ||
| 44 | + award string) *RecordGetSettleAward { | ||
| 45 | + return &RecordGetSettleAward{ | ||
| 46 | + RecordBase: recordBase, | ||
| 47 | + Award: award, | ||
| 48 | + } | ||
| 49 | +} | ||
| 50 | + | ||
| 51 | +// RecordAddScore 房间排行增加积分 | ||
| 52 | +type RecordAddScore struct { | ||
| 53 | + RecordBase | ||
| 54 | + AddScore int64 `gorm:"comment:增加积分"` | ||
| 55 | + OldScore int64 `gorm:"comment:旧积分"` | ||
| 56 | + NewScore int64 `gorm:"comment:新积分"` | ||
| 57 | +} | ||
| 58 | + | ||
| 59 | +func (d *RecordAddScore) MysqlInfo(suffix string) *svmysql.MysqlInfo { | ||
| 60 | + tableName := svconst.MYSQL_TABLE_S_ROOMRANK_RECORD_ADDSCORE | ||
| 61 | + return &svmysql.MysqlInfo{ | ||
| 62 | + DbMysql: svconst.DbCommon, | ||
| 63 | + TableName: fmt.Sprintf("%s_%s", tableName, suffix), | ||
| 64 | + } | ||
| 65 | +} | ||
| 66 | + | ||
| 67 | +func NewRecordAddScore(recordBase RecordBase, | ||
| 68 | + addScore, oldScore, newScore int64) *RecordAddScore { | ||
| 69 | + return &RecordAddScore{ | ||
| 70 | + RecordBase: recordBase, | ||
| 71 | + AddScore: addScore, | ||
| 72 | + OldScore: oldScore, | ||
| 73 | + NewScore: newScore, | ||
| 74 | + } | ||
| 75 | +} |
service/roomrank/handle.go
| @@ -3,6 +3,7 @@ package roomrank | @@ -3,6 +3,7 @@ package roomrank | ||
| 3 | import ( | 3 | import ( |
| 4 | "apigame/configs/confroomrank" | 4 | "apigame/configs/confroomrank" |
| 5 | "apigame/models" | 5 | "apigame/models" |
| 6 | + "apigame/service-common/svmysql" | ||
| 6 | "apigame/service/code-msg" | 7 | "apigame/service/code-msg" |
| 7 | "fmt" | 8 | "fmt" |
| 8 | ) | 9 | ) |
| @@ -112,6 +113,7 @@ func HandleGetSettleAward(req *models.ReqRoomRankGetSettleAward) (code string, r | @@ -112,6 +113,7 @@ func HandleGetSettleAward(req *models.ReqRoomRankGetSettleAward) (code string, r | ||
| 112 | code = code_msg.RECODE_MERGE_ROOMRANK_NOTHASSETTLE_ERROR | 113 | code = code_msg.RECODE_MERGE_ROOMRANK_NOTHASSETTLE_ERROR |
| 113 | return | 114 | return |
| 114 | } | 115 | } |
| 116 | + oldActivityId := player.ActivityId | ||
| 115 | 117 | ||
| 116 | // 领取奖励 | 118 | // 领取奖励 |
| 117 | rsp.AwardText = player.SettleAward | 119 | rsp.AwardText = player.SettleAward |
| @@ -119,6 +121,12 @@ func HandleGetSettleAward(req *models.ReqRoomRankGetSettleAward) (code string, r | @@ -119,6 +121,12 @@ func HandleGetSettleAward(req *models.ReqRoomRankGetSettleAward) (code string, r | ||
| 119 | player.SettleAward = "" | 121 | player.SettleAward = "" |
| 120 | SavePlayer(gameId, player) | 122 | SavePlayer(gameId, player) |
| 121 | 123 | ||
| 124 | + // 记录日志 | ||
| 125 | + recordBase := NewRecordBase(player.Uid, oldActivityId) | ||
| 126 | + _ = svmysql.Create(NewRecordGetSettleAward(recordBase, | ||
| 127 | + rsp.AwardText), | ||
| 128 | + gameId) | ||
| 129 | + | ||
| 122 | return | 130 | return |
| 123 | } | 131 | } |
| 124 | 132 | ||
| @@ -164,7 +172,7 @@ func HandleAddScore(req *models.ReqRoomRankAddScore) (code string, rsp models.Rs | @@ -164,7 +172,7 @@ func HandleAddScore(req *models.ReqRoomRankAddScore) (code string, rsp models.Rs | ||
| 164 | room, hasRoom := TryGetRoom(gameId, player, config, playerLevel) | 172 | room, hasRoom := TryGetRoom(gameId, player, config, playerLevel) |
| 165 | 173 | ||
| 166 | // 房间排行增加积分 | 174 | // 房间排行增加积分 |
| 167 | - ChangePlayerScore(room, player, req.AddScore) | 175 | + oldScore, newScore := ChangePlayerScore(room, player, req.AddScore) |
| 168 | 176 | ||
| 169 | if hasRoom { | 177 | if hasRoom { |
| 170 | TryReSort(room, config) | 178 | TryReSort(room, config) |
| @@ -175,5 +183,11 @@ func HandleAddScore(req *models.ReqRoomRankAddScore) (code string, rsp models.Rs | @@ -175,5 +183,11 @@ func HandleAddScore(req *models.ReqRoomRankAddScore) (code string, rsp models.Rs | ||
| 175 | 183 | ||
| 176 | rsp.RoomRankInfo = GetInfoFromRoom(player, room) | 184 | rsp.RoomRankInfo = GetInfoFromRoom(player, room) |
| 177 | 185 | ||
| 186 | + // 记录日志 | ||
| 187 | + recordBase := NewRecordBase(player.Uid, config.Id) | ||
| 188 | + _ = svmysql.Create(NewRecordAddScore(recordBase, | ||
| 189 | + req.AddScore, oldScore, newScore), | ||
| 190 | + gameId) | ||
| 191 | + | ||
| 178 | return | 192 | return |
| 179 | } | 193 | } |
service/roomrank/logic.go
| @@ -55,11 +55,15 @@ func TrySettle(gameId string, player *Player, config *confroomrank.ActivityConfi | @@ -55,11 +55,15 @@ func TrySettle(gameId string, player *Player, config *confroomrank.ActivityConfi | ||
| 55 | } | 55 | } |
| 56 | 56 | ||
| 57 | // ChangePlayerScore 房间排行增加积分 | 57 | // ChangePlayerScore 房间排行增加积分 |
| 58 | -func ChangePlayerScore(room *Room, player *Player, addScore int64) { | 58 | +func ChangePlayerScore(room *Room, player *Player, addScore int64) (oldScore, newScore int64) { |
| 59 | for i := 0; i < len(room.Details.Players); i++ { | 59 | for i := 0; i < len(room.Details.Players); i++ { |
| 60 | p := room.Details.Players[i] | 60 | p := room.Details.Players[i] |
| 61 | if player.Uid == p.Uid { | 61 | if player.Uid == p.Uid { |
| 62 | + oldScore = p.Score | ||
| 62 | p.Score += addScore | 63 | p.Score += addScore |
| 64 | + newScore = p.Score | ||
| 65 | + return | ||
| 63 | } | 66 | } |
| 64 | } | 67 | } |
| 68 | + return | ||
| 65 | } | 69 | } |