Commit 92fe839fd3f0b7511d976b982f19a01d4bf70348

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

feat:领取卡组奖励,按照轮次来

controllers/ht-cardholder.go
@@ -57,3 +57,15 @@ func (c *HtCardHolderController) GetRewardAlbum() { @@ -57,3 +57,15 @@ func (c *HtCardHolderController) GetRewardAlbum() {
57 57
58 c.RetRspCodeData(code, rsp) 58 c.RetRspCodeData(code, rsp)
59 } 59 }
  60 +
  61 +// GetRewardRound 领取轮次奖励
  62 +func (c *HtCardHolderController) GetRewardRound() {
  63 + req := new(models.ReqHtCardHolderGetRewardRound)
  64 + if !c.GetPostData(req) {
  65 + return
  66 + }
  67 +
  68 + code, rsp := ht_cardholder.HandleGetRewardRound(req)
  69 +
  70 + c.RetRspCodeData(code, rsp)
  71 +}
dto/ht-cardholder.go
@@ -34,7 +34,7 @@ type HtCardHolderDataDetails struct { @@ -34,7 +34,7 @@ type HtCardHolderDataDetails struct {
34 Album map[string]int // 卡组奖励领取 k=卡组ID v=数量 34 Album map[string]int // 卡组奖励领取 k=卡组ID v=数量
35 StarSequenceScales map[string]int // 星级序列刻度 k=ID_用户序列_用户分组 v=刻度 35 StarSequenceScales map[string]int // 星级序列刻度 k=ID_用户序列_用户分组 v=刻度
36 CardSequenceScales map[string]int // 卡牌序列刻度 k=ID_用户序列_用户分组 v=刻度 36 CardSequenceScales map[string]int // 卡牌序列刻度 k=ID_用户序列_用户分组 v=刻度
37 - Round int // 卡册完成轮次 37 + Round int // 卡册当前轮次
38 } 38 }
39 39
40 func NewHtCardHolderData(uid int64) *HtCardHolderData { 40 func NewHtCardHolderData(uid int64) *HtCardHolderData {
@@ -51,7 +51,7 @@ func NewHtCardHolderDataDetails() *HtCardHolderDataDetails { @@ -51,7 +51,7 @@ func NewHtCardHolderDataDetails() *HtCardHolderDataDetails {
51 Album: make(map[string]int), 51 Album: make(map[string]int),
52 StarSequenceScales: make(map[string]int), 52 StarSequenceScales: make(map[string]int),
53 CardSequenceScales: make(map[string]int), 53 CardSequenceScales: make(map[string]int),
54 - Round: 0, 54 + Round: 1,
55 } 55 }
56 } 56 }
57 57
models/ht-cardholder.go
@@ -59,3 +59,15 @@ type RspHtCardHolderGetRewardAlbum struct { @@ -59,3 +59,15 @@ type RspHtCardHolderGetRewardAlbum struct {
59 HtCardHolderInfo 59 HtCardHolderInfo
60 Award string `form:"award" json:"award"` // 奖励字符串 60 Award string `form:"award" json:"award"` // 奖励字符串
61 } 61 }
  62 +
  63 +// ReqHtCardHolderGetRewardRound 请求 领取轮次奖励
  64 +type ReqHtCardHolderGetRewardRound struct {
  65 + BaseSign
  66 + BaseLoginInfo
  67 +}
  68 +
  69 +// RspHtCardHolderGetRewardRound 返回 领取轮次奖励
  70 +type RspHtCardHolderGetRewardRound struct {
  71 + HtCardHolderInfo
  72 + Award string `form:"award" json:"award"` // 奖励字符串
  73 +}
