package hero import ( "go_dreamfactory/comm" "go_dreamfactory/pb" "go_dreamfactory/sys/db" "go_dreamfactory/utils" "time" "google.golang.org/protobuf/proto" ) //参数校验 func (this *apiComp) InfoCheck(session comm.IUserSession, req *pb.HeroInfoReq) (code pb.ErrorCode) { if req.HeroId == "" { code = pb.ErrorCode_ReqParameterError } return } func (this *apiComp) Info(session comm.IUserSession, req *pb.HeroInfoReq) (code pb.ErrorCode, data proto.Message) { var ( uid string ) hero := &pb.DBHero{} if code = this.InfoCheck(session, req); code != pb.ErrorCode_Success { return } rsp := &pb.HeroInfoResp{} if req.Uid == "" { uid = session.GetUserId() } else { uid = req.Uid } tag, _, b := utils.UIdSplit(uid) if b { if conn, err := db.ServerDBConn(tag); err == nil { dbModel := db.NewDBModel(comm.TableHero, time.Hour, conn) if err = dbModel.GetListObj(uid, req.HeroId, hero); err == nil { rsp.Base = hero } else { this.module.Errorf("err:%v", err) } } } session.SendMsg(string(this.module.GetType()), HeroSubTypeInfo, rsp) return }