Esempio n. 1
0
        public async Task Handle(MatchRescheduledEvent notification, CancellationToken cancellationToken)
        {
            var fixture  = this.dbContext.Fixtures.Single(x => x.FixtureId == notification.FixtureId);
            var homeTeam = this.dbContext.Teams.First(x => x.Id == notification.HomeTeamId);
            var awayTeam = this.dbContext.Teams.First(x => x.Id == notification.AwayTeamId);

            var match = new FixtureMatchViewModel
            {
                HomeTeam    = $"{homeTeam.FirstName} {homeTeam.LastName}",
                HomeTeamId  = notification.HomeTeamId,
                AwayTeam    = $"{awayTeam.FirstName} {awayTeam.LastName}",
                AwayTeamId  = notification.HomeTeamId,
                StartDate   = fixture.StartDate,
                EndDate     = fixture.EndDate,
                FixtureId   = fixture.FixtureId,
                SeasonId    = fixture.SeasonId,
                DivisionId  = fixture.DivisionId,
                WeekNumber  = fixture.WeekNumber,
                MatchId     = notification.MatchId,
                Rescheluded = true
            };

            await this.dbContext.AddAsync(match, cancellationToken);

            await this.dbContext.SaveChangesAsync(cancellationToken);
        }
Esempio n. 2
0
        protected override void Handle(FixtureMatchAddedEvent notification)
        {
            var fixture = this.context.Fixtures.Single(x => x.FixtureId == notification.FixtureGuid);

            var match = new FixtureMatchViewModel
            {
                HomeTeam   = this.context.DivisionTeams.First(x => x.TeamId == notification.HomeTeamId && x.DivisionId == fixture.DivisionId).FullTeamName,
                HomeTeamId = notification.HomeTeamId,
                AwayTeam   = this.context.DivisionTeams.First(x => x.TeamId == notification.AwayTeamId && x.DivisionId == fixture.DivisionId).FullTeamName,
                AwayTeamId = notification.HomeTeamId,
                StartDate  = fixture.StartDate,
                EndDate    = fixture.EndDate,
                FixtureId  = fixture.FixtureId,
                SeasonId   = fixture.SeasonId,
                DivisionId = fixture.DivisionId,
                WeekNumber = fixture.WeekNumber,
                MatchId    = notification.MatchId
            };

            this.context.Add(match);
            this.context.SaveChanges();
        }