Commit afa3edcf549d624f0b97c45230450921c1aee4f5

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

feat✨:卡包卡牌活动配置接口

dto/cardholder-record.go
... ... @@ -57,7 +57,7 @@ func NewCardHolderRecordOpen(recordBase CardHolderRecordBase,
57 57 // CardHolderRecordRewardAlbum 开卡包活动日志领取卡组奖励
58 58 type CardHolderRecordRewardAlbum struct {
59 59 CardHolderRecordBase
60   - AlbumId string `gorm:"type:varchar(255);comment:卡组ID"`
  60 + AlbumId int `gorm:"comment:卡组ID"`
61 61 Award string `gorm:"type:varchar(255);comment:奖励内容"`
62 62 }
63 63  
... ... @@ -69,7 +69,7 @@ func (d *CardHolderRecordRewardAlbum) GetTableName(gameId string) string {
69 69 }
70 70  
71 71 func NewCardHolderRecordRewardAlbum(recordBase CardHolderRecordBase,
72   - albumId string, award string) *CardHolderRecordRewardAlbum {
  72 + albumId int, award string) *CardHolderRecordRewardAlbum {
73 73 return &CardHolderRecordRewardAlbum{
74 74 CardHolderRecordBase: recordBase,
75 75 AlbumId: albumId,
... ...
dto/cardholder.go
... ... @@ -21,7 +21,7 @@ type CardHolderData struct {
21 21 // CardHolderDataDetails 卡牌活动详情
22 22 type CardHolderDataDetails struct {
23 23 Cards map[int]int // 每张卡集了多少张 k=卡牌ID v=数量
24   - Album map[string]int // 卡组奖励领取 k=卡组ID v=数量
  24 + Album map[int]int // 卡组奖励领取 k=卡组ID v=数量
25 25 StarSequenceScales map[string]int // 星级序列刻度 k=ID_用户序列_用户分组 v=刻度
26 26 CardSequenceScales map[string]int // 卡牌序列刻度 k=ID_用户序列_用户分组 v=刻度
27 27 Round int // 卡册当前轮次
... ... @@ -39,7 +39,7 @@ func NewCardHolderData(uid int64) *CardHolderData {
39 39 func NewCardHolderDataDetails() *CardHolderDataDetails {
40 40 return &CardHolderDataDetails{
41 41 Cards: make(map[int]int),
42   - Album: make(map[string]int),
  42 + Album: make(map[int]int),
43 43 StarSequenceScales: make(map[string]int),
44 44 CardSequenceScales: make(map[string]int),
45 45 Round: 1,
... ...
models/cardholder.go
... ... @@ -20,9 +20,9 @@ type RspCardHolderGetConfig struct {
20 20  
21 21 // CardHolderInfo 卡包信息
22 22 type CardHolderInfo struct {
23   - Cards map[int]int `form:"cards" json:"cards"` // 每张卡集了多少张 k=卡牌ID v=数量
24   - Album map[string]int `form:"album" json:"album"` // 卡组奖励领取 k=卡组ID v=数量
25   - Round int `form:"round" json:"round"` // 卡册当前轮次
  23 + Cards map[int]int `form:"cards" json:"cards"` // 每张卡集了多少张 k=卡牌ID v=数量
  24 + Album map[int]int `form:"album" json:"album"` // 卡组奖励领取 k=卡组ID v=数量
  25 + Round int `form:"round" json:"round"` // 卡册当前轮次
26 26 }
27 27  
28 28 // ReqCardHolderInfo 请求 卡包信息
... ... @@ -59,9 +59,9 @@ type ReqCardHolderOpen struct {
59 59 // RspCardHolderOpen 返回 打开卡包
60 60 type RspCardHolderOpen struct {
61 61 CardHolderInfo
62   - NewCards []int `form:"new_cards" json:"new_cards"` // 新获得的卡牌列表
63   - AwardAlbum map[string]string `form:"award_album" json:"award_album"` // 触发的卡组奖励列表 k=出发的卡组ID v=对应奖励
64   - AwardRound string `form:"award_round" json:"award_round"` // 触发的轮次奖励列表 空字符串未触发
  62 + NewCards []int `form:"new_cards" json:"new_cards"` // 新获得的卡牌列表
  63 + AwardAlbum map[int]string `form:"award_album" json:"award_album"` // 触发的卡组奖励列表 k=出发的卡组ID v=对应奖励
  64 + AwardRound string `form:"award_round" json:"award_round"` // 触发的轮次奖励列表 空字符串未触发
65 65 }
66 66  
67 67 // ReqCardHolderGetRewardAlbum 请求 领取卡组奖励
... ...
service/cardholder/config-registry.go
... ... @@ -28,7 +28,7 @@ func ConfigDecode(gameId string, configRaw *CardActivityConfigRaw) {
28 28 GameId: gameId,
29 29 Id: configRaw.Id,
30 30 Awards: make(map[string]string),
31   - AlbumConfig: make(map[string]AlbumConfig),
  31 + AlbumConfig: make(map[int]AlbumConfig),
32 32 CardConfig: make(map[int]CardConfig),
33 33 CardholderConfig: make(map[string]OpenCardholderConfig),
34 34 NormalCardStarConfig: make(map[string]NormalCardStarConfig),
... ...
service/cardholder/config.go
... ... @@ -14,7 +14,7 @@ type CardActivityConfig struct {
14 14 GameId string // 所属游戏ID
15 15 Id int64 // ID
16 16 Awards map[string]string // 奖励配置
17   - AlbumConfig map[string]AlbumConfig // 卡组配置
  17 + AlbumConfig map[int]AlbumConfig // 卡组配置
18 18 CardConfig map[int]CardConfig // 卡牌配置
19 19 CardholderConfig map[string]OpenCardholderConfig // 卡包开卡规则
20 20 NormalCardStarConfig map[string]NormalCardStarConfig // k=ID_用户序列_用户分组 卡片星级配置
... ... @@ -42,8 +42,8 @@ type CardActivityConfigRaw struct {
42 42  
43 43 // AlbumConfig 卡组表
44 44 type AlbumConfig struct {
45   - SetId string `json:"set_id"` // 卡组名
46   - Name string `json:"name"` // 卡组图片
  45 + SetId int `json:"set_id"` // 卡组名
  46 + Name int `json:"name"` // 卡组图片
47 47 Icon string `json:"icon"` // 卡组id
48 48 Rewards map[string]string `json:"rewards"` // 集齐奖励 k=轮次
49 49 StartTime int64 `json:"start_time"` // 开始时间
... ... @@ -53,10 +53,10 @@ type AlbumConfig struct {
53 53 // CardConfig 卡牌表
54 54 type CardConfig struct {
55 55 Id int `json:"id"` // ID
56   - Name string `json:"name"` // 卡牌图片
  56 + Name int `json:"name"` // 卡牌图片
57 57 Icon string `json:"icon"` // 卡牌id
58   - Desc string `json:"desc"` // 卡牌描述
59   - SetId string `json:"album_setid"` // 卡组id
  58 + Desc int `json:"desc"` // 卡牌描述
  59 + SetId int `json:"album_setid"` // 卡组id
60 60 Star int `json:"star"` // 星级
61 61 IsGold int `json:"is_gold"` // 是否是金卡
62 62 IsSend int `json:"is_send"` // 卡片是否可赠送
... ...
service/cardholder/handle.go
... ... @@ -59,7 +59,7 @@ func HandleInfo(req *models.ReqCardHolderInfo) (code string, rsp models.RspCardH
59 59 func HandleOpen(req *models.ReqCardHolderOpen) (code string, rsp models.RspCardHolderOpen) {
60 60 rsp = models.RspCardHolderOpen{
61 61 NewCards: make([]int, 0),
62   - AwardAlbum: make(map[string]string),
  62 + AwardAlbum: make(map[int]string),
63 63 }
64 64 code = constd.RECODE_OK
65 65  
... ...
service/cardholder/logic.go
... ... @@ -124,7 +124,7 @@ func GetNewCard(gameData *dto.CardHolderData, conf *CardActivityConfig) int {
124 124 }
125 125  
126 126 // CheckAlbumFinish 判断卡组是否已集齐
127   -func CheckAlbumFinish(albumId string, gameData *dto.CardHolderData, config *CardActivityConfig) bool {
  127 +func CheckAlbumFinish(albumId int, gameData *dto.CardHolderData, config *CardActivityConfig) bool {
128 128 for _, conf := range config.CardConfig {
129 129 if conf.SetId == albumId {
130 130 count := gameData.Details.Cards[conf.Id]
... ... @@ -151,13 +151,13 @@ func CheckRoundFinish(gameData *dto.CardHolderData, config *CardActivityConfig)
151 151 func HandleNextRound(gameData *dto.CardHolderData) {
152 152 gameData.Details.Round += 1
153 153 gameData.Details.Cards = make(map[int]int)
154   - gameData.Details.Album = make(map[string]int)
  154 + gameData.Details.Album = make(map[int]int)
155 155 }
156 156  
157 157 func GetInfo(gameData *dto.CardHolderData, conf *CardActivityConfig) models.CardHolderInfo {
158 158 info := models.CardHolderInfo{
159 159 Cards: make(map[int]int),
160   - Album: make(map[string]int),
  160 + Album: make(map[int]int),
161 161 Round: 0,
162 162 }
163 163 for i, i2 := range gameData.Details.Cards {
... ...