Commit 965e00db4a6136e99067608a9a52ec34b37cdd08
1 parent
a7c3578e
Exists in
master
and in
1 other branch
fix🐛:一些配置ID从string改为int类型
Showing
4 changed files
with
42 additions
and
48 deletions
Show diff stats
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 |