routers/router.go
@@ -19,6 +19,8 @@ func init() { @@ -19,6 +19,8 @@ func init() {
19 beego.Router(prefix+"/ht/cardholder/open", &controllers.HtCardHolderController{}, "post:Open") 19 beego.Router(prefix+"/ht/cardholder/open", &controllers.HtCardHolderController{}, "post:Open")
20 // 领取卡组奖励 20 // 领取卡组奖励
21 beego.Router(prefix+"/ht/cardholder/getrewardalbum", &controllers.HtCardHolderController{}, "post:GetRewardAlbum") 21 beego.Router(prefix+"/ht/cardholder/getrewardalbum", &controllers.HtCardHolderController{}, "post:GetRewardAlbum")
  22 + // 领取轮次奖励
  23 + beego.Router(prefix+"/ht/cardholder/getrewardround", &controllers.HtCardHolderController{}, "post:GetRewardRound")
22 24
23 beego.ErrorController(&controllers.ErrorController{}) 25 beego.ErrorController(&controllers.ErrorController{})
24 } 26 }
service/ht-cardholder/config.go
@@ -46,10 +46,10 @@ type CardActivityConfigRaw struct { @@ -46,10 +46,10 @@ type CardActivityConfigRaw struct {
46 46
47 // AlbumConfig 卡组表 47 // AlbumConfig 卡组表
48 type AlbumConfig struct { 48 type AlbumConfig struct {
49 - SetId string `json:"set_id"` // 卡组id  
50 - Rewards string `json:"rewards"` // 集齐奖励  
51 - StartTime int64 `json:"start_time"` // 开始时间  
52 - EndTime int64 `json:"end_time"` // 结束时间 49 + SetId string `json:"set_id"` // 卡组id
  50 + Rewards map[string]string `json:"rewards"` // 集齐奖励 k=轮次
  51 + StartTime int64 `json:"start_time"` // 开始时间
  52 + EndTime int64 `json:"end_time"` // 结束时间
53 } 53 }
54 54
55 // CardConfig 卡牌表 55 // CardConfig 卡牌表
service/ht-cardholder/handle.go
@@ -203,11 +203,66 @@ func HandleGetRewardAlbum(req *models.ReqHtCardHolderGetRewardAlbum) (code strin @@ -203,11 +203,66 @@ func HandleGetRewardAlbum(req *models.ReqHtCardHolderGetRewardAlbum) (code strin
203 gameData.Details.Album[albumId] += 1 203 gameData.Details.Album[albumId] += 1
204 SaveData(gameData) 204 SaveData(gameData)
205 205
  206 + // 当前轮次
  207 + round := gameData.Details.Round
206 // 返回奖励 208 // 返回奖励
207 - rsp.Award = confAlbum.Rewards 209 + rsp.Award = confAlbum.Rewards[uttype.IntToString(round)]
208 210
209 // 返回信息 211 // 返回信息
210 rsp.HtCardHolderInfo = gameData.GetInfo() 212 rsp.HtCardHolderInfo = gameData.GetInfo()
211 213
212 return 214 return
213 } 215 }
  216 +
  217 +// HandleGetRewardRound 领取轮次奖励
  218 +func HandleGetRewardRound(req *models.ReqHtCardHolderGetRewardRound) (code string, rsp models.RspHtCardHolderGetRewardRound) {
  219 + rsp = models.RspHtCardHolderGetRewardRound{}
  220 + code = constd.RECODE_OK
  221 +
  222 + //// 尝试更新配置
  223 + //TryUpdateConfigs()
  224 + //
  225 + //// 检查活动状态
  226 + //code = CheckStatus()
  227 + //if code != constd.RECODE_OK {
  228 + // return
  229 + //}
  230 + //// 检查卡组ID
  231 + //albumId := strconv.Itoa(req.Id)
  232 + //confAlbum, okAlbum := Config.AlbumConfig[albumId]
  233 + //if !okAlbum {
  234 + // code = constd.RECODE_MERGE_CARDHOLDER_ALBUMID_ERROR
  235 + // return
  236 + //}
  237 + //
  238 + //// 读取游戏数据
  239 + //gameData := LoadData(req.UID)
  240 + //
  241 + //// 是否已领过
  242 + //countGot := gameData.Details.Album[albumId]
  243 + //if countGot > 0 {
  244 + // code = constd.RECODE_MERGE_CARDHOLDER_ALBUM_HASGOT_ERROR
  245 + // return
  246 + //}
  247 + //// 检查卡组内卡是否集齐
  248 + //for _, config := range Config.CardConfig {
  249 + // if config.SetId == albumId {
  250 + // count := gameData.Details.Cards[config.Id]
  251 + // if count < 1 {
  252 + // code = constd.RECODE_MERGE_CARDHOLDER_ALBUM_NOTFINISH_ERROR
  253 + // return
  254 + // }
  255 + // }
  256 + //}
  257 + //
  258 + //gameData.Details.Album[albumId] += 1
  259 + //SaveData(gameData)
  260 + //
  261 + //// 返回奖励
  262 + //rsp.Award = confAlbum.Rewards
  263 + //
  264 + //// 返回信息
  265 + //rsp.HtCardHolderInfo = gameData.GetInfo()
  266 +
  267 + return
  268 +}