public IResult Add(RentalPaymentDto rentalPaymentDto)
        {
            IResult result = BusinessRules.Run(CheckIfRentExist(rentalPaymentDto.Car));

            if (result != null)
            {
                return(result);
            }

            var cardExist = _cardService.IsCardExist(new Card {
                CardNumber = rentalPaymentDto.CardNumber, CVV = rentalPaymentDto.CVV
            });

            if (!cardExist.Success)
            {
                return(cardExist);
            }

            _rentDal.Add(new Rent
            {
                Car        = rentalPaymentDto.Car,
                Customer   = rentalPaymentDto.Customer,
                RentDate   = rentalPaymentDto.RentDate,
                ReturnDate = rentalPaymentDto.ReturnDate
            });
            return(new SuccessResult());
        }
Пример #2
0
        public IActionResult Add([FromBody] RentalPaymentDto rentalPaymentDto)
        {
            var result = _rentalService.AddRentalAndPayment(rentalPaymentDto);

            if (result.Success)
            {
                return(Ok(result));
            }
            return(BadRequest(result.Message));
        }
Пример #3
0
        public IActionResult Add(RentalPaymentDto rental)
        {
            var result = _rentService.Add(rental);

            if (result.Success)
            {
                return(Ok(result));
            }
            return(BadRequest(result));
        }
Пример #4
0
        public IActionResult Pay(RentalPaymentDto rentalPaymentDto)
        {
            var result = _paymentService.ReceivePayment(rentalPaymentDto.Payment, rentalPaymentDto.Rental);

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

            return(BadRequest(result));
        }
        public IActionResult Payment(RentalPaymentDto rentalPaymentDto)
        {
            var payResult = _paymentService.Pay(rentalPaymentDto.Payment);

            if (!payResult.Success)
            {
                return(BadRequest(payResult));
            }
            var result = _rentalService.Add(rentalPaymentDto.Rental);

            if (result.Success)
            {
                return(Ok(result));
            }
            return(BadRequest(result));
        }
Пример #6
0
        public IActionResult Add(RentalPaymentDto rentalPaymentDto)
        {
            var result = _rentalService.Add(rentalPaymentDto.Rental);

            if (result.Success)
            {
                var paymentResult = _creditCardService.Add(rentalPaymentDto.CreditCard);
                if (!paymentResult.Success)
                {
                    //return Ok(paymentResult);
                    return(BadRequest(paymentResult.Message));
                }
                return(Ok(result));
            }
            return(BadRequest(result));
        }
Пример #7
0
        //[TransactionAspect]
        public ActionResult PaymentAdd(RentalPaymentDto rentalPaymentDto)
        {
            var paymentResult = _paymentService.ReceivePayment(rentalPaymentDto.Payment);
            if (!paymentResult.Success)
            {
                return BadRequest(paymentResult);
            }
            var result = _rentalService.Add(rentalPaymentDto.Rental);

            if (result.Success)
                return Ok(result);
            else
            {
                throw new System.Exception(result.Message);
                //return BadRequest(result);                    
            }
        }
Пример #8
0
        public IActionResult Add(RentalPaymentDto rentalPaymentDto)
        {
            var paymentResult = _paymentService.MakePayment(rentalPaymentDto.FakeCreditCardModel);

            if (!paymentResult.Success)
            {
                return(BadRequest(paymentResult));
            }
            var result = _rentalService.Add(rentalPaymentDto.Rental);

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

            return(BadRequest(result.Message));
        }
Пример #9
0
 public IResult AddRentalAndPayment(RentalPaymentDto rentalPaymentDto)
 {
     _paymentService.MakePayment(rentalPaymentDto.FakeCreditCardModel);
     _rentalDal.Add(rentalPaymentDto.Rental);
     return(new SuccessResult(Messages.RentalAddedAndPaymentSuccessful));
 }