Commit aadc462ccafd40c45fd1a941d9ff9268e7f40aba
1 parent
1aa8b7b3
Exists in
master
and in
1 other branch
feat✨:卡包信息增加开启和关闭时间
Showing
4 changed files
with
38 additions
and
27 deletions
Show diff stats
dto/cardholder.go
| 1 | package dto | 1 | package dto |
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | - "apigame/models" | ||
| 5 | "apigame/service/constd" | 4 | "apigame/service/constd" |
| 6 | "apigame/util/util-lx/lxalilog" | 5 | "apigame/util/util-lx/lxalilog" |
| 7 | "apigame/util/util-lx/lxtime" | 6 | "apigame/util/util-lx/lxtime" |
| @@ -105,24 +104,3 @@ func (d *CardHolderData) Decode() { | @@ -105,24 +104,3 @@ func (d *CardHolderData) Decode() { | ||
| 105 | return | 104 | return |
| 106 | } | 105 | } |
| 107 | } | 106 | } |
| 108 | - | ||
| 109 | -// GetInfo 封装成返回数据 | ||
| 110 | -func (d *CardHolderData) GetInfo() models.CardHolderInfo { | ||
| 111 | - info := models.CardHolderInfo{ | ||
| 112 | - Cardholder: make(map[int]int), | ||
| 113 | - Cards: make(map[int]int), | ||
| 114 | - Album: make(map[string]int), | ||
| 115 | - Round: 0, | ||
| 116 | - } | ||
| 117 | - for i, i2 := range d.Details.Cardholder { | ||
| 118 | - info.Cardholder[i] = i2 | ||
| 119 | - } | ||
| 120 | - for i, i2 := range d.Details.Cards { | ||
| 121 | - info.Cards[i] = i2 | ||
| 122 | - } | ||
| 123 | - for i, i2 := range d.Details.Album { | ||
| 124 | - info.Album[i] = i2 | ||
| 125 | - } | ||
| 126 | - info.Round = d.Details.Round | ||
| 127 | - return info | ||
| 128 | -} |
models/cardholder.go
| @@ -8,6 +8,8 @@ type CardHolderInfo struct { | @@ -8,6 +8,8 @@ type CardHolderInfo struct { | ||
| 8 | Cards map[int]int `form:"cards" json:"cards"` // 每张卡集了多少张 k=卡牌ID v=数量 | 8 | Cards map[int]int `form:"cards" json:"cards"` // 每张卡集了多少张 k=卡牌ID v=数量 |
| 9 | Album map[string]int `form:"album" json:"album"` // 卡组奖励领取 k=卡组ID v=数量 | 9 | Album map[string]int `form:"album" json:"album"` // 卡组奖励领取 k=卡组ID v=数量 |
| 10 | Round int `form:"round" json:"round"` // 卡册当前轮次 | 10 | Round int `form:"round" json:"round"` // 卡册当前轮次 |
| 11 | + StartTime int64 `form:"start_time" json:"start_time"` // 活动开始时间 | ||
| 12 | + EndTime int64 `form:"end_time" json:"end_time"` // 活动结束时间 | ||
| 11 | } | 13 | } |
| 12 | 14 | ||
| 13 | // ReqCardHolderInfo 请求 卡包信息 | 15 | // ReqCardHolderInfo 请求 卡包信息 |
service/cardholder/handle.go
| @@ -4,6 +4,7 @@ import ( | @@ -4,6 +4,7 @@ import ( | ||
| 4 | "apigame/dto" | 4 | "apigame/dto" |
| 5 | "apigame/models" | 5 | "apigame/models" |
| 6 | "apigame/service/constd" | 6 | "apigame/service/constd" |
| 7 | + "apigame/util/util-lx/lxtime" | ||
| 7 | "apigame/util/utjson" | 8 | "apigame/util/utjson" |
| 8 | "apigame/util/uttype" | 9 | "apigame/util/uttype" |
| 9 | "strconv" | 10 | "strconv" |
| @@ -21,10 +22,17 @@ func HandleInfo(req *models.ReqCardHolderInfo) (code string, rsp models.RspCardH | @@ -21,10 +22,17 @@ func HandleInfo(req *models.ReqCardHolderInfo) (code string, rsp models.RspCardH | ||
| 21 | return | 22 | return |
| 22 | } | 23 | } |
| 23 | 24 | ||
| 25 | + // 判断预告时间 | ||
| 26 | + sec := lxtime.NowUninx() | ||
| 27 | + if sec < config.Raw.StartTime { | ||
| 28 | + code = constd.RECODE_MERGE_CARDHOLDER_NOTOPEN_ERROR | ||
| 29 | + return | ||
| 30 | + } | ||
| 31 | + | ||
| 24 | // 读取游戏数据 | 32 | // 读取游戏数据 |
| 25 | gameData := LoadData(req.GameID, req.UID, config.Id) | 33 | gameData := LoadData(req.GameID, req.UID, config.Id) |
| 26 | 34 | ||
| 27 | - rsp.CardHolderInfo = gameData.GetInfo() | 35 | + rsp.CardHolderInfo = GetInfo(gameData, config) |
| 28 | 36 | ||
| 29 | return | 37 | return |
| 30 | } | 38 | } |
| @@ -70,7 +78,7 @@ func HandleGetNew(req *models.ReqCardHolderGetNew) (code string, rsp models.RspC | @@ -70,7 +78,7 @@ func HandleGetNew(req *models.ReqCardHolderGetNew) (code string, rsp models.RspC | ||
| 70 | SaveData(req.GameID, gameData) | 78 | SaveData(req.GameID, gameData) |
| 71 | 79 | ||
| 72 | // 返回信息 | 80 | // 返回信息 |
| 73 | - rsp.CardHolderInfo = gameData.GetInfo() | 81 | + rsp.CardHolderInfo = GetInfo(gameData, config) |
| 74 | 82 | ||
| 75 | sequenceId, cohort := GetUserSequenceIdAndCohort(req.UID) | 83 | sequenceId, cohort := GetUserSequenceIdAndCohort(req.UID) |
| 76 | // 记录日志 | 84 | // 记录日志 |
| @@ -189,7 +197,7 @@ func HandleOpen(req *models.ReqCardHolderOpen) (code string, rsp models.RspCardH | @@ -189,7 +197,7 @@ func HandleOpen(req *models.ReqCardHolderOpen) (code string, rsp models.RspCardH | ||
| 189 | //logs.Debug("wjwdbg 获取卡牌列表打乱:", rsp.NewCards) | 197 | //logs.Debug("wjwdbg 获取卡牌列表打乱:", rsp.NewCards) |
| 190 | 198 | ||
| 191 | // 返回信息 | 199 | // 返回信息 |
| 192 | - rsp.CardHolderInfo = gameData.GetInfo() | 200 | + rsp.CardHolderInfo = GetInfo(gameData, config) |
| 193 | 201 | ||
| 194 | return | 202 | return |
| 195 | } | 203 | } |
| @@ -253,7 +261,7 @@ func HandleGetRewardAlbum(req *models.ReqCardHolderGetRewardAlbum) (code string, | @@ -253,7 +261,7 @@ func HandleGetRewardAlbum(req *models.ReqCardHolderGetRewardAlbum) (code string, | ||
| 253 | rsp.Award = confAlbum.Rewards[uttype.IntToString(round)] | 261 | rsp.Award = confAlbum.Rewards[uttype.IntToString(round)] |
| 254 | 262 | ||
| 255 | // 返回信息 | 263 | // 返回信息 |
| 256 | - rsp.CardHolderInfo = gameData.GetInfo() | 264 | + rsp.CardHolderInfo = GetInfo(gameData, config) |
| 257 | 265 | ||
| 258 | sequenceId, cohort := GetUserSequenceIdAndCohort(req.UID) | 266 | sequenceId, cohort := GetUserSequenceIdAndCohort(req.UID) |
| 259 | // 记录日志 | 267 | // 记录日志 |
| @@ -316,7 +324,7 @@ func HandleGetRewardRound(req *models.ReqCardHolderGetRewardRound) (code string, | @@ -316,7 +324,7 @@ func HandleGetRewardRound(req *models.ReqCardHolderGetRewardRound) (code string, | ||
| 316 | SaveData(req.GameID, gameData) | 324 | SaveData(req.GameID, gameData) |
| 317 | 325 | ||
| 318 | // 返回信息 | 326 | // 返回信息 |
| 319 | - rsp.CardHolderInfo = gameData.GetInfo() | 327 | + rsp.CardHolderInfo = GetInfo(gameData, config) |
| 320 | 328 | ||
| 321 | return | 329 | return |
| 322 | } | 330 | } |
service/cardholder/logic.go
| @@ -2,6 +2,7 @@ package cardholder | @@ -2,6 +2,7 @@ package cardholder | ||
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | "apigame/dto" | 4 | "apigame/dto" |
| 5 | + "apigame/models" | ||
| 5 | "apigame/service/constd" | 6 | "apigame/service/constd" |
| 6 | "apigame/util/util-lx/lxalilog" | 7 | "apigame/util/util-lx/lxalilog" |
| 7 | "apigame/util/util-lx/lxtime" | 8 | "apigame/util/util-lx/lxtime" |
| @@ -125,3 +126,25 @@ func HandleNextRound(gameData *dto.CardHolderData) { | @@ -125,3 +126,25 @@ func HandleNextRound(gameData *dto.CardHolderData) { | ||
| 125 | gameData.Details.Cards = make(map[int]int) | 126 | gameData.Details.Cards = make(map[int]int) |
| 126 | gameData.Details.Album = make(map[string]int) | 127 | gameData.Details.Album = make(map[string]int) |
| 127 | } | 128 | } |
| 129 | + | ||
| 130 | +func GetInfo(gameData *dto.CardHolderData, conf *CardActivityConfig) models.CardHolderInfo { | ||
| 131 | + info := models.CardHolderInfo{ | ||
| 132 | + Cardholder: make(map[int]int), | ||
| 133 | + Cards: make(map[int]int), | ||
| 134 | + Album: make(map[string]int), | ||
| 135 | + Round: 0, | ||
| 136 | + } | ||
| 137 | + for i, i2 := range gameData.Details.Cardholder { | ||
| 138 | + info.Cardholder[i] = i2 | ||
| 139 | + } | ||
| 140 | + for i, i2 := range gameData.Details.Cards { | ||
| 141 | + info.Cards[i] = i2 | ||
| 142 | + } | ||
| 143 | + for i, i2 := range gameData.Details.Album { | ||
| 144 | + info.Album[i] = i2 | ||
| 145 | + } | ||
| 146 | + info.Round = gameData.Details.Round | ||
| 147 | + info.StartTime = conf.Raw.StartTime | ||
| 148 | + info.EndTime = conf.Raw.EndTime | ||
| 149 | + return info | ||
| 150 | +} |