Commit d7abe2b27eabd31027cc10178d95e5fa7ce169e6
1 parent
b51ced48
Exists in
master
欢乐招财猫
Showing
4 changed files
with
82 additions
and
1 deletions
Show diff stats
src/HttpServer/logic/datadef.go
src/HttpServer/logic/httpserver.go
... | ... | @@ -2,8 +2,14 @@ package logic |
2 | 2 | |
3 | 3 | import ( |
4 | 4 | "HttpServer/conf" |
5 | + "HttpServer/jsonconf" | |
6 | + "HttpServer/redishandler" | |
5 | 7 | "common/logger" |
8 | + "common/redis" | |
9 | + "encoding/json" | |
10 | + "math/rand" | |
6 | 11 | "strconv" |
12 | + "time" | |
7 | 13 | |
8 | 14 | //"encoding/json" |
9 | 15 | "fmt" |
... | ... | @@ -12,6 +18,78 @@ import ( |
12 | 18 | "net/http" |
13 | 19 | ) |
14 | 20 | |
21 | +func StartHttpTicker() { | |
22 | + ticker := time.NewTicker(time.Second * time.Duration(30)) | |
23 | + | |
24 | + go func() { | |
25 | + for range ticker.C { | |
26 | + if time.Now().Hour() == 12 { | |
27 | + //处理开奖 | |
28 | + waits := GetWaitCaiCatList() | |
29 | + if waits != nil { | |
30 | + for k, val := range waits { | |
31 | + if val.FakeNum != 0 { | |
32 | + waits[k].RewardUser = 0 | |
33 | + waits[k].RewardNum = val.FakeNum | |
34 | + } else { | |
35 | + //否则从奖池里面选一个 | |
36 | + randnum := rand.Intn(len(val.List)) | |
37 | + waits[k].RewardNum = val.List[randnum].ChooseNum | |
38 | + waits[k].RewardUser = val.List[randnum].UserId | |
39 | + for _, vval := range val.List { | |
40 | + if vval.UserId == waits[k].RewardUser { | |
41 | + uinfo, err := GetUserInfo(strconv.Itoa(val.List[randnum].UserId)) | |
42 | + if err != nil || uinfo == nil { | |
43 | + continue | |
44 | + } | |
45 | + //给这个玩家发奖 | |
46 | + cfg := jsonconf.GetRedCatConfig(48) | |
47 | + if cfg != nil { | |
48 | + | |
49 | + uinfo.AddRedPackect(cfg.Money) | |
50 | + } | |
51 | + | |
52 | + var tmp UserCaiPiaoHistory | |
53 | + tmp.RewardNum = waits[k].RewardNum | |
54 | + tmp.CatId = 48 | |
55 | + tmp.Round = waits[k].CurRound | |
56 | + tmp.Cnum = vval.ChooseNum | |
57 | + uinfo.CaiPiaoInfo = append(uinfo.CaiPiaoInfo, tmp) | |
58 | + } | |
59 | + | |
60 | + } | |
61 | + | |
62 | + } | |
63 | + } | |
64 | + | |
65 | + //然后将开奖记录写入已开奖 | |
66 | + //将已开奖加入列表 | |
67 | + | |
68 | + for _, val := range waits { | |
69 | + var tmp AlreadyDuboCatList | |
70 | + tmp.CurRound = val.CurRound | |
71 | + tmp.RewardNum = val.RewardNum | |
72 | + tmp.List = append(tmp.List, val.List...) | |
73 | + tmp.RewardUser = val.RewardUser | |
74 | + tmp.TimeStr = int(time.Now().Unix()) | |
75 | + savestr, err := json.Marshal(&tmp) | |
76 | + if err == nil { | |
77 | + redishandler.GetRedisClient().HSet(redis.CAIPIAOKAIJIANGHISTORY_KEY, strconv.Itoa(tmp.CurRound), string(savestr)) | |
78 | + } | |
79 | + | |
80 | + } | |
81 | + | |
82 | + //最后清空待开奖类别 | |
83 | + redishandler.GetRedisClient().Delete(redis.CAIPIAOKAIJIANGWAIT_KEY) | |
84 | + | |
85 | + } | |
86 | + | |
87 | + } | |
88 | + | |
89 | + } | |
90 | + }() | |
91 | +} | |
92 | + | |
15 | 93 | func StartHttpServe() { |
16 | 94 | startServerHttpServe() |
17 | 95 | } | ... | ... |
src/HttpServer/logic/logic.go
... | ... | @@ -1429,6 +1429,7 @@ func HandlerAutoChoose(w http.ResponseWriter, data string, uuid int) { |
1429 | 1429 | waits.CurRound = curpool.CurRound |
1430 | 1430 | waits.RewardNum = 0 |
1431 | 1431 | waits.RewardUser = 0 |
1432 | + waits.FakeNum = curpool.FakeNum | |
1432 | 1433 | waits.List = append(waits.List, curpool.List...) |
1433 | 1434 | |
1434 | 1435 | savestr, _ := json.Marshal(&waits) |
... | ... | @@ -1539,6 +1540,7 @@ func HandlerChooseNum(w http.ResponseWriter, data string, uuid int) { |
1539 | 1540 | waits.CurRound = curpool.CurRound |
1540 | 1541 | waits.RewardNum = 0 |
1541 | 1542 | waits.RewardUser = 0 |
1543 | + waits.FakeNum = curpool.FakeNum | |
1542 | 1544 | waits.List = append(waits.List, curpool.List...) |
1543 | 1545 | |
1544 | 1546 | savestr, _ := json.Marshal(&waits) | ... | ... |
src/HttpServer/main/main.go