public async Task <IDataResult <Car> > AddAsync(CarAddDto carAddDto) { var brandResult = await GetBrandByBrandNameAsync(carAddDto.BrandName); if (!brandResult.Success) { return(new ErrorDataResult <Car>(null, brandResult.Message)); } var colorResult = await GetColorByColorNameAsync(carAddDto.ColorName); if (!colorResult.Success) { return(new ErrorDataResult <Car>(null, colorResult.Message)); } var gearTypeResult = await GetGearTypeByGearTypeNameAsync(carAddDto.GearTypeName); if (!gearTypeResult.Success) { return(new ErrorDataResult <Car>(null, gearTypeResult.Message)); } var fuelTypeResult = await GetFuelTypeByFuelTypeNameAsync(carAddDto.FuelTypeName); if (!fuelTypeResult.Success) { return(new ErrorDataResult <Car>(null, fuelTypeResult.Message)); } Car carToAdd = new Car() { BrandId = brandResult.Data.Id, ColorId = colorResult.Data.Id, FuelTypeId = fuelTypeResult.Data.Id, GearTypeId = gearTypeResult.Data.Id, HorsePower = carAddDto.HorsePower, Name = carAddDto.Name, DailyPrice = carAddDto.DailyPrice, Description = carAddDto.Description, ModelYear = carAddDto.ModelYear }; bool addResult = await _carDal.AddAsync(carToAdd); if (!addResult) { return(new ErrorDataResult <Car>(null, Messages.CarNotAdded)); } var carCreditScoreAddResult = await AddCarCreditScoreAsync(carToAdd.Id, carAddDto.MinCreditScore); if (!carCreditScoreAddResult.Success) { return(new ErrorDataResult <Car>(null, carCreditScoreAddResult.Message)); } return(new SuccessDataResult <Car>(carToAdd, Messages.CarAdded)); }
public async Task <IResult> AddAsync(Car entity) { await _carDal.AddAsync(entity); return(new SuccessResult()); }
public async Task <IResult> Add(Car car) { await _carDal.AddAsync(car); return(new SuccessResult(Messages.CarAdded)); }