示例#1
0
        public ActionResult Report(MovementVm mov)
        {
            var dal = new CashMachineDal();

            mov.Movements = dal.Movements.ToList().Where(x => x.cardNumber == mov.Movement.cardNumber).ToList();
            return(View(mov));
        }
示例#2
0
        public ActionResult Withdrawal(MovementVm mov)
        {
            var dal = new CashMachineDal();

            mov.Movements        = dal.Movements.ToList().Where(x => x.cardNumber == mov.Movement.cardNumber).ToList();
            mov.Movement.ammount = null;
            return(View(mov));
        }
示例#3
0
        // GET: Movement
        public ActionResult Balance(MovementVm mov)
        {
            var dal = new CashMachineDal();

            mov.Movements = dal.Movements.ToList().Where(x => x.cardNumber == mov.Movement.cardNumber && x.operation == (int)Operations.Withdrawall).ToList();
            RecordOperation(mov.Movement, Operations.BalanceCheck);
            return(View(mov));
        }
示例#4
0
        public ActionResult Extraction(MovementVm mov)
        {
            var dal = new CashMachineDal();
            var acc = dal.Accounts.FirstOrDefault(x => x.cardNumber == mov.Movement.cardNumber);

            if (Validate(mov, acc))
            {
                RecordOperation(mov.Movement, Operations.Withdrawall);
                acc.balance -= mov.Movement.ammount;
                dal.SaveChanges();
                mov.ErrorId = 1;
            }
            return(View("Withdrawal", mov));
        }
示例#5
0
        private static bool Validate(MovementVm mov, Account acc)
        {
            var retValue = true;

            if (acc == null)
            {
                mov.ErrorId      = -1;
                mov.ErrorMessage = "Error getting Balance information";
                retValue         = false;
            }
            else
            {
                if (acc.balance < mov.Movement.ammount)
                {
                    mov.ErrorId      = -1;
                    mov.ErrorMessage = "Insufficient funds";
                    retValue         = false;
                }
            }
            return(retValue);
        }