101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
1
2
3
|
package common
import (
|
17fe96be
zhangqijia
feat: 增加装备相关数据和协议
|
4
|
"bytes"
|
f415f471
zhangqijia
fix: roleID自增加上限制...
|
5
|
"errors"
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
6
7
8
|
"fmt"
"github.com/garyburd/redigo/redis"
"pro2d/common/db/redisproxy"
|
17fe96be
zhangqijia
feat: 增加装备相关数据和协议
|
9
|
"strings"
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
10
11
12
|
)
func GetNextRoleId() (string, error) {
|
a24dea4c
zhangqijia
fix: id自增做了写更新。阵容...
|
13
|
relay, err := redisproxy.HGET(fmt.Sprintf(AutoIncrement, GlobalSconf.ID), "role")
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
14
15
16
|
if err != nil {
return "", err
}
|
f415f471
zhangqijia
fix: roleID自增加上限制...
|
17
18
19
20
21
22
23
24
25
|
ID, err := redis.Int64(relay, err)
if err != nil {
return "", err
}
//roleID的范围 [GlobalSconf.ID*MaxRoleNum, GlobalSconf.ID*MaxRoleNum + MaxRoleNum]
if ID-GlobalSconf.ID*MaxRoleNum >= MaxCommNum-1 {
return "", errors.New("DB_FULL")
}
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
26
|
|
a24dea4c
zhangqijia
fix: id自增做了写更新。阵容...
|
27
|
relay, err = redisproxy.HINCRBY(fmt.Sprintf(AutoIncrement, GlobalSconf.ID), "role", 1)
|
f415f471
zhangqijia
fix: roleID自增加上限制...
|
28
|
ID, err = redis.Int64(relay, err)
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
29
30
31
32
33
34
35
|
if err != nil {
return "", err
}
return fmt.Sprintf("%d", ID), nil
}
func GetNextUId() (string, error) {
|
a24dea4c
zhangqijia
fix: id自增做了写更新。阵容...
|
36
|
relay, err := redisproxy.HGET(fmt.Sprintf(AutoIncrement, GlobalSconf.ID), "uid")
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
37
38
39
40
41
42
43
|
if err != nil {
return "", err
}
var ID int64 = 0
if relay == nil {
ID = 90000
|
a24dea4c
zhangqijia
fix: id自增做了写更新。阵容...
|
44
|
redisproxy.HSET(fmt.Sprintf(AutoIncrement, GlobalSconf.ID), "uid", ID)
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
45
|
} else {
|
a24dea4c
zhangqijia
fix: id自增做了写更新。阵容...
|
46
|
relay, err = redisproxy.HINCRBY(fmt.Sprintf(AutoIncrement, GlobalSconf.ID), "uid", 1)
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
47
48
49
50
51
52
53
|
ID, err = redis.Int64(relay, err)
if err != nil {
return "", err
}
}
return fmt.Sprintf("%d", ID), nil
}
|
17fe96be
zhangqijia
feat: 增加装备相关数据和协议
|
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
type IMapString map[string]interface{}
func MapToString(params map[string]interface{}) string {
var items bytes.Buffer
for k, v := range params {
items.WriteString(k)
items.WriteString("=")
items.WriteString(fmt.Sprintf("%v", v))
items.WriteString(" ")
}
return items.String()
}
func StringToMap(items string) map[string]interface{} {
backPack := make(map[string]interface{})
for _, v := range strings.Split(items, " ") {
ii := strings.Split(v, "=")
if len(ii) < 2 {
continue
}
backPack[ii[0]] = ii[1]
}
return backPack
}
|