public async Task <IDataResult <Rental> > AddAsync(RentalAddDto rentalCreateDto) { var ruleResult = BusinessRules.Run( (await CheckRentDateAsync(rentalCreateDto.CarId, rentalCreateDto.RentDate)), CheckIfReturnDateSmallOfRentDate(rentalCreateDto.RentDate, rentalCreateDto.ReturnDate.Value), (await CheckCreditScoreByCustomerIdAsync(rentalCreateDto.CustomerId, rentalCreateDto.CarId))); if (!ruleResult.Success) { return(new ErrorDataResult <Rental>(null, ruleResult.Message)); } var rentalToAdd = new Rental() { CarId = rentalCreateDto.CarId, CustomerId = rentalCreateDto.CustomerId, RentDate = rentalCreateDto.RentDate, ReturnDate = rentalCreateDto.ReturnDate }; bool addResult = await _rentalDal.AddAsync(rentalToAdd); if (addResult == true) { return(new SuccessDataResult <Rental>(rentalToAdd, Messages.RentalAdded)); } else { return(new ErrorDataResult <Rental>(null, Messages.RentalNotAdded)); } }
public async Task <IActionResult> Add(RentalAddDto addDto) { var result = await _rentalService.AddAsync(_mapper.Map <Rental>(addDto)); if (result.Success) { return(Created("", result)); } return(BadRequest(result)); }
public IActionResult Add(RentalAddDto rentalAddDto) { var result = _rentalService.Add(rentalAddDto); if (result.Success) { return(Ok(result)); } return(BadRequest(result)); }
private IResult CheckIfCarIsRented(RentalAddDto rentalAddDto) { // İlgili aracın dönüş tarihi varsa - Araç kiralanmış var result = _rentalDal.GetAll(p => p.CarId == rentalAddDto.CarId && p.ReturnDate != null); if (result.Count > 0) { return(new ErrorResult(Messages.RentalReturnDateError)); } return(new SuccessResult()); }
public async Task <IActionResult> AddAsync(RentalAddDto rentalCreateDto) { var result = await _rentalService.AddAsync(rentalCreateDto); if (result.Success) { return(Ok(result)); } return(BadRequest(result)); }
public IResult Add(RentalAddDto rentalAddDto) { //Business rules IResult result = BusinessRules.Run(CheckIfCarIsRented(rentalAddDto)); if (result != null) { return(result); } // mapper Rental rental = _mapper.Map <Rental>(rentalAddDto); _rentalDal.Add(rental); return(new SuccessResult(Messages.RentalAdded)); }
public IDataResult <int> AddDto(RentalAddDto rentalAddDto) { Rental rentalToAdd = new Rental() { CarID = Convert.ToInt32(rentalAddDto.CarId), CustomerID = rentalAddDto.CustomerId, RentEndDate = rentalAddDto.RentEndDate, RentStartDate = rentalAddDto.RentStartDate, ReturnDate = rentalAddDto.ReturnDate }; _rentalDal.Add(rentalToAdd); return(new SuccessDataResult <int>(rentalToAdd.Id, Messages.RentalAdded)); }