Commit 965e00db4a6136e99067608a9a52ec34b37cdd08

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

fix🐛:一些配置ID从string改为int类型

configs/confcardholder/config.go
@@ -115,31 +115,29 @@ type CardConfig struct { @@ -115,31 +115,29 @@ type CardConfig struct {
115 115
116 // OpenCardholderConfig 卡包开卡规则表 116 // OpenCardholderConfig 卡包开卡规则表
117 type OpenCardholderConfig struct { 117 type OpenCardholderConfig struct {
118 - Id int `json:"id"` // ID  
119 - IsGoldCardholder int `json:"is_gold_card_holder"` // 是否是金卡包  
120 - IsNew int `json:"is_new"` // 是否是新卡包  
121 - GuaranteedStarCardId string `json:"guaranteed_star_card_id"` // 保底卡星级序列ID  
122 - NormalCardNumber int `json:"normal_card_number"` // 非保底卡数量  
123 - MinimumGuaranteeCardId string `json:"minimum_guarantee_card_id"` // 非保底卡牌序列ID  
124 - ActivityId int `json:"activity_id"` // 对应活动ID 118 + Id int `json:"id"` // ID
  119 + IsGoldCardholder int `json:"is_gold_card_holder"` // 是否是金卡包
  120 + IsNew int `json:"is_new"` // 是否是新卡包
  121 + GuaranteedStarCardId int `json:"guaranteed_star_card_id"` // 保底卡星级序列ID
  122 + NormalCardNumber int `json:"normal_card_number"` // 非保底卡数量
  123 + MinimumGuaranteeCardId int `json:"minimum_guarantee_card_id"` // 非保底卡牌序列ID
  124 + ActivityId int `json:"activity_id"` // 对应活动ID
125 } 125 }
126 126
127 // NormalCardStarConfig 非保底卡星级ID 127 // NormalCardStarConfig 非保底卡星级ID
128 type NormalCardStarConfig struct { 128 type NormalCardStarConfig struct {
129 - Id string `json:"id"` // ID  
130 - SequenceId string `json:"user_sequence_id"` // 用户序列组ID  
131 - Cohort string `json:"cohort"` // 用户分组  
132 - NormalCardSequenceId string `json:"normal_card_sequence_id"` // 非保底星级序列  
133 - NormalCardSequenceIds []string `json:"normal_card_sequence_ids"` // 非保底星级序列 129 + Id int `json:"id"` // ID
  130 + SequenceId int `json:"user_sequence_id"` // 用户序列组ID
  131 + Cohort int `json:"cohort"` // 用户分组
  132 + NormalCardSequenceId []int `json:"normal_card_sequence_id"` // 非保底星级序列
134 } 133 }
135 134
136 // CardSequenceConfig 星级ID对应的卡片 135 // CardSequenceConfig 星级ID对应的卡片
137 type CardSequenceConfig struct { 136 type CardSequenceConfig struct {
138 - Id string `json:"id"` // ID  
139 - SequenceId string `json:"user_sequence_id"` // 用户序列组ID  
140 - Cohort string `json:"cohort"` // 用户分组  
141 - CardIdList string `json:"card_id_list"` // 卡牌抽取序列  
142 - CardIdLists []string `json:"card_id_lists"` // 卡牌抽取序列 137 + Id int `json:"id"` // ID
  138 + SequenceId int `json:"user_sequence_id"` // 用户序列组ID
  139 + Cohort int `json:"cohort"` // 用户分组
  140 + CardIdList []int `json:"card_id_list"` // 卡牌抽取序列
143 } 141 }
144 142
145 // StarShopConfig 星星商店配置 143 // StarShopConfig 星星商店配置
configs/confcardholder/decode.go
@@ -5,7 +5,6 @@ import ( @@ -5,7 +5,6 @@ import (
5 "encoding/json" 5 "encoding/json"
6 "errors" 6 "errors"
7 "fmt" 7 "fmt"
8 - "strings"  
9 ) 8 )
10 9
11 // Decode 解析配置原始数据 10 // Decode 解析配置原始数据
@@ -82,7 +81,6 @@ func (c *ActivityConfig) Decode(gameId string, rawData any) { @@ -82,7 +81,6 @@ func (c *ActivityConfig) Decode(gameId string, rawData any) {
82 return 81 return
83 } 82 }
84 for _, i2 := range configs { 83 for _, i2 := range configs {
85 - i2.NormalCardSequenceIds = strings.Split(i2.NormalCardSequenceId, ",")  
86 combineId := CombineIdSequenceIdCohort(i2.Id, i2.SequenceId, i2.Cohort) 84 combineId := CombineIdSequenceIdCohort(i2.Id, i2.SequenceId, i2.Cohort)
87 c.NormalCardStarConfig[combineId] = i2 85 c.NormalCardStarConfig[combineId] = i2
88 } 86 }
@@ -96,7 +94,6 @@ func (c *ActivityConfig) Decode(gameId string, rawData any) { @@ -96,7 +94,6 @@ func (c *ActivityConfig) Decode(gameId string, rawData any) {
96 return 94 return
97 } 95 }
98 for _, i2 := range configs { 96 for _, i2 := range configs {
99 - i2.CardIdLists = strings.Split(i2.CardIdList, ",")  
100 combineId := CombineIdSequenceIdCohort(i2.Id, i2.SequenceId, i2.Cohort) 97 combineId := CombineIdSequenceIdCohort(i2.Id, i2.SequenceId, i2.Cohort)
101 c.CardSequenceConfig[combineId] = i2 98 c.CardSequenceConfig[combineId] = i2
102 } 99 }
@@ -144,12 +141,12 @@ func (c *ActivityConfig) GenerateConfigClient() { @@ -144,12 +141,12 @@ func (c *ActivityConfig) GenerateConfigClient() {
144 } 141 }
145 142
146 // CombineIdSequenceIdCohort 组合ID k=ID_用户序列_用户分组 143 // CombineIdSequenceIdCohort 组合ID k=ID_用户序列_用户分组
147 -func CombineIdSequenceIdCohort(id, sequenceId, cohort string) string { 144 +func CombineIdSequenceIdCohort(id, sequenceId, cohort int) string {
148 return fmt.Sprintf("%s_%s_%s", id, sequenceId, cohort) 145 return fmt.Sprintf("%s_%s_%s", id, sequenceId, cohort)
149 } 146 }
150 147
151 // FindNormalCardStarConfig 查找配置 非保底卡星级ID 148 // FindNormalCardStarConfig 查找配置 非保底卡星级ID
152 -func (c *ActivityConfig) FindNormalCardStarConfig(id, sequenceId, cohort string) (conf NormalCardStarConfig, has bool) { 149 +func (c *ActivityConfig) FindNormalCardStarConfig(id, sequenceId, cohort int) (conf NormalCardStarConfig, has bool) {
153 combineId := CombineIdSequenceIdCohort(id, sequenceId, cohort) 150 combineId := CombineIdSequenceIdCohort(id, sequenceId, cohort)
154 conf, has = c.NormalCardStarConfig[combineId] 151 conf, has = c.NormalCardStarConfig[combineId]
155 if !has { 152 if !has {
@@ -159,7 +156,7 @@ func (c *ActivityConfig) FindNormalCardStarConfig(id, sequenceId, cohort string) @@ -159,7 +156,7 @@ func (c *ActivityConfig) FindNormalCardStarConfig(id, sequenceId, cohort string)
159 } 156 }
160 157
161 // FindCardSequenceConfig 查找配置 星级ID对应的卡片 158 // FindCardSequenceConfig 查找配置 星级ID对应的卡片
162 -func (c *ActivityConfig) FindCardSequenceConfig(id, sequenceId, cohort string) (conf CardSequenceConfig, has bool) { 159 +func (c *ActivityConfig) FindCardSequenceConfig(id, sequenceId, cohort int) (conf CardSequenceConfig, has bool) {
163 combineId := CombineIdSequenceIdCohort(id, sequenceId, cohort) 160 combineId := CombineIdSequenceIdCohort(id, sequenceId, cohort)
164 conf, has = c.CardSequenceConfig[combineId] 161 conf, has = c.CardSequenceConfig[combineId]
165 if !has { 162 if !has {
service/cardholder/dto-record.go
@@ -9,17 +9,17 @@ import ( @@ -9,17 +9,17 @@ import (
9 9
10 // RecordBase 日志公共 10 // RecordBase 日志公共
11 type RecordBase struct { 11 type RecordBase struct {
12 - Id int64 `gorm:"primaryKey;comment:日志ID"`  
13 - Uid int64 `gorm:"comment:玩家唯一ID"`  
14 - SequenceId string `gorm:"type:varchar(255);comment:用户序列组ID"`  
15 - Cohort string `gorm:"type:varchar(255);comment:用户分组ID"`  
16 - ActivityId int64 `gorm:"comment:当前活动ID"`  
17 - Round int `gorm:"comment:当前轮次"`  
18 - CreateTime int64 `gorm:"comment:创建时间戳"`  
19 - UpdateTime int64 `gorm:"comment:修改时间戳"` 12 + Id int64 `gorm:"primaryKey;comment:日志ID"`
  13 + Uid int64 `gorm:"comment:玩家唯一ID"`
  14 + SequenceId int `gorm:"type:varchar(255);comment:用户序列组ID"`
  15 + Cohort int `gorm:"type:varchar(255);comment:用户分组ID"`
  16 + ActivityId int64 `gorm:"comment:当前活动ID"`
  17 + Round int `gorm:"comment:当前轮次"`
  18 + CreateTime int64 `gorm:"comment:创建时间戳"`
  19 + UpdateTime int64 `gorm:"comment:修改时间戳"`
20 } 20 }
21 21
22 -func NewRecordBase(uid int64, sequenceId string, cohort string, activityId int64, round int) RecordBase { 22 +func NewRecordBase(uid int64, sequenceId int, cohort int, activityId int64, round int) RecordBase {
23 secNow := lxtime.NowUninx() 23 secNow := lxtime.NowUninx()
24 return RecordBase{ 24 return RecordBase{
25 CreateTime: secNow, 25 CreateTime: secNow,
service/cardholder/logic.go
@@ -38,18 +38,18 @@ func CheckGameData(d *Player, conf *confcardholder.ActivityConfig) string { @@ -38,18 +38,18 @@ func CheckGameData(d *Player, conf *confcardholder.ActivityConfig) string {
38 } 38 }
39 39
40 // GetUserSequenceIdAndCohort 获取 用户序列组ID(sequenceId) 用户分组(cohort) 40 // GetUserSequenceIdAndCohort 获取 用户序列组ID(sequenceId) 用户分组(cohort)
41 -func GetUserSequenceIdAndCohort(uid int64) (sequenceId, cohort string) { 41 +func GetUserSequenceIdAndCohort(uid int64) (sequenceId, cohort int) {
42 // todo 这里后续要对接 用户序列组ID(sequenceId) 用户分组(cohort) 42 // todo 这里后续要对接 用户序列组ID(sequenceId) 用户分组(cohort)
43 - sequenceId = "1"  
44 - cohort = "1" 43 + sequenceId = 1
  44 + cohort = 1
45 return 45 return
46 } 46 }
47 47
48 // GetOneFromArray 从配置的数组里获取一个值 scale=之前刻度 48 // GetOneFromArray 从配置的数组里获取一个值 scale=之前刻度
49 -func GetOneFromArray(array []string, scale int) string { 49 +func GetOneFromArray(array []int, scale int) int {
50 length := len(array) 50 length := len(array)
51 if length < 1 { 51 if length < 1 {
52 - return "" 52 + return 0
53 } 53 }
54 if length == 1 { 54 if length == 1 {
55 return array[0] 55 return array[0]
@@ -58,8 +58,8 @@ func GetOneFromArray(array []string, scale int) string { @@ -58,8 +58,8 @@ func GetOneFromArray(array []string, scale int) string {
58 } 58 }
59 59
60 // GetListFromArray 从配置的数组里获取一组值 scale=之前刻度 count=数目 60 // GetListFromArray 从配置的数组里获取一组值 scale=之前刻度 count=数目
61 -func GetListFromArray(array []string, scale, count int) []string {  
62 - list := make([]string, 0) 61 +func GetListFromArray(array []int, scale, count int) []int {
  62 + list := make([]int, 0)
63 if count < 0 { 63 if count < 0 {
64 return list 64 return list
65 } 65 }
@@ -144,7 +144,7 @@ func DoOpen(gameId string, @@ -144,7 +144,7 @@ func DoOpen(gameId string,
144 player *Player, 144 player *Player,
145 config *confcardholder.ActivityConfig, 145 config *confcardholder.ActivityConfig,
146 confCardholder confcardholder.OpenCardholderConfig, 146 confCardholder confcardholder.OpenCardholderConfig,
147 - sequenceId, cohort string, 147 + sequenceId, cohort int,
148 openMode int) (newCards []int) { 148 openMode int) (newCards []int) {
149 149
150 newCards = make([]int, 0) 150 newCards = make([]int, 0)
@@ -156,23 +156,22 @@ func DoOpen(gameId string, @@ -156,23 +156,22 @@ func DoOpen(gameId string,
156 player.Details.Cards[cardId] += 1 156 player.Details.Cards[cardId] += 1
157 newCards = append(newCards, cardId) 157 newCards = append(newCards, cardId)
158 } else { 158 } else {
159 - getCardFunc := func(cardConfigId string) { 159 + getCardFunc := func(cardConfigId int) {
160 confCardSequence, hasCardSequence := config.FindCardSequenceConfig(cardConfigId, sequenceId, cohort) 160 confCardSequence, hasCardSequence := config.FindCardSequenceConfig(cardConfigId, sequenceId, cohort)
161 if hasCardSequence { 161 if hasCardSequence {
162 combineId := confcardholder.CombineIdSequenceIdCohort(cardConfigId, sequenceId, cohort) 162 combineId := confcardholder.CombineIdSequenceIdCohort(cardConfigId, sequenceId, cohort)
163 scale := player.Details.CardSequenceScales[combineId] 163 scale := player.Details.CardSequenceScales[combineId]
164 - cardId := GetOneFromArray(confCardSequence.CardIdLists, scale)  
165 - cardIdInt := utstring.StringToInt(cardId) 164 + cardId := GetOneFromArray(confCardSequence.CardIdList, scale)
166 // 增加刻度 165 // 增加刻度
167 player.Details.CardSequenceScales[combineId] = scale + 1 166 player.Details.CardSequenceScales[combineId] = scale + 1
168 // 增加卡牌 167 // 增加卡牌
169 - player.Details.Cards[cardIdInt] += 1  
170 - newCards = append(newCards, cardIdInt) 168 + player.Details.Cards[cardId] += 1
  169 + newCards = append(newCards, cardId)
171 } 170 }
172 } 171 }
173 // 正常抽卡 172 // 正常抽卡
174 // 先抽保底卡 173 // 先抽保底卡
175 - if confCardholder.GuaranteedStarCardId != "0" { 174 + if confCardholder.GuaranteedStarCardId != 0 {
176 getCardFunc(confCardholder.GuaranteedStarCardId) 175 getCardFunc(confCardholder.GuaranteedStarCardId)
177 } 176 }
178 // 非保底卡 177 // 非保底卡
@@ -182,7 +181,7 @@ func DoOpen(gameId string, @@ -182,7 +181,7 @@ func DoOpen(gameId string,
182 if hasNormalCardStar { 181 if hasNormalCardStar {
183 combineIdStar := confcardholder.CombineIdSequenceIdCohort(confCardholder.MinimumGuaranteeCardId, sequenceId, cohort) 182 combineIdStar := confcardholder.CombineIdSequenceIdCohort(confCardholder.MinimumGuaranteeCardId, sequenceId, cohort)
184 scaleStar := player.Details.StarSequenceScales[combineIdStar] 183 scaleStar := player.Details.StarSequenceScales[combineIdStar]
185 - starIds := GetListFromArray(confNormalCardStar.NormalCardSequenceIds, scaleStar, count) 184 + starIds := GetListFromArray(confNormalCardStar.NormalCardSequenceId, scaleStar, count)
186 // 增加星级刻度 185 // 增加星级刻度
187 player.Details.StarSequenceScales[combineIdStar] = scaleStar + count 186 player.Details.StarSequenceScales[combineIdStar] = scaleStar + count
188 // 遍历星级刻度抽取n张卡牌 187 // 遍历星级刻度抽取n张卡牌
@@ -207,7 +206,7 @@ func DoOpen(gameId string, @@ -207,7 +206,7 @@ func DoOpen(gameId string,
207 func DoOpenCheckAward(gameId string, 206 func DoOpenCheckAward(gameId string,
208 player *Player, 207 player *Player,
209 config *confcardholder.ActivityConfig, 208 config *confcardholder.ActivityConfig,
210 - sequenceId, cohort string, 209 + sequenceId, cohort int,
211 newCards []int, 210 newCards []int,
212 openMode int) (awardAlbum map[int]string, awardRound string) { 211 openMode int) (awardAlbum map[int]string, awardRound string) {
213 212