package roomrank import ( "apigame/service-common/svconst" "apigame/service-common/svmysql" "apigame/util/util-lx/lxtime" "fmt" ) // RecordBase 日志公共 type RecordBase struct { Id int64 `gorm:"primaryKey;comment:日志ID"` TopType int `gorm:"comment:排行榜类型"` Uid int64 `gorm:"comment:玩家唯一ID"` ActivityId int64 `gorm:"comment:当前活动ID"` CreateTime int64 `gorm:"comment:创建时间戳"` UpdateTime int64 `gorm:"comment:修改时间戳"` } func NewRecordBase(uid int64, topType int, activityId int64) RecordBase { secNow := lxtime.NowUninx() return RecordBase{ CreateTime: secNow, UpdateTime: secNow, TopType: topType, Uid: uid, ActivityId: activityId, } } // RecordHandleRequest 收到请求 type RecordHandleRequest struct { RecordBase Req string `gorm:"type:varchar(255);comment:请求内容"` } func (d *RecordHandleRequest) MysqlInfo(suffix string) *svmysql.MysqlInfo { tableName := svconst.MYSQL_TABLE_S_ROOMRANK_RECORD_REQUEST return &svmysql.MysqlInfo{ DbMysql: svconst.DbCommon, TableName: fmt.Sprintf("%s_%s_%d_%d", tableName, suffix, d.TopType, d.ActivityId), } } func NewRecordHandleRequest(recordBase RecordBase, req string) *RecordHandleRequest { return &RecordHandleRequest{ RecordBase: recordBase, Req: req, } } // RecordAddSettleAward 增加结算奖励 type RecordAddSettleAward struct { RecordBase Award string `gorm:"type:varchar(255);comment:奖励内容"` UserClass int `gorm:"comment:结算用户评级"` UserType int `gorm:"comment:用户类型"` RoomUid int64 `gorm:"comment:房间ID"` } func (d *RecordAddSettleAward) MysqlInfo(suffix string) *svmysql.MysqlInfo { tableName := svconst.MYSQL_TABLE_S_ROOMRANK_RECORD_ADDTLEAWARD return &svmysql.MysqlInfo{ DbMysql: svconst.DbCommon, TableName: fmt.Sprintf("%s_%s_%d_%d", tableName, suffix, d.TopType, d.ActivityId), } } func NewRecordAddSettleAward(recordBase RecordBase, award string, userClass, userType int, roomUid int64) *RecordAddSettleAward { return &RecordAddSettleAward{ RecordBase: recordBase, Award: award, UserClass: userClass, UserType: userType, RoomUid: roomUid, } } // RecordGetSettleAward 领取上期结算奖励 type RecordGetSettleAward struct { RecordBase Award string `gorm:"type:varchar(255);comment:奖励内容"` } func (d *RecordGetSettleAward) MysqlInfo(suffix string) *svmysql.MysqlInfo { tableName := svconst.MYSQL_TABLE_S_ROOMRANK_RECORD_SETTLEAWARD return &svmysql.MysqlInfo{ DbMysql: svconst.DbCommon, TableName: fmt.Sprintf("%s_%s_%d_%d", tableName, suffix, d.TopType, d.ActivityId), } } func NewRecordGetSettleAward(recordBase RecordBase, award string) *RecordGetSettleAward { return &RecordGetSettleAward{ RecordBase: recordBase, Award: award, } } // RecordAddScore 房间排行增加积分 type RecordAddScore struct { RecordBase AddScore int64 `gorm:"comment:增加积分"` OldScore int64 `gorm:"comment:旧积分"` NewScore int64 `gorm:"comment:新积分"` } func (d *RecordAddScore) MysqlInfo(suffix string) *svmysql.MysqlInfo { tableName := svconst.MYSQL_TABLE_S_ROOMRANK_RECORD_ADDSCORE return &svmysql.MysqlInfo{ DbMysql: svconst.DbCommon, TableName: fmt.Sprintf("%s_%s_%d_%d", tableName, suffix, d.TopType, d.ActivityId), } } func NewRecordAddScore(recordBase RecordBase, addScore, oldScore, newScore int64) *RecordAddScore { return &RecordAddScore{ RecordBase: recordBase, AddScore: addScore, OldScore: oldScore, NewScore: newScore, } }