Blame view

src/actions/AccountAction.go 1.44 KB
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
1
2
3
  package actions
  
  import (
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
4
  	"github.com/gin-gonic/gin"
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
5
  	"pro2d/conf"
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
6
  	"pro2d/protos/pb"
252ca9a0   zhangqijia   解释目录结构
7
  	"pro2d/src/components/net"
cad2b7f3   zhangqijia   reactor: 重构目录, 重构...
8
9
  	"pro2d/src/models"
  	"pro2d/src/utils"
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
10
11
  )
  
62d5d847   zhangqijia   http服务只用写actionSt...
12
  type AccountAction struct {
252ca9a0   zhangqijia   解释目录结构
13
  	HttpServer *net.HttpServer
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
14
15
  }
  
62d5d847   zhangqijia   http服务只用写actionSt...
16
  func (h *AccountAction) Register(c *gin.Context) (int, interface{}){
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
17
18
  	var register pb.Register
  	if err := c.ShouldBindJSON(&register); err != nil {
62d5d847   zhangqijia   http服务只用写actionSt...
19
  		return -1, err.Error()
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
20
21
22
23
  	}
  
  	account := models.NewAccount(register.Phone)
  	if err := account.Load(); err == nil {
62d5d847   zhangqijia   http服务只用写actionSt...
24
  		return -2 , "account exist: " + register.Phone
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
25
26
27
28
29
  	}
  
  	account.Uid = conf.SnowFlack.NextValStr()
  	account.Password = utils.Md5V(register.Password)
  	if _, err := account.Create(); err != nil{
62d5d847   zhangqijia   http服务只用写actionSt...
30
  		return -3, "account register err: " + err.Error()
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
31
32
  	}
  	account.Password = register.Password
62d5d847   zhangqijia   http服务只用写actionSt...
33
  	return 0, account.Account
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
34
35
  }
  
62d5d847   zhangqijia   http服务只用写actionSt...
36
  func (h *AccountAction) Login(c *gin.Context) (int,interface{}) {
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
37
38
  	var login pb.Account
  	if err := c.ShouldBindJSON(&login); err != nil {
62d5d847   zhangqijia   http服务只用写actionSt...
39
  		return -1, err.Error()
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
40
41
42
  	}
  	account := models.NewAccount(login.Phone)
  	if err := account.Load(); err != nil {
62d5d847   zhangqijia   http服务只用写actionSt...
43
  		return -2, err.Error()
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
44
45
46
  	}
  
  	if utils.Md5V(login.Password) != account.Password {
62d5d847   zhangqijia   http服务只用写actionSt...
47
  		return -3, "password error"
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
48
49
  	}
  
a0c46341   zhangqijia   fix: http login
50
  	var gs []*pb.ServiceInfo
252ca9a0   zhangqijia   解释目录结构
51
  	for k, v := range h.HttpServer.EtcdClient.GetByPrefix(conf.GlobalConf.GameConf.Name) {
a0c46341   zhangqijia   fix: http login
52
53
54
55
56
57
58
59
60
61
  		gs = append(gs, &pb.ServiceInfo{
  			Id:      k,
  			Name:    conf.GlobalConf.GameConf.Name,
  			Address: v,
  		})
  	}
  	rsp := &pb.LoginRsp{
  		Uid:         account.Uid,
  		GameService: gs,
  	}
62d5d847   zhangqijia   http服务只用写actionSt...
62
  	return 0, rsp
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
63
  }