public IActionResult CalculatePrice(CarDateCalculateDto carDateCalculateDto)
        {
            var result = _carService.CalculatePrice(carDateCalculateDto);

            if (result.Success)
            {
                return(Ok(result));
            }

            return(BadRequest(result));
        }
Example #2
0
        public IDataResult <decimal> CalculatePrice(CarDateCalculateDto carDateCalculateDto)
        {
            Car findedCar = _carDal.Get(car => car.CarID == carDateCalculateDto.CarId);

            if (findedCar == null)
            {
                return(new ErrorDataResult <decimal>(0, Messages.CarNotFound));
            }

            TimeSpan different = carDateCalculateDto.ReturnDate - carDateCalculateDto.RentDate;

            decimal totalPrice = findedCar.DailyPrice * Convert.ToDecimal(different.TotalMinutes) / (60 * 24);

            decimal celinigPrice = Math.Ceiling(totalPrice);

            return(new SuccessDataResult <decimal>(celinigPrice, Messages.CalculatedPricePerMinute));
        }