/// <summary> /// Updates a place. /// </summary> /// <param name="placeId">Place identifier.</param> /// <param name="contactResource">New place information</param> /// <returns>Place information.</returns> public async Task <DataResponse <PlaceResource> > UpdateAsync(int placeId, SavePlaceResource placeResource) { try { if (placeResource == null) { throw new ArgumentNullException(nameof(placeResource)); } var place = await _placeRepository.FindByIdAsync(placeId); if (place == null) { throw new NotFoundException(nameof(Place), placeId); } PlaceMapper.Map(place, placeResource); _placeRepository.Update(place); await _unitOfWork.SaveChangesAsync(); var resource = _mapper.Map <PlaceResource>(place); return(new DataResponse <PlaceResource>(resource)); } catch (Exception ex) { Console.WriteLine(ex.Message); return(new DataResponse <PlaceResource>(ex.Message)); } }
public static void Map(Place place, SavePlaceResource placeResource) { if (place == null || placeResource == null) { throw new ArgumentNullException("Wrong place or place resource provided."); } place.Name = placeResource.Name; place.Description = placeResource.Description; }
public async Task <IActionResult> PostAsync( [FromBody] SavePlaceResource savePlaceResource) { var response = await _placeService.AddAsync(savePlaceResource); if (!response.Success) { return(BadRequest(response)); } return(Ok(response)); }
public async Task <IActionResult> PutAsync(int id, [FromBody] SavePlaceResource savePlaceResource) { var response = await _placeService.UpdateAsync(id, savePlaceResource); if (!response.Success) { return(BadRequest(response)); } return(Ok(response)); }
public async Task <IActionResult> UpdateAsync(int id, [FromBody] SavePlaceResource resource) { var place = _mapper.Map <SavePlaceResource, Place>(resource); var result = await _placeService.UpdateAsync(id, place); if (!result.Success) { return(BadRequest(result.Message)); } var placeResource = _mapper.Map <Place, PlaceResource>(result.Resource); return(Ok(placeResource)); }
public async Task <IActionResult> PostAsync([FromBody] SavePlaceResource resource) { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetErrorMessages())); } var place = _mapper.Map <SavePlaceResource, Place>(resource); var result = await _placeService.SaveAsync(place); if (!result.Success) { return(BadRequest(result.Message)); } var placeResource = _mapper.Map <Place, PlaceResource>(result.Resource); return(Ok(placeResource)); }
public async Task <IActionResult> PutAsync(int id, [FromBody] SavePlaceResource placeResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetErrorMessages())); } var place = _Mapper.Map <SavePlaceResource, Place>(placeResource); var result = await _PlaceService.UpdateAsync(id, place); if (!result.Success) { return(BadRequest(result.Message)); } var placeResponse = _Mapper.Map <Place, PlaceResource>(result.Place); return(Ok(placeResponse)); }
/// <summary> /// Adds a place. /// </summary> /// <param name="placeResource">New place information</param> /// <returns>Place information.</returns> public async Task <DataResponse <PlaceResource> > AddAsync(SavePlaceResource placeResource) { try { if (placeResource == null) { throw new ArgumentNullException(nameof(placeResource)); } var place = _mapper.Map <Place>(placeResource); await _placeRepository.AddAsync(place); await _unitOfWork.SaveChangesAsync(); var resource = _mapper.Map <PlaceResource>(place); return(new DataResponse <PlaceResource>(resource)); } catch (Exception ex) { Console.WriteLine(ex.Message); return(new DataResponse <PlaceResource>(ex.Message)); } }