Commit aadc462ccafd40c45fd1a941d9ff9268e7f40aba

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

feat✨:卡包信息增加开启和关闭时间

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 +}