From 414e572a5f3d77a4dd54500c7f062ed5818935cb Mon Sep 17 00:00:00 2001 From: 王家文 Date: Thu, 11 Apr 2024 09:49:31 +0800 Subject: [PATCH] feat: 日志加上用户序列组ID和用户分组ID --- conf/conf/db/s_cardholder_record_getnew_.sql | 2 ++ conf/conf/db/s_cardholder_record_open_.sql | 2 ++ conf/conf/db/s_cardholder_record_rewardalbum_.sql | 2 ++ conf/conf/db/s_cardholder_record_rewardround_.sql | 2 ++ dto/cardholder-record.go | 48 ++++++++++++++++++++++++++++++++++++------------ service/cardholder/handle.go | 11 +++++++---- 6 files changed, 51 insertions(+), 16 deletions(-) diff --git a/conf/conf/db/s_cardholder_record_getnew_.sql b/conf/conf/db/s_cardholder_record_getnew_.sql index 8a50c20..486d309 100644 --- a/conf/conf/db/s_cardholder_record_getnew_.sql +++ b/conf/conf/db/s_cardholder_record_getnew_.sql @@ -1,6 +1,8 @@ CREATE TABLE `{tablename}` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志ID', `uid` bigint(20) NOT NULL DEFAULT 0 COMMENT '玩家唯一ID', + `sequence_id` varchar(255) NOT NULL DEFAULT '' COMMENT '用户序列组ID', + `cohort` varchar(255) NOT NULL DEFAULT '' COMMENT '用户分组ID', `activity_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '活动ID', `round` int(11) NOT NULL DEFAULT 0 COMMENT '活动轮次', `cardholder_id` int(11) NOT NULL DEFAULT 0 COMMENT '卡包ID', diff --git a/conf/conf/db/s_cardholder_record_open_.sql b/conf/conf/db/s_cardholder_record_open_.sql index 50156f3..a0167e5 100644 --- a/conf/conf/db/s_cardholder_record_open_.sql +++ b/conf/conf/db/s_cardholder_record_open_.sql @@ -1,6 +1,8 @@ CREATE TABLE `{tablename}` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志ID', `uid` bigint(20) NOT NULL DEFAULT 0 COMMENT '玩家唯一ID', + `sequence_id` varchar(255) NOT NULL DEFAULT '' COMMENT '用户序列组ID', + `cohort` varchar(255) NOT NULL DEFAULT '' COMMENT '用户分组ID', `activity_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '活动ID', `round` int(11) NOT NULL DEFAULT 0 COMMENT '活动轮次', `cardholder_id` int(11) NOT NULL DEFAULT 0 COMMENT '卡包ID', diff --git a/conf/conf/db/s_cardholder_record_rewardalbum_.sql b/conf/conf/db/s_cardholder_record_rewardalbum_.sql index f5e89b8..af69013 100644 --- a/conf/conf/db/s_cardholder_record_rewardalbum_.sql +++ b/conf/conf/db/s_cardholder_record_rewardalbum_.sql @@ -1,6 +1,8 @@ CREATE TABLE `{tablename}` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志ID', `uid` bigint(20) NOT NULL DEFAULT 0 COMMENT '玩家唯一ID', + `sequence_id` varchar(255) NOT NULL DEFAULT '' COMMENT '用户序列组ID', + `cohort` varchar(255) NOT NULL DEFAULT '' COMMENT '用户分组ID', `activity_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '活动ID', `round` int(11) NOT NULL DEFAULT 0 COMMENT '活动轮次', `album_id` int(11) NOT NULL DEFAULT 0 COMMENT '卡组ID', diff --git a/conf/conf/db/s_cardholder_record_rewardround_.sql b/conf/conf/db/s_cardholder_record_rewardround_.sql index 904ea12..f844d72 100644 --- a/conf/conf/db/s_cardholder_record_rewardround_.sql +++ b/conf/conf/db/s_cardholder_record_rewardround_.sql @@ -1,6 +1,8 @@ CREATE TABLE `{tablename}` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志ID', `uid` bigint(20) NOT NULL DEFAULT 0 COMMENT '玩家唯一ID', + `sequence_id` varchar(255) NOT NULL DEFAULT '' COMMENT '用户序列组ID', + `cohort` varchar(255) NOT NULL DEFAULT '' COMMENT '用户分组ID', `activity_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '活动ID', `round` int(11) NOT NULL DEFAULT 0 COMMENT '活动轮次', `award` varchar(255) NOT NULL DEFAULT '' COMMENT '奖励内容', diff --git a/dto/cardholder-record.go b/dto/cardholder-record.go index 4899215..c206592 100644 --- a/dto/cardholder-record.go +++ b/dto/cardholder-record.go @@ -8,14 +8,16 @@ import ( // CardHolderRecordGetNew 开卡包活动日志获得卡包 type CardHolderRecordGetNew struct { - Id int64 `orm:"auto"` // 日志ID - Uid int64 // 玩家唯一ID - ActivityId int64 // 当前活动ID - Round int // 当前轮次 - CardholderId int // 卡包ID - CardholderCount int // 卡包数量 - CreateTime int64 // 创建时间戳 - UpdateTime int64 // 修改时间戳 + Id int64 `orm:"auto"` // 日志ID + Uid int64 // 玩家唯一ID + SequenceId string // 用户序列组ID + Cohort string // 用户分组ID + ActivityId int64 // 当前活动ID + Round int // 当前轮次 + CardholderId int // 卡包ID + CardholderCount int // 卡包数量 + CreateTime int64 // 创建时间戳 + UpdateTime int64 // 修改时间戳 } func (d *CardHolderRecordGetNew) TableName(gameId string) string { @@ -29,6 +31,8 @@ func (d *CardHolderRecordGetNew) CreateSqlPath() string { func (d *CardHolderRecordGetNew) SqlPairs() map[string]string { m := make(map[string]string) m["uid"] = fmt.Sprintf("%d", d.Uid) + m["sequence_id"] = fmt.Sprintf("'%s'", d.SequenceId) + m["cohort"] = fmt.Sprintf("'%s'", d.Cohort) m["activity_id"] = fmt.Sprintf("%d", d.ActivityId) m["round"] = fmt.Sprintf("%d", d.Round) m["cardholder_id"] = fmt.Sprintf("%d", d.CardholderId) @@ -38,13 +42,15 @@ func (d *CardHolderRecordGetNew) SqlPairs() map[string]string { return m } -func NewCardHolderRecordGetNew(uid int64, activityId int64, round int, +func NewCardHolderRecordGetNew(uid int64, sequenceId string, cohort string, activityId int64, round int, cardholderId int, cardholderCount int) *CardHolderRecordGetNew { secNow := lxtime.NowUninx() return &CardHolderRecordGetNew{ CreateTime: secNow, UpdateTime: secNow, Uid: uid, + SequenceId: sequenceId, + Cohort: cohort, ActivityId: activityId, Round: round, CardholderId: cardholderId, @@ -56,6 +62,8 @@ func NewCardHolderRecordGetNew(uid int64, activityId int64, round int, type CardHolderRecordOpen struct { Id int64 `orm:"auto"` // 日志ID Uid int64 // 玩家唯一ID + SequenceId string // 用户序列组ID + Cohort string // 用户分组ID ActivityId int64 // 当前活动ID Round int // 当前轮次 CardholderId int // 卡包ID @@ -75,6 +83,8 @@ func (d *CardHolderRecordOpen) CreateSqlPath() string { func (d *CardHolderRecordOpen) SqlPairs() map[string]string { m := make(map[string]string) m["uid"] = fmt.Sprintf("%d", d.Uid) + m["sequence_id"] = fmt.Sprintf("'%s'", d.SequenceId) + m["cohort"] = fmt.Sprintf("'%s'", d.Cohort) m["activity_id"] = fmt.Sprintf("%d", d.ActivityId) m["round"] = fmt.Sprintf("%d", d.Round) m["cardholder_id"] = fmt.Sprintf("%d", d.CardholderId) @@ -84,13 +94,15 @@ func (d *CardHolderRecordOpen) SqlPairs() map[string]string { return m } -func NewCardHolderRecordOpen(uid int64, activityId int64, round int, +func NewCardHolderRecordOpen(uid int64, sequenceId string, cohort string, activityId int64, round int, cardholderId int, cardList string) *CardHolderRecordOpen { secNow := lxtime.NowUninx() return &CardHolderRecordOpen{ CreateTime: secNow, UpdateTime: secNow, Uid: uid, + SequenceId: sequenceId, + Cohort: cohort, ActivityId: activityId, Round: round, CardholderId: cardholderId, @@ -102,6 +114,8 @@ func NewCardHolderRecordOpen(uid int64, activityId int64, round int, type CardHolderRecordRewardAlbum struct { Id int64 `orm:"auto"` // 日志ID Uid int64 // 玩家唯一ID + SequenceId string // 用户序列组ID + Cohort string // 用户分组ID ActivityId int64 // 当前活动ID Round int // 当前轮次 AlbumId int // 卡组ID @@ -121,6 +135,8 @@ func (d *CardHolderRecordRewardAlbum) CreateSqlPath() string { func (d *CardHolderRecordRewardAlbum) SqlPairs() map[string]string { m := make(map[string]string) m["uid"] = fmt.Sprintf("%d", d.Uid) + m["sequence_id"] = fmt.Sprintf("'%s'", d.SequenceId) + m["cohort"] = fmt.Sprintf("'%s'", d.Cohort) m["activity_id"] = fmt.Sprintf("%d", d.ActivityId) m["round"] = fmt.Sprintf("%d", d.Round) m["album_id"] = fmt.Sprintf("%d", d.AlbumId) @@ -130,13 +146,15 @@ func (d *CardHolderRecordRewardAlbum) SqlPairs() map[string]string { return m } -func NewCardHolderRecordRewardAlbum(uid int64, activityId int64, round int, +func NewCardHolderRecordRewardAlbum(uid int64, sequenceId string, cohort string, activityId int64, round int, albumId int, award string) *CardHolderRecordRewardAlbum { secNow := lxtime.NowUninx() return &CardHolderRecordRewardAlbum{ CreateTime: secNow, UpdateTime: secNow, Uid: uid, + SequenceId: sequenceId, + Cohort: cohort, ActivityId: activityId, Round: round, AlbumId: albumId, @@ -148,6 +166,8 @@ func NewCardHolderRecordRewardAlbum(uid int64, activityId int64, round int, type CardHolderRecordRewardRound struct { Id int64 `orm:"auto"` // 日志ID Uid int64 // 玩家唯一ID + SequenceId string // 用户序列组ID + Cohort string // 用户分组ID ActivityId int64 // 当前活动ID Round int // 当前轮次 Award string // 奖励内容 @@ -166,6 +186,8 @@ func (d *CardHolderRecordRewardRound) CreateSqlPath() string { func (d *CardHolderRecordRewardRound) SqlPairs() map[string]string { m := make(map[string]string) m["uid"] = fmt.Sprintf("%d", d.Uid) + m["sequence_id"] = fmt.Sprintf("'%s'", d.SequenceId) + m["cohort"] = fmt.Sprintf("'%s'", d.Cohort) m["activity_id"] = fmt.Sprintf("%d", d.ActivityId) m["round"] = fmt.Sprintf("%d", d.Round) m["award"] = fmt.Sprintf("'%s'", d.Award) @@ -174,13 +196,15 @@ func (d *CardHolderRecordRewardRound) SqlPairs() map[string]string { return m } -func NewCardHolderRecordRewardRound(uid int64, activityId int64, round int, +func NewCardHolderRecordRewardRound(uid int64, sequenceId string, cohort string, activityId int64, round int, award string) *CardHolderRecordRewardRound { secNow := lxtime.NowUninx() return &CardHolderRecordRewardRound{ CreateTime: secNow, UpdateTime: secNow, Uid: uid, + SequenceId: sequenceId, + Cohort: cohort, ActivityId: activityId, Round: round, Award: award, diff --git a/service/cardholder/handle.go b/service/cardholder/handle.go index 6def221..f959a1b 100644 --- a/service/cardholder/handle.go +++ b/service/cardholder/handle.go @@ -72,8 +72,9 @@ func HandleGetNew(req *models.ReqCardHolderGetNew) (code string, rsp models.RspC // 返回信息 rsp.CardHolderInfo = gameData.GetInfo() + sequenceId, cohort := GetUserSequenceIdAndCohort(req.UID) // 记录日志 - dto.SaveRecord(req.GameID, dto.NewCardHolderRecordGetNew(gameData.Uid, config.Id, gameData.Details.Round, + dto.SaveRecord(req.GameID, dto.NewCardHolderRecordGetNew(gameData.Uid, sequenceId, cohort, config.Id, gameData.Details.Round, req.Id, req.Count)) return @@ -178,7 +179,7 @@ func HandleOpen(req *models.ReqCardHolderOpen) (code string, rsp models.RspCardH SaveData(req.GameID, gameData) // 记录日志 - dto.SaveRecord(req.GameID, dto.NewCardHolderRecordOpen(gameData.Uid, config.Id, gameData.Details.Round, + dto.SaveRecord(req.GameID, dto.NewCardHolderRecordOpen(gameData.Uid, sequenceId, cohort, config.Id, gameData.Details.Round, req.Id, utjson.JsonString(rsp.NewCards))) //logs.Debug("wjwdbg 获取卡牌列表:", rsp.NewCards) @@ -252,8 +253,9 @@ func HandleGetRewardAlbum(req *models.ReqCardHolderGetRewardAlbum) (code string, // 返回信息 rsp.CardHolderInfo = gameData.GetInfo() + sequenceId, cohort := GetUserSequenceIdAndCohort(req.UID) // 记录日志 - dto.SaveRecord(req.GameID, dto.NewCardHolderRecordRewardAlbum(gameData.Uid, config.Id, gameData.Details.Round, + dto.SaveRecord(req.GameID, dto.NewCardHolderRecordRewardAlbum(gameData.Uid, sequenceId, cohort, config.Id, gameData.Details.Round, req.Id, rsp.Award)) return @@ -300,8 +302,9 @@ func HandleGetRewardRound(req *models.ReqCardHolderGetRewardRound) (code string, // 返回奖励 rsp.Award = config.Awards[uttype.IntToString(round)] + sequenceId, cohort := GetUserSequenceIdAndCohort(req.UID) // 记录日志 - dto.SaveRecord(req.GameID, dto.NewCardHolderRecordRewardRound(gameData.Uid, config.Id, gameData.Details.Round, + dto.SaveRecord(req.GameID, dto.NewCardHolderRecordRewardRound(gameData.Uid, sequenceId, cohort, config.Id, gameData.Details.Round, rsp.Award)) // 处理轮次完成 -- libgit2 0.21.0