Ejemplo n.º 1
0
        /* GetBalance()
         *   Determines net balance of the user's account.
         *
         *   Modifies: amount with the value of the user's balance
         *   Returns: true if retrieved, false if not retrieved
         */
        public static bool GetBalance(string user, string pass, ref decimal amount)
        {
            DBAct.UserRecords userData = null;

            if (!AuthUserAndFetchData(user, pass, ref userData))
            {
                return(false);
            }

            amount = userData.GetBalance();
            return(true);
        }
Ejemplo n.º 2
0
        /* AddTransaction()
         *   Attempts to add a new transaction to the account. Withdrawals are passed as
         *   negative amounts. Will fail if insufficient funds are detected.
         *
         *   Returns: true if added, false if not added
         */
        public static bool AddTransaction(string user, string pass, decimal amount)
        {
            string cacheName = GetCacheName(user);

            DBAct.UserRecords userData = null;

            if (!AuthUserAndFetchData(user, pass, ref userData))
            {
                return(false);
            }

            if (userData.GetBalance() + amount < 0)
            {
                return(false);
            }

            DateTime    date           = DateTime.Now;
            Transaction newTransaction = CreateNewTransaction(date, amount);

            userData.AddTransaction(newTransaction);
            Cache.Update(cacheName, userData);

            return(true);
        }