public async Task <ActionResult> Withdraw(WithdrawModel model)
        {
            var creditCardDTO = await _creditCardService.GetCreditCard(model.CreditCardId);

            if (creditCardDTO.Balance < model.WithdrawalAmount)
            {
                return(RedirectToAction("Error", "Home", new { errorMessage = "Not enough money on your account " }));
            }
            await _operationRepository.AddOperation(model.CreditCardId, 2, $"{model.WithdrawalAmount}$ was withdrawn");

            var balance = creditCardDTO.Balance - model.WithdrawalAmount;
            await _creditCardRepository.SetBalance(model.CreditCardId, balance);

            var reportModel = new ReportModel
            {
                CreditCardId     = model.CreditCardId,
                WithdrawalAmount = model.WithdrawalAmount,
                Balance          = balance,
                CreditCardNumber = creditCardDTO.CreditCardNumber,
                DateOfWithdrawal = DateTime.Now
            };

            TempData["ReportModel"] = reportModel;

            return(RedirectToAction("Report"));
        }