public async Task <IActionResult> Put(SectorEditModel sectorEdit)
        {
            var response     = new Response();
            var exists       = this.sectorsService.Exists(x => x.Id == sectorEdit.SectorId);
            var existsCrag   = this.cragsService.Exists(x => x.Id == sectorEdit.CragId);
            var existsByName = this.sectorsService.Exists(x => x.Id != sectorEdit.SectorId && x.Name == sectorEdit.Name);

            if (!this.ModelState.IsValid || existsByName)
            {
                response.Message = "Sector with that name already exists!";
                return(this.BadRequest(response));
            }

            if (!existsCrag)
            {
                response.Message = "No such crag!";
                return(this.NotFound(response));
            }

            if (!exists)
            {
                response.Message = "No such sector!";
                return(this.NotFound(response));
            }

            await this.sectorsService.EditAsync(sectorEdit);

            response.Message = "Successfully edited sector!";

            return(this.Ok(response));
        }
Esempio n. 2
0
        public async Task EditAsync(SectorEditModel sectorEdit)
        {
            var original = this.sectorsRepository
                           .All()
                           .First(x => x.Id == sectorEdit.SectorId);

            original.Name   = sectorEdit.Name;
            original.CragId = sectorEdit.CragId;

            await this.sectorsRepository.SaveChangesAsync();
        }