Commit 414e572a5f3d77a4dd54500c7f062ed5818935cb

Authored by 王家文
1 parent e979a95a
Exists in master and in 1 other branch dev-wjw

feat: 日志加上用户序列组ID和用户分组ID

conf/conf/db/s_cardholder_record_getnew_.sql
1 1 CREATE TABLE `{tablename}` (
2 2 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志ID',
3 3 `uid` bigint(20) NOT NULL DEFAULT 0 COMMENT '玩家唯一ID',
  4 + `sequence_id` varchar(255) NOT NULL DEFAULT '' COMMENT '用户序列组ID',
  5 + `cohort` varchar(255) NOT NULL DEFAULT '' COMMENT '用户分组ID',
4 6 `activity_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '活动ID',
5 7 `round` int(11) NOT NULL DEFAULT 0 COMMENT '活动轮次',
6 8 `cardholder_id` int(11) NOT NULL DEFAULT 0 COMMENT '卡包ID',
... ...
conf/conf/db/s_cardholder_record_open_.sql
1 1 CREATE TABLE `{tablename}` (
2 2 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志ID',
3 3 `uid` bigint(20) NOT NULL DEFAULT 0 COMMENT '玩家唯一ID',
  4 + `sequence_id` varchar(255) NOT NULL DEFAULT '' COMMENT '用户序列组ID',
  5 + `cohort` varchar(255) NOT NULL DEFAULT '' COMMENT '用户分组ID',
4 6 `activity_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '活动ID',
5 7 `round` int(11) NOT NULL DEFAULT 0 COMMENT '活动轮次',
6 8 `cardholder_id` int(11) NOT NULL DEFAULT 0 COMMENT '卡包ID',
... ...
conf/conf/db/s_cardholder_record_rewardalbum_.sql
1 1 CREATE TABLE `{tablename}` (
2 2 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志ID',
3 3 `uid` bigint(20) NOT NULL DEFAULT 0 COMMENT '玩家唯一ID',
  4 + `sequence_id` varchar(255) NOT NULL DEFAULT '' COMMENT '用户序列组ID',
  5 + `cohort` varchar(255) NOT NULL DEFAULT '' COMMENT '用户分组ID',
4 6 `activity_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '活动ID',
5 7 `round` int(11) NOT NULL DEFAULT 0 COMMENT '活动轮次',
6 8 `album_id` int(11) NOT NULL DEFAULT 0 COMMENT '卡组ID',
... ...
conf/conf/db/s_cardholder_record_rewardround_.sql
1 1 CREATE TABLE `{tablename}` (
2 2 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志ID',
3 3 `uid` bigint(20) NOT NULL DEFAULT 0 COMMENT '玩家唯一ID',
  4 + `sequence_id` varchar(255) NOT NULL DEFAULT '' COMMENT '用户序列组ID',
  5 + `cohort` varchar(255) NOT NULL DEFAULT '' COMMENT '用户分组ID',
4 6 `activity_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '活动ID',
5 7 `round` int(11) NOT NULL DEFAULT 0 COMMENT '活动轮次',
6 8 `award` varchar(255) NOT NULL DEFAULT '' COMMENT '奖励内容',
... ...
dto/cardholder-record.go
... ... @@ -8,14 +8,16 @@ import (
8 8  
9 9 // CardHolderRecordGetNew 开卡包活动日志获得卡包
10 10 type CardHolderRecordGetNew struct {
11   - Id int64 `orm:"auto"` // 日志ID
12   - Uid int64 // 玩家唯一ID
13   - ActivityId int64 // 当前活动ID
14   - Round int // 当前轮次
15   - CardholderId int // 卡包ID
16   - CardholderCount int // 卡包数量
17   - CreateTime int64 // 创建时间戳
18   - UpdateTime int64 // 修改时间戳
  11 + Id int64 `orm:"auto"` // 日志ID
  12 + Uid int64 // 玩家唯一ID
  13 + SequenceId string // 用户序列组ID
  14 + Cohort string // 用户分组ID
  15 + ActivityId int64 // 当前活动ID
  16 + Round int // 当前轮次
  17 + CardholderId int // 卡包ID
  18 + CardholderCount int // 卡包数量
  19 + CreateTime int64 // 创建时间戳
  20 + UpdateTime int64 // 修改时间戳
19 21 }
20 22  
21 23 func (d *CardHolderRecordGetNew) TableName(gameId string) string {
... ... @@ -29,6 +31,8 @@ func (d *CardHolderRecordGetNew) CreateSqlPath() string {
29 31 func (d *CardHolderRecordGetNew) SqlPairs() map[string]string {
30 32 m := make(map[string]string)
31 33 m["uid"] = fmt.Sprintf("%d", d.Uid)
  34 + m["sequence_id"] = fmt.Sprintf("'%s'", d.SequenceId)
  35 + m["cohort"] = fmt.Sprintf("'%s'", d.Cohort)
32 36 m["activity_id"] = fmt.Sprintf("%d", d.ActivityId)
33 37 m["round"] = fmt.Sprintf("%d", d.Round)
34 38 m["cardholder_id"] = fmt.Sprintf("%d", d.CardholderId)
... ... @@ -38,13 +42,15 @@ func (d *CardHolderRecordGetNew) SqlPairs() map[string]string {
38 42 return m
39 43 }
40 44  
41   -func NewCardHolderRecordGetNew(uid int64, activityId int64, round int,
  45 +func NewCardHolderRecordGetNew(uid int64, sequenceId string, cohort string, activityId int64, round int,
42 46 cardholderId int, cardholderCount int) *CardHolderRecordGetNew {
43 47 secNow := lxtime.NowUninx()
44 48 return &CardHolderRecordGetNew{
45 49 CreateTime: secNow,
46 50 UpdateTime: secNow,
47 51 Uid: uid,
  52 + SequenceId: sequenceId,
  53 + Cohort: cohort,
48 54 ActivityId: activityId,
49 55 Round: round,
50 56 CardholderId: cardholderId,
... ... @@ -56,6 +62,8 @@ func NewCardHolderRecordGetNew(uid int64, activityId int64, round int,
56 62 type CardHolderRecordOpen struct {
57 63 Id int64 `orm:"auto"` // 日志ID
58 64 Uid int64 // 玩家唯一ID
  65 + SequenceId string // 用户序列组ID
  66 + Cohort string // 用户分组ID
59 67 ActivityId int64 // 当前活动ID
60 68 Round int // 当前轮次
61 69 CardholderId int // 卡包ID
... ... @@ -75,6 +83,8 @@ func (d *CardHolderRecordOpen) CreateSqlPath() string {
75 83 func (d *CardHolderRecordOpen) SqlPairs() map[string]string {
76 84 m := make(map[string]string)
77 85 m["uid"] = fmt.Sprintf("%d", d.Uid)
  86 + m["sequence_id"] = fmt.Sprintf("'%s'", d.SequenceId)
  87 + m["cohort"] = fmt.Sprintf("'%s'", d.Cohort)
78 88 m["activity_id"] = fmt.Sprintf("%d", d.ActivityId)
79 89 m["round"] = fmt.Sprintf("%d", d.Round)
80 90 m["cardholder_id"] = fmt.Sprintf("%d", d.CardholderId)
... ... @@ -84,13 +94,15 @@ func (d *CardHolderRecordOpen) SqlPairs() map[string]string {
84 94 return m
85 95 }
86 96  
87   -func NewCardHolderRecordOpen(uid int64, activityId int64, round int,
  97 +func NewCardHolderRecordOpen(uid int64, sequenceId string, cohort string, activityId int64, round int,
88 98 cardholderId int, cardList string) *CardHolderRecordOpen {
89 99 secNow := lxtime.NowUninx()
90 100 return &CardHolderRecordOpen{
91 101 CreateTime: secNow,
92 102 UpdateTime: secNow,
93 103 Uid: uid,
  104 + SequenceId: sequenceId,
  105 + Cohort: cohort,
94 106 ActivityId: activityId,
95 107 Round: round,
96 108 CardholderId: cardholderId,
... ... @@ -102,6 +114,8 @@ func NewCardHolderRecordOpen(uid int64, activityId int64, round int,
102 114 type CardHolderRecordRewardAlbum struct {
103 115 Id int64 `orm:"auto"` // 日志ID
104 116 Uid int64 // 玩家唯一ID
  117 + SequenceId string // 用户序列组ID
  118 + Cohort string // 用户分组ID
105 119 ActivityId int64 // 当前活动ID
106 120 Round int // 当前轮次
107 121 AlbumId int // 卡组ID
... ... @@ -121,6 +135,8 @@ func (d *CardHolderRecordRewardAlbum) CreateSqlPath() string {
121 135 func (d *CardHolderRecordRewardAlbum) SqlPairs() map[string]string {
122 136 m := make(map[string]string)
123 137 m["uid"] = fmt.Sprintf("%d", d.Uid)
  138 + m["sequence_id"] = fmt.Sprintf("'%s'", d.SequenceId)
  139 + m["cohort"] = fmt.Sprintf("'%s'", d.Cohort)
124 140 m["activity_id"] = fmt.Sprintf("%d", d.ActivityId)
125 141 m["round"] = fmt.Sprintf("%d", d.Round)
126 142 m["album_id"] = fmt.Sprintf("%d", d.AlbumId)
... ... @@ -130,13 +146,15 @@ func (d *CardHolderRecordRewardAlbum) SqlPairs() map[string]string {
130 146 return m
131 147 }
132 148  
133   -func NewCardHolderRecordRewardAlbum(uid int64, activityId int64, round int,
  149 +func NewCardHolderRecordRewardAlbum(uid int64, sequenceId string, cohort string, activityId int64, round int,
134 150 albumId int, award string) *CardHolderRecordRewardAlbum {
135 151 secNow := lxtime.NowUninx()
136 152 return &CardHolderRecordRewardAlbum{
137 153 CreateTime: secNow,
138 154 UpdateTime: secNow,
139 155 Uid: uid,
  156 + SequenceId: sequenceId,
  157 + Cohort: cohort,
140 158 ActivityId: activityId,
141 159 Round: round,
142 160 AlbumId: albumId,
... ... @@ -148,6 +166,8 @@ func NewCardHolderRecordRewardAlbum(uid int64, activityId int64, round int,
148 166 type CardHolderRecordRewardRound struct {
149 167 Id int64 `orm:"auto"` // 日志ID
150 168 Uid int64 // 玩家唯一ID
  169 + SequenceId string // 用户序列组ID
  170 + Cohort string // 用户分组ID
151 171 ActivityId int64 // 当前活动ID
152 172 Round int // 当前轮次
153 173 Award string // 奖励内容
... ... @@ -166,6 +186,8 @@ func (d *CardHolderRecordRewardRound) CreateSqlPath() string {
166 186 func (d *CardHolderRecordRewardRound) SqlPairs() map[string]string {
167 187 m := make(map[string]string)
168 188 m["uid"] = fmt.Sprintf("%d", d.Uid)
  189 + m["sequence_id"] = fmt.Sprintf("'%s'", d.SequenceId)
  190 + m["cohort"] = fmt.Sprintf("'%s'", d.Cohort)
169 191 m["activity_id"] = fmt.Sprintf("%d", d.ActivityId)
170 192 m["round"] = fmt.Sprintf("%d", d.Round)
171 193 m["award"] = fmt.Sprintf("'%s'", d.Award)
... ... @@ -174,13 +196,15 @@ func (d *CardHolderRecordRewardRound) SqlPairs() map[string]string {
174 196 return m
175 197 }
176 198  
177   -func NewCardHolderRecordRewardRound(uid int64, activityId int64, round int,
  199 +func NewCardHolderRecordRewardRound(uid int64, sequenceId string, cohort string, activityId int64, round int,
178 200 award string) *CardHolderRecordRewardRound {
179 201 secNow := lxtime.NowUninx()
180 202 return &CardHolderRecordRewardRound{
181 203 CreateTime: secNow,
182 204 UpdateTime: secNow,
183 205 Uid: uid,
  206 + SequenceId: sequenceId,
  207 + Cohort: cohort,
184 208 ActivityId: activityId,
185 209 Round: round,
186 210 Award: award,
... ...
service/cardholder/handle.go
... ... @@ -72,8 +72,9 @@ func HandleGetNew(req *models.ReqCardHolderGetNew) (code string, rsp models.RspC
72 72 // 返回信息
73 73 rsp.CardHolderInfo = gameData.GetInfo()
74 74  
  75 + sequenceId, cohort := GetUserSequenceIdAndCohort(req.UID)
75 76 // 记录日志
76   - dto.SaveRecord(req.GameID, dto.NewCardHolderRecordGetNew(gameData.Uid, config.Id, gameData.Details.Round,
  77 + dto.SaveRecord(req.GameID, dto.NewCardHolderRecordGetNew(gameData.Uid, sequenceId, cohort, config.Id, gameData.Details.Round,
77 78 req.Id, req.Count))
78 79  
79 80 return
... ... @@ -178,7 +179,7 @@ func HandleOpen(req *models.ReqCardHolderOpen) (code string, rsp models.RspCardH
178 179 SaveData(req.GameID, gameData)
179 180  
180 181 // 记录日志
181   - dto.SaveRecord(req.GameID, dto.NewCardHolderRecordOpen(gameData.Uid, config.Id, gameData.Details.Round,
  182 + dto.SaveRecord(req.GameID, dto.NewCardHolderRecordOpen(gameData.Uid, sequenceId, cohort, config.Id, gameData.Details.Round,
182 183 req.Id, utjson.JsonString(rsp.NewCards)))
183 184  
184 185 //logs.Debug("wjwdbg 获取卡牌列表:", rsp.NewCards)
... ... @@ -252,8 +253,9 @@ func HandleGetRewardAlbum(req *models.ReqCardHolderGetRewardAlbum) (code string,
252 253 // 返回信息
253 254 rsp.CardHolderInfo = gameData.GetInfo()
254 255  
  256 + sequenceId, cohort := GetUserSequenceIdAndCohort(req.UID)
255 257 // 记录日志
256   - dto.SaveRecord(req.GameID, dto.NewCardHolderRecordRewardAlbum(gameData.Uid, config.Id, gameData.Details.Round,
  258 + dto.SaveRecord(req.GameID, dto.NewCardHolderRecordRewardAlbum(gameData.Uid, sequenceId, cohort, config.Id, gameData.Details.Round,
257 259 req.Id, rsp.Award))
258 260  
259 261 return
... ... @@ -300,8 +302,9 @@ func HandleGetRewardRound(req *models.ReqCardHolderGetRewardRound) (code string,
300 302 // 返回奖励
301 303 rsp.Award = config.Awards[uttype.IntToString(round)]
302 304  
  305 + sequenceId, cohort := GetUserSequenceIdAndCohort(req.UID)
303 306 // 记录日志
304   - dto.SaveRecord(req.GameID, dto.NewCardHolderRecordRewardRound(gameData.Uid, config.Id, gameData.Details.Round,
  307 + dto.SaveRecord(req.GameID, dto.NewCardHolderRecordRewardRound(gameData.Uid, sequenceId, cohort, config.Id, gameData.Details.Round,
305 308 rsp.Award))
306 309  
307 310 // 处理轮次完成
... ...