Blame view

models/role.go 950 Bytes
ee23102d   zhangqijia   支持mongo, grpc接服务器
1
2
3
  package models
  
  import (
eb417b0b   zhangqijia   reactor mongo
4
  	"fmt"
ee23102d   zhangqijia   支持mongo, grpc接服务器
5
  	"pro2d/components/db"
ee23102d   zhangqijia   支持mongo, grpc接服务器
6
  	"pro2d/protos/pb"
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
7
  	"pro2d/utils"
1584eb4b   zhangqijia   修复创建唯一索引的bug
8
  	"strconv"
ee23102d   zhangqijia   支持mongo, grpc接服务器
9
10
11
  )
  
  type RoleModel struct {
eb417b0b   zhangqijia   reactor mongo
12
13
14
  	*db.MgoColl
  	Role *pb.Role
  	Heros HeroMap
1584eb4b   zhangqijia   修复创建唯一索引的bug
15
  	Teams *TeamModel
eb417b0b   zhangqijia   reactor mongo
16
17
  	Equip *pb.Equipment
  	Prop *pb.Prop
ee23102d   zhangqijia   支持mongo, grpc接服务器
18
19
  }
  
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
20
  func RoleExistByUid(uid string) *RoleModel{
1584eb4b   zhangqijia   修复创建唯一索引的bug
21
22
23
  	data := &pb.Role{Uid: uid}
  
  	if err := db.FindOne(db.GetBsonM("uid", uid), data); err != nil {
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
24
25
  		utils.Sugar.Errorf("Role exist err: %v", err)
  		return nil
ee23102d   zhangqijia   支持mongo, grpc接服务器
26
  	}
f7f4beb5   zhangqijia   新增grpc平滑关闭,修复crea...
27
  
9644352a   zhangqijia   登录服改为http,游戏服改为长连...
28
  	return &RoleModel{
f7f4beb5   zhangqijia   新增grpc平滑关闭,修复crea...
29
30
31
  		MgoColl: db.NewMongoColl(strconv.Itoa(int(data.Id)), data),
  		Role: data,
  	}
ee23102d   zhangqijia   支持mongo, grpc接服务器
32
33
  }
  
1584eb4b   zhangqijia   修复创建唯一索引的bug
34
35
  func NewRole(id int64) *RoleModel {
  	data := &pb.Role{Id: id}
ee23102d   zhangqijia   支持mongo, grpc接服务器
36
  	m := &RoleModel{
1584eb4b   zhangqijia   修复创建唯一索引的bug
37
38
  		MgoColl: db.NewMongoColl(strconv.Itoa(int(id)), data),
  		Role: data,
eb417b0b   zhangqijia   reactor mongo
39
  		Heros: make(HeroMap),
ee23102d   zhangqijia   支持mongo, grpc接服务器
40
  	}
ee23102d   zhangqijia   支持mongo, grpc接服务器
41
42
43
44
45
  	return m
  }
  
  func (m *RoleModel) LoadAll()  {
  }
eb417b0b   zhangqijia   reactor mongo
46
47
48
49
50
  
  func (m *RoleModel) LoadHero()  {
  }
  
  func (m *RoleModel) AddHero(hero *pb.Hero) {
3592dfd3   zhangqijia   重构models, 索引唯一索引
51
52
  	h := NewHero(hero.Id)
  	h.Hero = hero
eb417b0b   zhangqijia   reactor mongo
53
54
55
  	h.Create()
  	m.Heros[fmt.Sprintf("%d%d", m.Role.Id, h.Hero.Id)] = h
  }