package parkour // import ( // "go_dreamfactory/comm" // "go_dreamfactory/pb" // ) // //参数校验 // func (this *apiComp) QuitTeamCheck(session comm.IUserSession, req *pb.ParkourQuitTeamReq) (errdata *pb.ErrorData) { // return // } // ///退出队伍 // func (this *apiComp) QuitTeam(session comm.IUserSession, req *pb.ParkourQuitTeamReq) (errdata *pb.ErrorData) { // var ( // tean *pb.DBParkour // ntean *pb.DBParkour // member *pb.DBRaceMember // users []string // ok bool // err error // ) // if errdata = this.QuitTeamCheck(session, req); errdata != nil { // return // } // if tean, err = this.module.parkourComp.queryinfo(req.Captainid); err != nil { // errdata = &pb.ErrorData{ // Code: pb.ErrorCode_DBError, // Title: pb.ErrorCode_DBError.ToString(), // Message: err.Error(), // } // return // } // for i, v := range tean.Member { // if v.Uid == session.GetUserId() { // tean.Member = append(tean.Member[0:i], tean.Member[i+1:]...) // member = v // ok = true // } else if !v.Isai { // users = append(users, v.Uid) // } // } // if !ok { // errdata = &pb.ErrorData{ // Code: pb.ErrorCode_ReqParameterError, // Title: pb.ErrorCode_ReqParameterError.ToString(), // } // return // } // if req.Captainid == session.GetUserId() { //自己是队长 // if len(users) > 0 { // for i, v := range users { // if i == 0 { // if ntean, err = this.module.parkourComp.queryinfo(v); err != nil { // errdata = &pb.ErrorData{ // Code: pb.ErrorCode_DBError, // Title: pb.ErrorCode_DBError.ToString(), // Message: err.Error(), // } // return // } else { // ntean.Captainid = users[0] // ntean.Member = tean.Member // if err = this.module.parkourComp.Change(v, map[string]interface{}{ // "captainid": v, // "member": tean.Member, // }); err != nil { // errdata = &pb.ErrorData{ // Code: pb.ErrorCode_DBError, // Title: pb.ErrorCode_DBError.ToString(), // Message: err.Error(), // } // return // } // } // } else { // if err = this.module.parkourComp.Change(v, map[string]interface{}{ // "captainid": users[0], // }); err != nil { // errdata = &pb.ErrorData{ // Code: pb.ErrorCode_DBError, // Title: pb.ErrorCode_DBError.ToString(), // Message: err.Error(), // } // return // } // } // } // this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage", // &pb.ParkourTeamChanagePush{Team: ntean}, users...) // } // tean.Invite = make([]*pb.DBRaceInvite, 0) // tean.Member = make([]*pb.DBRaceMember, 0) // if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{ // "state": pb.RaceTeamState_resting, // "captainid": "", // "invite": tean.Invite, // "member": tean.Member, // }); err != nil { // errdata = &pb.ErrorData{ // Code: pb.ErrorCode_DBError, // Title: pb.ErrorCode_DBError.ToString(), // Message: err.Error(), // } // return // } // } else { // if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{ // "state": pb.RaceTeamState_resting, // "captainid": "", // }); err != nil { // errdata = &pb.ErrorData{ // Code: pb.ErrorCode_DBError, // Title: pb.ErrorCode_DBError.ToString(), // Message: err.Error(), // } // return // } // if err = this.module.parkourComp.Change(req.Captainid, map[string]interface{}{ // "member": tean.Member, // }); err != nil { // errdata = &pb.ErrorData{ // Code: pb.ErrorCode_DBError, // Title: pb.ErrorCode_DBError.ToString(), // Message: err.Error(), // } // return // } // if len(users) > 0 { // this.module.SendMsgToUsers(string(this.module.GetType()), "teamquitnotice", // &pb.ParkourTeamQuitNoticePush{Member: member}, users...) // this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage", // &pb.ParkourTeamChanagePush{Team: tean}, users...) // } // } // session.SendMsg(string(this.module.GetType()), "quitteam", &pb.ParkourQuitTeamResp{}) // return // }