Ejemplo n.º 1
0
        public async Task <ServiceResult <CityDto> > CreateCityAsync(CityAddRequest request)
        {
            if (!await _unitOfWork.CountryRepository.IsExistById(request.CountryId))
            {
                return(ServiceResult <CityDto> .Fail(EOperationResult.EntityNotFound, "Country with this Id doesn't exist"));
            }

            if (await _unitOfWork.CityRepository.IsCityExistAsync(request.Title, request.CountryId))
            {
                return(ServiceResult <CityDto> .Fail(EOperationResult.AlreadyExist,
                                                     "City with this title already exist in this country"));
            }

            var newCity = new City()
            {
                Title     = request.Title,
                CountryId = request.CountryId
            };

            _unitOfWork.CityRepository.Add(newCity);

            await _unitOfWork.CommitAsync();

            return(ServiceResult <CityDto> .Ok(_mapper.Map <City, CityDto>(newCity)));
        }
Ejemplo n.º 2
0
 public async Task <ActionResult <CityDto> > AddCityAsync([FromBody] CityAddRequest request)
 => _viewMapper.ServiceResultToContentResult(
     await _cityService.CreateCityAsync(request));