Exemple #1
0
        public async Task <BaseModel> UpdateAsync(PaymentModelItem modelItem)
        {
            var order = await _orderRepository.FindByIdAsync(modelItem.OrderId);

            var orderModel = new OrderModelItem();

            if (order == null)
            {
                orderModel.Errors.Add(Constants.Errors.NotFoundOrderError);
                return(orderModel);
            }

            var payment = new Payment();

            payment.TransactionId = modelItem.TransactionId;

            var paymentId = await _paymentsRepository.CreateAsync(payment);

            if (paymentId == 0)
            {
                orderModel.Errors.Add(Constants.Errors.CreatePaymentError);
                return(orderModel);
            }

            order.PaymentId = paymentId;
            order.Status    = Enums.Order.OrderStatus.Paid;

            var result = await _orderRepository.UpdateAsync(order);

            if (!result)
            {
                orderModel.Errors.Add(Constants.Errors.UpdateOrderError);
            }

            return(orderModel);
        }
Exemple #2
0
        public async Task <IActionResult> Update([FromBody] PaymentModelItem paymentModelItem)
        {
            var orderModel = await _orderService.UpdateAsync(paymentModelItem);

            return(Ok(orderModel));
        }