public async Task <ApiResponse> Get(int id) { Com.BinaryBracket.BowlsResults.Competition.Domain.Entities.Competition competition = await this._competitionRepository.GetWithRegistrationConfiguration(id); CompetitionDto dto = competition.AssembleDto(); return(ApiResponse.CreateSuccess(dto)); }
public async Task <ApiResponse> GetAllPlayerCompetitionFixture(int id) { Com.BinaryBracket.BowlsResults.Competition.Domain.Entities.Competition competition = await this._competitionRepository.GetWithRegistrationConfiguration(id); List <CompetitionRoundDto> list = new List <CompetitionRoundDto>(); if (competition != null && competition.CompetitionScopeID == CompetitionScopes.Player) { List <PlayerFixture> fixtures = await this._playerFixtureRepository.GetAllFullByCompetition(id); var dtoList = PlayerFixtureDtoAssembler.AssembleDtoList(fixtures); return(ApiResponse.CreateSuccess(dtoList.OrderByDescending(x => x.SortDate).ThenByDescending(x => x.SummaryData.CompetitionRoundType).ThenByDescending(x => x.SummaryData.CompetitionRoundGameNumber))); } return(ApiResponse.CreateSuccess(list)); }
public static CompetitionDto AssembleDto(this Com.BinaryBracket.BowlsResults.Competition.Domain.Entities.Competition competition) { var dto = new CompetitionDto(); dto.ID = competition.ID; dto.RegistrationStatus = competition.GetRegistrationStatus(); dto.Name = competition.Name; if (competition.GameVariation != null) { dto.GameVariation = competition.GameVariation.Name; dto.GameFormatID = competition.GameVariation.GameFormatID; } dto.StartDate = competition.StartDate; dto.VenueClub = competition.VenueClub?.AssembleDto(); dto.Sponsor = competition.Sponsor; dto.DataBit1 = competition.DataBit1; dto.ScopeID = competition.CompetitionScopeID; if (competition.RegistrationConfiguration != null) { dto.RegistrationConfiguration = competition.RegistrationConfiguration.AssembleDto(); } if (competition.Dates != null && competition.Dates.Count > 0) { dto.Dates = competition.Dates.OrderBy(x => x.Date).AssembleDtoList(); } if (competition.Stages != null && competition.Stages.Count > 0) { dto.Stages = competition.Stages.OrderBy(x => x.Sequence).AssembleDtoList(); } return(dto); }