team.go 677 Bytes
package models

import (
	"pro2d/common/components"
	"pro2d/common/db/mongoproxy"
	"pro2d/common/logger"
	"pro2d/pb"
)

type TeamMap map[string]*TeamModel
type TeamModel struct {
	components.ISchema
	Data *pb.Team
}

func NewTeam(data *pb.Team) *TeamModel {
	m := &TeamModel{
		ISchema: NewSchema(data.Id, data),
		Data:    data,
	}

	return m
}

func TeamExistsByID(id string) *TeamModel {
	data := &pb.Team{Id: id}
	if err := mongoproxy.FindOne(mongoproxy.GetCollName(data), mongoproxy.GetBsonM("id", id), data); err != nil {
		logger.Error("Data not exist err: %v", err)
		return nil
	}
	r := &TeamModel{
		ISchema: NewSchema(data.Id, data),
		Data:    data,
	}
	return r
}