package guildgve import ( "fmt" "go_dreamfactory/comm" "go_dreamfactory/pb" ) // 参数校验 func (this *apiComp) RankCheck(session comm.IUserSession, req *pb.GuildGveRankReq) (errdata *pb.ErrorData) { return } // 获取工会boos战信息 func (this *apiComp) Rank(session comm.IUserSession, req *pb.GuildGveRankReq) (errdata *pb.ErrorData) { var ( err error ids []string sociatys []*pb.DBSociaty guilids []*pb.DBGuildGve ranks []*pb.GuildGveRankItem ) if errdata = this.RankCheck(session, req); errdata != nil { return } if ids, err = this.module.modelRank.queryRankUser(); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Title: pb.ErrorCode_DBError.ToString(), Message: err.Error(), } return } if sociatys, errdata = this.module.sociaty.GetSociatys(ids); errdata != nil { return } if guilids, err = this.module.modelGuildGve.querySociatys(ids); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Title: pb.ErrorCode_DBError.ToString(), Message: err.Error(), } return } if len(guilids) != len(sociatys) { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Title: pb.ErrorCode_DBError.ToString(), Message: fmt.Sprintf("数据不对称 guilids:%d sociatys:%d", len(guilids), len(sociatys)), } return } for i, v := range sociatys { ranks = append(ranks, &pb.GuildGveRankItem{ Guildid: v.Id, Name: v.Name, Icon: v.Icon, Rank: int32(i), KillCount: guilids[i].Kills, LastKillTime: guilids[i].Lastkilltime, }) } session.SendMsg(string(this.module.GetType()), "rank", &pb.GuildGveRankResp{List: ranks}) return }