package roomrank import ( "apigame/configs" "apigame/models" "apigame/service-common/svmysql" "apigame/util/util-lx/lxalilog" "apigame/util/util-lx/lxtime" ) // SavePlayer 存储数据 func SavePlayer(gameId string, d *DataRoomRankPlayer) { d.UpdateTime = lxtime.NowUninx() err := svmysql.Save(d, gameId) if err != nil { lxalilog.Errors(err, "roomrank.SavePlayer error", gameId, d.Uid, d.ActivityId) return } } func _LoadPlayer(gameId string, uid int64) (d *DataRoomRankPlayer) { d = NewDataRoomRankPlayer(uid) has, err := svmysql.First(d, gameId) if has { } else { d.Init(uid) err = svmysql.Create(d, gameId) if err != nil { lxalilog.Errors(err, "roomrank._LoadPlayer Create error", gameId, d.Uid, d.ActivityId) return } } return } // LoadPlayer 获取数据 外部接口 func LoadPlayer(gameId string, uid int64, config *configs.RoomRankConfig) (d *DataRoomRankPlayer) { configId := config.Id d = _LoadPlayer(gameId, uid) // 如果当前有上线活动(活动ID不为0),且活动ID和玩家数据不同,说明活动已切换 需更新 if configId != 0 && configId != d.ActivityId { d.ActivityId = configId SavePlayer(gameId, d) } return } // GetInfo 活动信息 func GetInfo(player *DataRoomRankPlayer, conf *configs.RoomRankConfig) models.RoomRankInfo { info := models.RoomRankInfo{} return info }