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"
|
1584eb4b
zhangqijia
修复创建唯一索引的bug
|
7
|
"strconv"
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
8
9
10
|
)
type RoleModel struct {
|
eb417b0b
zhangqijia
reactor mongo
|
11
12
13
|
*db.MgoColl
Role *pb.Role
Heros HeroMap
|
1584eb4b
zhangqijia
修复创建唯一索引的bug
|
14
|
Teams *TeamModel
|
eb417b0b
zhangqijia
reactor mongo
|
15
16
|
Equip *pb.Equipment
Prop *pb.Prop
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
17
18
|
}
|
1584eb4b
zhangqijia
修复创建唯一索引的bug
|
19
20
21
22
23
|
func RoleExistByUid(uid string) (bool, *RoleModel){
data := &pb.Role{Uid: uid}
if err := db.FindOne(db.GetBsonM("uid", uid), data); err != nil {
return false, nil
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
24
|
}
|
1584eb4b
zhangqijia
修复创建唯一索引的bug
|
25
26
|
m := NewRole(data.Id)
m.Load()
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
27
28
29
|
return true, m
}
|
1584eb4b
zhangqijia
修复创建唯一索引的bug
|
30
31
|
func NewRole(id int64) *RoleModel {
data := &pb.Role{Id: id}
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
32
|
m := &RoleModel{
|
1584eb4b
zhangqijia
修复创建唯一索引的bug
|
33
34
|
MgoColl: db.NewMongoColl(strconv.Itoa(int(id)), data),
Role: data,
|
eb417b0b
zhangqijia
reactor mongo
|
35
|
Heros: make(HeroMap),
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
36
|
}
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
37
38
39
40
41
|
return m
}
func (m *RoleModel) LoadAll() {
}
|
eb417b0b
zhangqijia
reactor mongo
|
42
43
44
45
46
|
func (m *RoleModel) LoadHero() {
}
func (m *RoleModel) AddHero(hero *pb.Hero) {
|
3592dfd3
zhangqijia
重构models, 索引唯一索引
|
47
48
|
h := NewHero(hero.Id)
h.Hero = hero
|
eb417b0b
zhangqijia
reactor mongo
|
49
50
51
|
h.Create()
m.Heros[fmt.Sprintf("%d%d", m.Role.Id, h.Hero.Id)] = h
}
|