Commit ce00eaaf89c83ac07d638f3c49c63c1cfe59690d
1 parent
c297a7a5
Exists in
master
提交一波
Showing
7 changed files
with
83 additions
and
100 deletions
Show diff stats
src/HttpServer/jsonconf/SignConfig.json
| 1 | -{ | |
| 2 | - "rule": 0, | |
| 3 | - "round": 100, | |
| 4 | - "reward": { | |
| 5 | - "reward1": [ | |
| 6 | - { | |
| 7 | - "id": 1, | |
| 8 | - "num": 300 | |
| 9 | - }, | |
| 10 | - { | |
| 11 | - "id": 2, | |
| 12 | - "num": 300 | |
| 13 | - }, | |
| 14 | - { | |
| 15 | - "id": 3, | |
| 16 | - "num": 350 | |
| 17 | - }, | |
| 18 | - { | |
| 19 | - "id": 4, | |
| 20 | - "num": 350 | |
| 21 | - }, | |
| 22 | - { | |
| 23 | - "id": 5, | |
| 24 | - "num": 400 | |
| 25 | - }, | |
| 26 | - { | |
| 27 | - "id": 6, | |
| 28 | - "num": 400 | |
| 29 | - }, | |
| 30 | - { | |
| 31 | - "id": 7, | |
| 32 | - "num": 500 | |
| 33 | - } | |
| 34 | - ], | |
| 35 | - "reward2": [ | |
| 36 | - { | |
| 37 | - "id": 1, | |
| 38 | - "num": 10 | |
| 39 | - }, | |
| 40 | - { | |
| 41 | - "id": 2, | |
| 42 | - "num": 10 | |
| 43 | - }, | |
| 44 | - { | |
| 45 | - "id": 3, | |
| 46 | - "num": 10 | |
| 47 | - }, | |
| 48 | - { | |
| 49 | - "id": 4, | |
| 50 | - "num": 15 | |
| 51 | - }, | |
| 52 | - { | |
| 53 | - "id": 5, | |
| 54 | - "num": 15 | |
| 55 | - }, | |
| 56 | - { | |
| 57 | - "id": 6, | |
| 58 | - "num": 15 | |
| 59 | - }, | |
| 60 | - { | |
| 61 | - "id": 7, | |
| 62 | - "num": 20 | |
| 63 | - } | |
| 64 | - ] | |
| 1 | +[ | |
| 2 | + { | |
| 3 | + "id": 1, | |
| 4 | + "day": 1, | |
| 5 | + "reward": 1000 | |
| 6 | + }, | |
| 7 | + { | |
| 8 | + "id": 2, | |
| 9 | + "day": 2, | |
| 10 | + "reward": 5000 | |
| 11 | + }, | |
| 12 | + { | |
| 13 | + "id": 3, | |
| 14 | + "day": 3, | |
| 15 | + "reward": 1500 | |
| 16 | + }, | |
| 17 | + { | |
| 18 | + "id": 4, | |
| 19 | + "day": 4, | |
| 20 | + "reward": 2000 | |
| 21 | + }, | |
| 22 | + { | |
| 23 | + "id": 5, | |
| 24 | + "day": 5, | |
| 25 | + "reward": 2500 | |
| 26 | + }, | |
| 27 | + { | |
| 28 | + "id": 6, | |
| 29 | + "day": 6, | |
| 30 | + "reward": 3000 | |
| 31 | + }, | |
| 32 | + { | |
| 33 | + "id": 7, | |
| 34 | + "day": 7, | |
| 35 | + "reward": 10000 | |
| 65 | 36 | } |
| 66 | -} | |
| 67 | 37 | \ No newline at end of file |
| 38 | +] | |
| 68 | 39 | \ No newline at end of file | ... | ... |
src/HttpServer/jsonconf/jsonconf.go
| ... | ... | @@ -62,9 +62,9 @@ type SignReward struct { |
| 62 | 62 | } |
| 63 | 63 | |
| 64 | 64 | type SignConfigDesc struct { |
| 65 | - Rule int `json:"rule"` | |
| 66 | - Round int `json:"round"` | |
| 67 | - Reward SignReward `json:"reward"` | |
| 65 | + Id int `json:"id"` | |
| 66 | + Day int `json:"day"` | |
| 67 | + Reward int `json:"reward"` | |
| 68 | 68 | } |
| 69 | 69 | |
| 70 | 70 | type ActiveWithdrawConfigDesc struct { |
| ... | ... | @@ -89,7 +89,7 @@ type GameConfig struct { |
| 89 | 89 | MoneyBoxConfig []MoneyBoxLevelDesc |
| 90 | 90 | MoneyBoxTimeConfig []MoneyBoxTimesDesc |
| 91 | 91 | WithDrawConfig []WithDrawDesc |
| 92 | - SignConfig SignConfigDesc | |
| 92 | + SignConfig []SignConfigDesc | |
| 93 | 93 | ActiveWithdrawConfig []ActiveWithdrawConfigDesc |
| 94 | 94 | RedpacketConfig []RedpacketConfigDesc |
| 95 | 95 | } |
| ... | ... | @@ -98,25 +98,13 @@ func GetJsonConf() *GameConfig { |
| 98 | 98 | return g_jsonconf |
| 99 | 99 | } |
| 100 | 100 | |
| 101 | -func GetSignConfig(round, daynum int) *SignRewardDetail { | |
| 102 | - if round+1 > g_jsonconf.SignConfig.Round { | |
| 103 | - //取reward2 | |
| 104 | - if daynum > len(g_jsonconf.SignConfig.Reward.Reward2) { | |
| 105 | - logger.Error("GetSignConfig failed") | |
| 106 | - return nil | |
| 101 | +func GetsignConfig(id int) *SignConfigDesc { | |
| 102 | + for _, v := range g_jsonconf.SignConfig { | |
| 103 | + if v.Id == id { | |
| 104 | + return &v | |
| 107 | 105 | } |
| 108 | - | |
| 109 | - return &g_jsonconf.SignConfig.Reward.Reward2[daynum-1] | |
| 110 | - | |
| 111 | - } else { | |
| 112 | - //取reward1 | |
| 113 | - if daynum > len(g_jsonconf.SignConfig.Reward.Reward1) { | |
| 114 | - logger.Error("GetSignConfig failed") | |
| 115 | - return nil | |
| 116 | - } | |
| 117 | - | |
| 118 | - return &g_jsonconf.SignConfig.Reward.Reward1[daynum-1] | |
| 119 | 106 | } |
| 107 | + return nil | |
| 120 | 108 | } |
| 121 | 109 | |
| 122 | 110 | func GetRedpacketNum(id int) int { | ... | ... |
src/HttpServer/logic/constdef.go
src/HttpServer/logic/datadef.go
| ... | ... | @@ -24,6 +24,8 @@ type UserLoginData struct { |
| 24 | 24 | Sumloginday int `json:"sumloginday"` |
| 25 | 25 | Shakeleftcnt int `json:"shakeleftcnt"` |
| 26 | 26 | IsNew int `json:"isnew"` |
| 27 | + Issignshow int `json:"issignshow"` | |
| 28 | + Leftredbagnum int `json:"leftredbagnum"` | |
| 27 | 29 | } |
| 28 | 30 | |
| 29 | 31 | type UserLoginResp struct { |
| ... | ... | @@ -226,9 +228,8 @@ type GetnewlevelrewardResp struct { |
| 226 | 228 | } |
| 227 | 229 | |
| 228 | 230 | type QuerysigndataData struct { |
| 229 | - Signround int `json:"signround"` | |
| 230 | - Continuessign int `json:"continuessign"` | |
| 231 | - IssignToday int `json:"issignToday"` | |
| 231 | + Curday int `json:"curday"` | |
| 232 | + Issigntaday int `json:"issigntaday"` | |
| 232 | 233 | } |
| 233 | 234 | |
| 234 | 235 | type QueryReadGoldData struct { |
| ... | ... | @@ -266,6 +267,7 @@ type FetchredbagReq struct { |
| 266 | 267 | type FetchredbagData struct { |
| 267 | 268 | Getgoldnum int `json:"getgoldnum"` |
| 268 | 269 | Walletgold int `json:"walletgold"` |
| 270 | + Leftredbagnum int `json:"leftredbagnum"` | |
| 269 | 271 | } |
| 270 | 272 | type FetchredbagResp struct { |
| 271 | 273 | Code int `json:"code"` |
| ... | ... | @@ -342,7 +344,10 @@ type UsersignReq struct { |
| 342 | 344 | } |
| 343 | 345 | |
| 344 | 346 | type UsersignData struct { |
| 345 | - Goldnum int `json:"goldnum"` | |
| 347 | + Curday int `json:"curday"` | |
| 348 | + Issigntaday int `json:"issigntaday"` | |
| 349 | + Walletgold int `json:"walletgold"` | |
| 350 | + Getgold int `json:"getgold"` | |
| 346 | 351 | } |
| 347 | 352 | type UsersignResp struct { |
| 348 | 353 | Code int `json:"code"` |
| ... | ... | @@ -466,6 +471,7 @@ type UserData struct { |
| 466 | 471 | Hfen int64 //当日最高积分 用于计算排行榜 |
| 467 | 472 | Nickname string //逆臣 |
| 468 | 473 | HeadUrl string //头像 |
| 474 | + SignShow int //是否弹出签到 | |
| 469 | 475 | WithDraw WithDrawInfo //提现记录信息 |
| 470 | 476 | //SpecialWithDraw WithDrawInfo //活跃提现记录信息 |
| 471 | 477 | Task TaskInfo //玩家任务完成相关信息 | ... | ... |
src/HttpServer/logic/function.go
| ... | ... | @@ -715,6 +715,8 @@ func InitUserInfo(data *UserLoginReq, resp *UserLoginResp, uuid int, uniqueuid s |
| 715 | 715 | resp.Data.Sumloginday = initdata.SumLoginDay |
| 716 | 716 | resp.Data.Shakeleftcnt = initdata.ShakeTime |
| 717 | 717 | resp.Data.IsNew = initdata.IsNew |
| 718 | + resp.Data.Issignshow = initdata.SignShow | |
| 719 | + resp.Data.Leftredbagnum = DAILYFETCHREDBAGNUMLIMIT - initdata.FetchRdBagNum | |
| 718 | 720 | |
| 719 | 721 | err := SaveUserInfo(&initdata, uniqueuid) |
| 720 | 722 | logger.Info("InitUserInfoddddd uinfo=%+v", initdata) |
| ... | ... | @@ -913,6 +915,7 @@ func (u *UserData) HandlePassDay(uuid int, channel string) { |
| 913 | 915 | u.ShakeTime = SHAKELIMIT |
| 914 | 916 | u.FetchRdBagNum = 0 |
| 915 | 917 | u.Hfen = 0 |
| 918 | + u.SignShow = 1 | |
| 916 | 919 | |
| 917 | 920 | //任务也需要处理 |
| 918 | 921 | /*tasklist, err := GetTaskInfo(u.Userid, 1) |
| ... | ... | @@ -1006,6 +1009,8 @@ func GetUserData(uuid int, uniqueuid string, req *UserLoginReq, resp *UserLoginR |
| 1006 | 1009 | resp.Data.Sumloginday = data.SumLoginDay |
| 1007 | 1010 | resp.Data.Shakeleftcnt = data.ShakeTime |
| 1008 | 1011 | resp.Data.IsNew = data.IsNew |
| 1012 | + resp.Data.Issignshow = data.SignShow | |
| 1013 | + resp.Data.Leftredbagnum = DAILYFETCHREDBAGNUMLIMIT - data.FetchRdBagNum | |
| 1009 | 1014 | return nil |
| 1010 | 1015 | } |
| 1011 | 1016 | ... | ... |
src/HttpServer/logic/httpserver.go
| ... | ... | @@ -70,7 +70,7 @@ func startServerHttpServe() { |
| 70 | 70 | http.HandleFunc("/sixstar/gettaskreward", Gettaskreward) //领取任务或者成就奖励 |
| 71 | 71 | http.HandleFunc("/sixstar/getnewlevelreward", Getnewlevelreward) //领取任务或者成就奖励 |
| 72 | 72 | http.HandleFunc("/sixstar/querysigndata", Querysigndata) //获取签到数据 |
| 73 | - http.HandleFunc("/sixstar/usersign", Usersign) //玩家签到 | |
| 73 | + http.HandleFunc("/sixstar/dosign", Usersign) //玩家签到 | |
| 74 | 74 | http.HandleFunc("/sixstar/fetchredbag", Fetchredbag) //领取红包 |
| 75 | 75 | http.HandleFunc("/sixstar/savadata", Savadata) //保存数据 |
| 76 | 76 | http.HandleFunc("/sixstar/getdata", Getdata) //获取数据 | ... | ... |
src/HttpServer/logic/logic.go
| ... | ... | @@ -385,9 +385,8 @@ func HandlerQuerysigndata(w http.ResponseWriter, data string, uuid int) { |
| 385 | 385 | //此处要处理一下跨天逻辑 |
| 386 | 386 | uinfo.HandlePassDay(uuid, rdata.Channel) |
| 387 | 387 | |
| 388 | - resp.Data.Continuessign = uinfo.SignSum | |
| 389 | - resp.Data.IssignToday = uinfo.IsSignToday | |
| 390 | - resp.Data.Signround = uinfo.SignRound | |
| 388 | + resp.Data.Curday = uinfo.SignSum | |
| 389 | + resp.Data.Issigntaday = uinfo.IsSignToday | |
| 391 | 390 | |
| 392 | 391 | logger.Info("HandlerQuerysigndata resp=%v", resp) |
| 393 | 392 | |
| ... | ... | @@ -740,13 +739,21 @@ func HandlerFetchredbag(w http.ResponseWriter, data string, uuid int) { |
| 740 | 739 | break |
| 741 | 740 | } |
| 742 | 741 | |
| 742 | + if uinfo.FetchRdBagNum >= DAILYFETCHREDBAGNUMLIMIT { | |
| 743 | + resp.Message = "当日;领取红包次数已达上限" | |
| 744 | + resp.Code = ERROR_SRV_ERROR | |
| 745 | + break | |
| 746 | + } | |
| 747 | + | |
| 743 | 748 | readaddgold := uinfo.FetchRedPacket(rdata.Gameid, rdata.Channel, uuid) |
| 744 | 749 | |
| 750 | + uinfo.IsNew = 0 | |
| 751 | + uinfo.FetchRdBagNum++ | |
| 752 | + | |
| 745 | 753 | resp.Data.Walletgold = uinfo.RealGold |
| 746 | 754 | resp.Data.Getgoldnum = readaddgold |
| 755 | + resp.Data.Leftredbagnum = DAILYFETCHREDBAGNUMLIMIT - uinfo.FetchRdBagNum | |
| 747 | 756 | |
| 748 | - uinfo.IsNew = 0 | |
| 749 | - uinfo.FetchRdBagNum++ | |
| 750 | 757 | |
| 751 | 758 | //保存数据 |
| 752 | 759 | err = SaveUserInfo(uinfo, uniqueuuid) |
| ... | ... | @@ -802,7 +809,7 @@ func HandlerUsersign(w http.ResponseWriter, data string, uuid int) { |
| 802 | 809 | } |
| 803 | 810 | |
| 804 | 811 | //获取配置 |
| 805 | - cfg := jsonconf.GetSignConfig(uinfo.SignRound, uinfo.SignSum) | |
| 812 | + cfg := jsonconf.GetsignConfig(uinfo.SignRound) | |
| 806 | 813 | if cfg == nil { |
| 807 | 814 | uinfo.SignSum-- |
| 808 | 815 | logger.Error("GetSignConfig failed err=%v", err) |
| ... | ... | @@ -811,8 +818,8 @@ func HandlerUsersign(w http.ResponseWriter, data string, uuid int) { |
| 811 | 818 | break |
| 812 | 819 | } |
| 813 | 820 | |
| 814 | - //uinfo.RealGold = | |
| 815 | - goldnum, _, err := AddCoinToSdk(uuid, cfg.Num, rdata.Gameid, rdata.Channel, 107) | |
| 821 | + addnum := cfg.Reward / 100 | |
| 822 | + goldnum, _, err := AddCoinToSdk(uuid, addnum, rdata.Gameid, rdata.Channel, 107) | |
| 816 | 823 | if err != nil { |
| 817 | 824 | uinfo.SignSum-- |
| 818 | 825 | logger.Error("AddCoinToSdk failed err=%v", err) |
| ... | ... | @@ -821,11 +828,16 @@ func HandlerUsersign(w http.ResponseWriter, data string, uuid int) { |
| 821 | 828 | break |
| 822 | 829 | } |
| 823 | 830 | |
| 831 | + uinfo.SignShow = 0 | |
| 832 | + | |
| 824 | 833 | uinfo.IsSignToday = 1 |
| 825 | 834 | uinfo.RealGold = goldnum |
| 826 | 835 | //uinfo.RealGold += cfg.Num |
| 827 | 836 | |
| 828 | - resp.Data.Goldnum = uinfo.RealGold | |
| 837 | + resp.Data.Curday = uinfo.SignSum | |
| 838 | + resp.Data.Issigntaday = uinfo.IsSignToday | |
| 839 | + resp.Data.Walletgold = goldnum | |
| 840 | + resp.Data.Getgold = cfg.Reward | |
| 829 | 841 | |
| 830 | 842 | //保存数据 |
| 831 | 843 | err = SaveUserInfo(uinfo, uniqueuuid) | ... | ... |