Commit d728847de9e54f76d615f1eecddf7f802572ddc6

Authored by 陆恒
1 parent db39a0aa
Exists in master

提交

src/HttpServer/logic/datadef.go
@@ -724,17 +724,22 @@ type adRateData struct { @@ -724,17 +724,22 @@ type adRateData struct {
724 EndTime int `json:"endTime"` 724 EndTime int `json:"endTime"`
725 } 725 }
726 726
  727 +type LimitListDesc struct {
  728 + Cat int `json:"cat"`
  729 + Money float32 `json:"money"`
  730 +}
  731 +
727 type GetMainPageInfoData struct { 732 type GetMainPageInfoData struct {
728 - LimitCatList []int `json:"limitCatList"`  
729 - CatList []CatPosInfo `json:"catList"`  
730 - Coin DoBuyCatCoin `json:"coin"`  
731 - AdRate adRateData `json:"adRate"`  
732 - Level int `json:"level"`  
733 - TotalCashReward float32 `json:"totalCashReward"`  
734 - Guide bool `json:"guide"`  
735 - Redbagnum int `json:"redbagnum"`  
736 - Flyboxnum int `json:"flyboxnum"`  
737 - Leftredbagnum int `json:"leftredbagnum"` 733 + LimitCatList []LimitListDesc `json:"limitCatList"`
  734 + CatList []CatPosInfo `json:"catList"`
  735 + Coin DoBuyCatCoin `json:"coin"`
  736 + AdRate adRateData `json:"adRate"`
  737 + Level int `json:"level"`
  738 + TotalCashReward float32 `json:"totalCashReward"`
  739 + Guide bool `json:"guide"`
  740 + Redbagnum int `json:"redbagnum"`
  741 + Flyboxnum int `json:"flyboxnum"`
  742 + Leftredbagnum int `json:"leftredbagnum"`
738 } 743 }
739 744
740 type GetMainPageInfoResp struct { 745 type GetMainPageInfoResp struct {
src/HttpServer/logic/function.go
@@ -1019,11 +1019,24 @@ func (u *UserData) CalcHigestCatName() string { @@ -1019,11 +1019,24 @@ func (u *UserData) CalcHigestCatName() string {
1019 } 1019 }
1020 1020
1021 //获取红包猫列表 1021 //获取红包猫列表
1022 -func (u *UserData) GetRedCatIdList() []int {  
1023 - var rtsl []int 1022 +func (u *UserData) GetRedCatIdList() []LimitListDesc {
  1023 + var rtsl []LimitListDesc
  1024 + nowtime := int(time.Now().Unix())
1024 for _, val := range u.PosInfo { 1025 for _, val := range u.PosInfo {
1025 - if val.Cat > 100 {  
1026 - rtsl = append(rtsl, val.Cat-100) 1026 + if val.Cat > REDCATIDEXTRA && val.Cat < BOXGIFTEXTRA {
  1027 + //是红包猫并且是有时间的并且时间到了
  1028 + if val.RedPacket != 0 {
  1029 +
  1030 + if nowtime > val.StartTime+val.Time {
  1031 + var tmp LimitListDesc
  1032 + tmp.Cat = val.Cat
  1033 + tmp.Money = val.RedPacket
  1034 + rtsl = append(rtsl, tmp)
  1035 + //需要删除
  1036 + u.CleadPos(val.Position)
  1037 + }
  1038 + }
  1039 +
1027 } 1040 }
1028 } 1041 }
1029 1042
@@ -1039,16 +1052,27 @@ func (u *UserData) GetRedCatIdList() []int { @@ -1039,16 +1052,27 @@ func (u *UserData) GetRedCatIdList() []int {
1039 return rtsl 1052 return rtsl
1040 } 1053 }
1041 for _, val := range wdata.Info { 1054 for _, val := range wdata.Info {
1042 - rtsl = append(rtsl, val.Warelv) 1055 + if val.RedPacket != 0 {
  1056 + if nowtime > val.StartTime+val.Time {
  1057 + var tmp LimitListDesc
  1058 + tmp.Cat = val.Warelv
  1059 + tmp.Money = val.RedPacket
  1060 + rtsl = append(rtsl, tmp)
  1061 + }
  1062 + }
  1063 +
1043 } 1064 }
1044 1065
1045 - if len(rtsl) > 16 {  
1046 - sort.Ints(rtsl)  
1047 - return rtsl[:len(rtsl)-16]  
1048 - } else {  
1049 - return rtsl 1066 + //需要删除掉已经到期的猫
  1067 + for i := 0; i < len(wdata.Info); i++ {
  1068 + if nowtime > wdata.Info[i].StartTime+wdata.Info[i].Time {
  1069 + wdata.Info = append(wdata.Info[:i], wdata.Info[i+1:]...)
  1070 + i--
  1071 + }
1050 } 1072 }
1051 1073
  1074 + return rtsl
  1075 +
1052 } 1076 }
1053 1077
1054 //尝试将合成界面的猫放入仓库 返回位置索引 -1表示仓库已满放入失败 1078 //尝试将合成界面的猫放入仓库 返回位置索引 -1表示仓库已满放入失败
src/HttpServer/logic/logic.go
@@ -1387,6 +1387,7 @@ func HandlerGetMainPageInfo(w http.ResponseWriter, data string, uuid int) { @@ -1387,6 +1387,7 @@ func HandlerGetMainPageInfo(w http.ResponseWriter, data string, uuid int) {
1387 1387
1388 redlist := uinfo.GetRedCatIdList() 1388 redlist := uinfo.GetRedCatIdList()
1389 resp.Data.LimitCatList = append(resp.Data.LimitCatList, redlist...) 1389 resp.Data.LimitCatList = append(resp.Data.LimitCatList, redlist...)
  1390 + uinfo.CalcGoldRate()
1390 1391
1391 resp.Data.CatList = append(resp.Data.CatList, uinfo.PosInfo...) 1392 resp.Data.CatList = append(resp.Data.CatList, uinfo.PosInfo...)
1392 resp.Data.Coin.UserId = uuid 1393 resp.Data.Coin.UserId = uuid
@@ -1734,7 +1735,7 @@ func HandlerRecvRedCat(w http.ResponseWriter, data string, uuid int) { @@ -1734,7 +1735,7 @@ func HandlerRecvRedCat(w http.ResponseWriter, data string, uuid int) {
1734 } 1735 }
1735 1736
1736 //先判断位置 1737 //先判断位置
1737 - cpos := uinfo.GetCatPos(rdata.RedCatId) 1738 + /*cpos := uinfo.GetCatPos(rdata.RedCatId)
1738 if cpos == -1 { 1739 if cpos == -1 {
1739 logger.Error("HandlerRecvRedCat nothave cat failed=%v", rdata.RedCatId) 1740 logger.Error("HandlerRecvRedCat nothave cat failed=%v", rdata.RedCatId)
1740 resp.Code = 1 1741 resp.Code = 1
@@ -1754,15 +1755,22 @@ func HandlerRecvRedCat(w http.ResponseWriter, data string, uuid int) { @@ -1754,15 +1755,22 @@ func HandlerRecvRedCat(w http.ResponseWriter, data string, uuid int) {
1754 break 1755 break
1755 } 1756 }
1756 } 1757 }
1757 - 1758 + */
1758 //领取红包 1759 //领取红包
1759 - addredpack := v.RedPacket 1760 + cfg := jsonconf.GetRedCatConfig(rdata.RedCatId)
  1761 + if cfg == nil {
  1762 + logger.Error("GetRedCatConfig failede")
  1763 + resp.Code = 1
  1764 + resp.Message = "获取配置失败"
  1765 + break
  1766 + }
  1767 + addredpack := cfg.Money
1760 if rdata.Rtype == 1 { 1768 if rdata.Rtype == 1 {
1761 addredpack = addredpack * 2 1769 addredpack = addredpack * 2
1762 } 1770 }
1763 1771
1764 uinfo.AddRedPackect(addredpack, 100) 1772 uinfo.AddRedPackect(addredpack, 100)
1765 - uinfo.CleadPos(cpos) 1773 + //uinfo.CleadPos(cpos)
1766 1774
1767 uinfo.CalcGoldRate() 1775 uinfo.CalcGoldRate()
1768 //uinfo.TodayZhaocai += addredpack 1776 //uinfo.TodayZhaocai += addredpack