Example #1
0
        public async Task <IActionResult> EditFixture(int teamId, int fixtureId, [FromBody] FixtureToCreate fixtureToEditDto)
        {
            var teamFromRepo = await _repository.GetTeam(teamId);

            if (teamFromRepo == null)
            {
                return(BadRequest("Team does not exist"));
            }
            var fixtureFromRepo = await _repository.GetFixture(fixtureId);

            if (fixtureFromRepo == null)
            {
                return(BadRequest($"Fixture with id {fixtureId} does not exist"));
            }

            var fixtureToUpdate = _mapper.Map <FixtureToCreate, Fixture>(fixtureToEditDto, fixtureFromRepo);

            _repository.Update <Fixture>(fixtureToUpdate);
            if (await _repository.SaveAllChangesAsync())
            {
                var fixtureToReturn = _mapper.Map <FixtureToReturn>(fixtureToUpdate);
                return(NoContent());
            }
            throw new Exception($"Error Editing fixture with id {teamId}");
        }
Example #2
0
        public async Task <IActionResult> CreateTeamFixture(int teamId, [FromBody] FixtureToCreate fixtureToCreateDto)
        {
            fixtureToCreateDto.TeamId = teamId;
            var teamFromRepo = await _repository.GetTeam(teamId);

            if (teamFromRepo == null)
            {
                return(BadRequest("Team does not exist"));
            }
            var fixtureToCreate = _mapper.Map <Fixture>(fixtureToCreateDto);

            _repository.Add <Fixture>(fixtureToCreate);
            if (await _repository.SaveAllChangesAsync())
            {
                var fixtureToReturn = _mapper.Map <TeamToReturnDto>(fixtureToCreate);
                return(CreatedAtRoute("GetFixture", new { id = fixtureToReturn.Id }, fixtureToReturn));
            }
            return(BadRequest("An Error occurred while creating the fixture"));
        }