Exemplo n.º 1
0
        public IActionResult Transfer(TransferAmount transferAmount)
        {
            try
            {
                // set login user to true
                ViewBag.IsUserLoggedIn = true;

                // perform transfer to other user and get updated balance
                var updatedBalance = accountOperations.TransferByID(transferAmount.Amount, Convert.ToInt32(loggedinuserId), transferAmount.PhoneNumber);

                // pass update balance to UI
                ViewBag.AccountBalance = updatedBalance;

                // set account id
                ViewBag.AccountId = accountId;
            }
            catch (Exception ex)
            {
                // Pass error message to UI in case of insufficient balance
                ViewBag.InsufficientAccountBalance = ex.Message;
                return(View());
            }


            ViewBag.SuccessfulTransfer = "Transfer Successful!";
            return(View());
        }
Exemplo n.º 2
0
        public async Task <IActionResult> PrintDeposit(
            string id,
            [FromBody] TransferAmount deposit,
            [FromQuery] string?taskId,
            [FromQuery] int asyncTimeout = PrintJob.DefaultTimeout)
        {
            if (!context.IsReady)
            {
                return(StatusCode(StatusCodes.Status405MethodNotAllowed));
            }
            if (context.Printers.TryGetValue(id, out IFiscalPrinter? printer))
            {
                var result = await context.RunAsync(
                    new PrintJob
                {
                    Printer      = printer,
                    Action       = PrintJobAction.Deposit,
                    Document     = deposit,
                    AsyncTimeout = asyncTimeout,
                    TaskId       = taskId
                });

                return(Ok(result));
            }
            return(NotFound());
        }
Exemplo n.º 3
0
 public override DeviceStatus PrintMoneyWithdraw(TransferAmount transferAmount)
 {
     if (transferAmount.Amount < 0m)
     {
         throw new StandardizedStatusMessageException("Withdraw amount must be positive number", "E403");
     }
     var(response, status) = MoneyTransfer(-transferAmount.Amount);
     System.Diagnostics.Trace.WriteLine("PrintMoneyWithdraw: {0}", response);
     return(status);
 }
Exemplo n.º 4
0
        public ActionResult k_jDelete([DataSourceRequest] DataSourceRequest request, TransferAmount item)
        {
            if (item != null)
            {
                string a = item.CreateDate.ToString();
                repository.DeleteAndCommit(item);
            }

            return(k_jRead(request));
        }
Exemplo n.º 5
0
        public virtual DeviceStatus ValidateTransferAmount(TransferAmount transferAmount)
        {
            var status = new DeviceStatus();

            if (transferAmount.Amount <= 0)
            {
                status.AddError("E403", "Amount should be positive number");
            }
            return(status);
        }
Exemplo n.º 6
0
 public ActionResult <PrintResult> PrintDeposit(string id, [FromBody] TransferAmount deposit)
 {
     if (context.Printers.TryGetValue(id, out IFiscalPrinter printer))
     {
         return(new PrintResult
         {
             Status = printer.PrintMoneyDeposit(deposit.Amount)
         });
     }
     return(NotFound());
 }
Exemplo n.º 7
0
 public ActionResult <PrintResult> PrintWithdraw(string id, [FromBody] TransferAmount withdraw)
 {
     if (context.Printers.TryGetValue(id, out IFiscalPrinter printer))
     {
         return(new PrintResult
         {
             Status = printer.PrintMoneyWithdraw(withdraw.Amount)
         });
     }
     return(NotFound());
 }
Exemplo n.º 8
0
 public ActionResult Form(TransferAmount entity)
 {
     try
     {
         repository.SaveAndCommit(entity);
         return(PartialResultSuccess());
     }
     catch (Exception)
     {
         return(PartialResultError());
     }
 }
Exemplo n.º 9
0
        private async Task AddNewPayment()
        {
            //only setup the needed details.
            Expense paymentExpense = new Expense()
            {
                payment         = true,
                cost            = TransferAmount.ToString(),
                currency_code   = Currency,
                creation_method = "payment",
                description     = "Payment",
                details         = Details,
                group_id        = (Application.Current as App).PAYMENT_GROUP,
                users           = new List <Expense_Share>()
            };
            Expense_Share fromUser = new Expense_Share();
            Expense_Share toUser   = new Expense_Share();

            if (paymentType == Constants.PAYMENT_TO)
            {
                fromUser.user_id    = App.currentUser.id;
                fromUser.owed_share = "0";
                fromUser.paid_share = TransferAmount.ToString();

                toUser.user_id    = paymentUser.id;
                toUser.paid_share = "0";
                toUser.owed_share = TransferAmount.ToString();
            }
            else
            {
                toUser.user_id    = App.currentUser.id;
                toUser.paid_share = "0";
                toUser.owed_share = TransferAmount.ToString();

                fromUser.user_id    = paymentUser.id;
                fromUser.paid_share = TransferAmount.ToString();
                fromUser.owed_share = "0";
            }

            paymentExpense.users.Add(fromUser);
            paymentExpense.users.Add(toUser);

            ModifyDatabase modify = new ModifyDatabase(_recordPaymentCompleted);
            await modify.AddExpense(paymentExpense);
        }
Exemplo n.º 10
0
        public async Task <IActionResult> PrintWithdraw(
            string id,
            [FromBody] TransferAmount withdraw,
            [FromQuery] int asyncTimeout = PrintJob.DefaultTimeout)
        {
            if (!context.IsReady)
            {
                return(StatusCode(StatusCodes.Status405MethodNotAllowed));
            }
            if (context.Printers.TryGetValue(id, out IFiscalPrinter? printer))
            {
                var result = await context.RunAsync(
                    printer,
                    PrintJobAction.Withdraw,
                    withdraw,
                    asyncTimeout);

                return(Ok(result));
            }
            return(NotFound());
        }
Exemplo n.º 11
0
 public override DeviceStatus PrintMoneyDeposit(TransferAmount transferAmount)
 {
     var(_, status) = MoneyTransfer(transferAmount);
     System.Diagnostics.Trace.WriteLine($"PrintMoneyDeposit: {transferAmount}");
     return(status);
 }
Exemplo n.º 12
0
 public override DeviceStatus PrintMoneyDeposit(TransferAmount transferAmount)
 {
     var(response, status) = MoneyTransfer(transferAmount.Amount);
     System.Diagnostics.Trace.WriteLine("PrintMoneyDeposit: {0}", response);
     return(status);
 }
Exemplo n.º 13
0
 public override DeviceStatus PrintMoneyWithdraw(TransferAmount transferAmount)
 {
     var(_, status) = MoneyTransfer(-transferAmount.Amount);
     return(status);
 }
Exemplo n.º 14
0
 public override DeviceStatus PrintMoneyDeposit(TransferAmount transferAmount)
 {
     var(_, status) = MoneyTransfer(transferAmount.Amount);
     return(status);
 }
Exemplo n.º 15
0
 public abstract DeviceStatus PrintMoneyWithdraw(TransferAmount transferAmount);
Exemplo n.º 16
0
 public abstract DeviceStatus PrintMoneyDeposit(TransferAmount transferAmount);