Exemplo n.º 1
0
    private void LoadData()
    {
        user               = (BankUser)Session["User"];
        usersBank          = (Bank)Session["UsersBank"];
        TitleLbl.InnerHtml = "<i class=\"fa fa-bank\"></i> BANK-OS : " + usersBank.BankName.ToUpper();
        lblName.Text       = user.FirstName + " " + user.LastName;
        lblUsersName.Text  = user.FirstName + " " + user.LastName + " " + user.OtherName;
        lblUsersRole.Text  = user.Usertype;
        lblCompnay.Text    = usersBank.BankName;
        UserType type = bll.GetUserTypeById(user.Usertype, user.BankCode);

        if (type.StatusCode == "0")
        {
            lblUsersRole.Text = type.UserTypeName;
        }

        BankTeller teller = user as BankTeller;

        if (teller != null)
        {
            BankAccount account = bll.GetBankAccountById(teller.TellerAccountNumber, teller.BankCode);
            lblTellersBalance.Text = account.AccountBalance.Split('.')[0];
            lblTellerAccount.Text  = teller.TellerAccountNumber;
            TellersSection.Visible = true;
        }
        else
        {
            TellersSection.Visible = false;
        }
    }
 internal string SaveBankTeller(BankTeller teller, string BankCode)
 {
     try
     {
         string CreateDate = DateTime.Now.ToString("yyyy-MM-dd");
         string ModifyDate = CreateDate;
         command = CbDatabase.GetStoredProcCommand("BankTellers_Update",
                                                   teller.Email,
                                                   teller.FullName,
                                                   teller.Usertype,
                                                   teller.Password,
                                                   teller.IsActive,
                                                   teller.ModifiedBy, //because he who creates either also modifies
                                                   teller.ModifiedBy,
                                                   teller.CanHaveAccount,
                                                   teller.BranchCode,
                                                   teller.DateOfBirth,
                                                   teller.PhoneNumber,
                                                   teller.Gender,
                                                   teller.TellerAccountNumber,
                                                   teller.BankCode);
         DataTable datatable = CbDatabase.ExecuteDataSet(command).Tables[1];
         return(datatable.Rows[0][0].ToString());
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        public void Transfer_ValidBalance_AddsToTransactions()
        {
            // ARRANGE
            Random random = new();

            var fromOpeningBalance = random.NextDouble() * 1000D;
            var fromAccount        = new BankAccount(fromOpeningBalance);

            var toOpeningBalance = random.NextDouble() * 500D;
            var toAccount        = new BankAccount(toOpeningBalance);

            var transferAmount = random.NextDouble() * 10D;

            // ACT
            BankTeller.Transfer(fromAccount, toAccount, transferAmount);

            // ASSERT
            Assert.That(fromAccount.Transactions.Count, Is.EqualTo(1));
            Assert.That(fromAccount.Transactions.Contains(transferAmount * -1D));
            Assert.That(fromAccount.Balance, Is.EqualTo(fromOpeningBalance - transferAmount));

            Assert.That(toAccount.Transactions.Count, Is.EqualTo(1));
            Assert.That(toAccount.Transactions.Contains(transferAmount));
            Assert.That(toAccount.Balance, Is.EqualTo(toOpeningBalance + transferAmount));
        }
    private BankTeller GetBankTeller(BankUser user)
    {
        BankTeller teller = new BankTeller();

        teller.TellerAccountNumber = bll.GetAccountsByUserId(user.Id)[0];
        teller.ApprovedBy          = user.ApprovedBy;
        teller.BankCode            = user.BankCode;
        teller.BranchCode          = user.BranchCode;
        teller.DateOfBirth         = user.DateOfBirth;
        teller.Email            = user.Email;
        teller.FirstName        = user.FirstName;
        teller.LastName         = user.LastName;
        teller.OtherName        = user.OtherName;
        teller.Gender           = user.Gender;
        teller.Id               = user.Id;
        teller.IsActive         = user.IsActive;
        teller.ModifiedBy       = user.ModifiedBy;
        teller.Password         = user.Password;
        teller.PhoneNumber      = user.PhoneNumber;
        teller.StatusCode       = user.StatusCode;
        teller.StatusDesc       = user.StatusDesc;
        teller.TransactionLimit = user.TransactionLimit;
        teller.Usertype         = user.Usertype;

        return(teller);
    }
    public void DisableControls()
    {
        Operation = Operation.ToUpper();
        BankTeller teller = client.GetById("BANKTELLER", user.Id, user.BankCode, bll.BankPassword) as BankTeller;

        //if teller wants to process deposit
        if (Operation == "DEPOSIT")
        {
            ddTranCategory.Text = Operation;

            txtFromAccount.Text    = teller.TellerAccountNumber;
            txtFromAccount.Enabled = false;
            txtToAccount.Text      = Id;
            txtToAccount.Enabled   = false;
        }
        //if teller wants to process withdraw
        else if (Operation == "WITHDRAW")
        {
            ddTranCategory.Text         = Operation;
            txtToAccount.Text           = teller.TellerAccountNumber;
            txtFromAccount.Text         = Id;
            txtFromAccount.Enabled      = false;
            txtToAccount.Enabled        = false;
            PaymentTypesSection.Visible = false;
        }
        //funds transfer
        //disable from account
        //set it to users acc number so he cant withdraw
        else
        {
            txtFromAccount.Text    = Id;
            txtFromAccount.Enabled = false;
        }
    }
Exemplo n.º 6
0
    private void AssignSessionVariables(BankUser user)
    {
        Bank          UsersBank    = bll.GetBankById(user.BankCode);
        List <string> allowedAreas = bll.GetAllowedAreas(user.Usertype, user.BankCode);

        //Set Session Variables Specific to System Admin
        if (user.Usertype == "SYS_ADMIN")
        {
            SetSysAdminSession(ref UsersBank, ref allowedAreas, user);
        }
        else if (user.Usertype == "TELLER")
        {
            BankTeller teller = GetBankTeller(user);
            user = teller;
        }

        //we cant find the Users Bank
        if (UsersBank.StatusCode != "0")
        {
            throw new Exception("Unable To Determine Your Bank. Please contact System Administrator");
        }
        //Get Areas the User is allowed to access
        else if (allowedAreas.Count == 0)
        {
            throw new Exception("Unable To Determine Your Access Rights. Please contact System Administrator");
        }
        //Set Session Variables
        else
        {
            Session["User"]         = user;
            Session["UsersBank"]    = UsersBank;
            Session["AllowedAreas"] = allowedAreas;
            Response.Redirect("LoggedInStartPage.aspx", false);
        }
    }
        public void ShowAccountBalance()
        {
            BankTeller teller    = new BankTeller(db);
            int        accountId = 6;
            double     balance   = teller.CheckBalance(accountId);

            Assert.Equal(balance, 200);
        }
        public void GetAccountNumber()
        {
            string customer = "Jevon Smith";

            BankTeller teller        = new BankTeller(db);
            int        accountNumber = teller.GetAccountNumber(customer);

            Assert.Equal(4, accountNumber);
        }
        public void WithdrawMoney()
        {
            BankTeller teller  = new BankTeller(db);
            double     money   = 100;
            double     balance = teller.CheckBalance(5);

            teller.WithdrawMoney(money, 5);
            double newBalance = teller.CheckBalance(5);

            Assert.Equal(balance - money, newBalance);
        }
        public void DepositMoney()
        {
            BankTeller teller  = new BankTeller(db);
            double     money   = 100;
            double     balance = teller.CheckBalance(5);

            teller.DepositMoney(money, 5);
            double newBalance = teller.CheckBalance(5);

            Assert.Equal(money + balance, newBalance);
        }
Exemplo n.º 11
0
        public async Task <IActionResult> Pay(int buyForm, int payForm, string creditCard, string partnerCode)
        {
            if (buyForm == 1 && payForm == 0)
            {
                var        seats = _context.TicketPurchase.Where(m => m.Code == (string)TempData["codeSeats"]);
                BankTeller bank  = new BankTeller();
                if (!bank.Pay())
                {
                    foreach (var item in seats)
                    {
                        _context.TicketPurchase.Remove(item);
                    }
                    _context.SaveChanges();
                    return(RedirectToAction("PayError"));
                }

                foreach (var item in seats)
                {
                    ((OnlineTicketPurchase)item).CreditCard = creditCard;
                }
            }

            if (partnerCode != null)
            {
                var   user   = (await _cineUserManager.GetAllUsersBy("Member")).Where(c => c.Id == partnerCode).First();
                float points = float.Parse(await _cineUserManager.GetClaim(user.UserName, "Points"));
                if (payForm == 0)
                {
                    points += 5 * (int)TempData["len"];
                }
                else
                {
                    var batch = _context.Batch.Find((int)TempData["cinema"], (DateTime)TempData["start"], (DateTime)TempData["end"]);
                    points -= batch.TicketPoints * (int)TempData["len"];
                    var seats = _context.TicketPurchase.Where(m => m.Code == (string)TempData["codeSeats"]);
                    foreach (var item in seats)
                    {
                        item.PointsSpent = batch.TicketPoints;
                    }
                }
                await _cineUserManager.SetClaim(user.UserName, "Points", points);
            }

            var spots = _context.TicketPurchase.Where(m => m.Code == (string)TempData["codeSeats"]);

            foreach (var item in spots)
            {
                item.Paid = true;
            }

            _context.SaveChanges();
            return(RedirectToAction("ShowCode", "TicketPurchases"));
        }
Exemplo n.º 12
0
    public Result SaveTellerDetails(BankTeller teller, string BankCode)
    {
        Result result = new Result();

        result.RequestId = teller.Id;
        string Id = dh.SaveBankTeller(teller, BankCode);

        result.StatusCode = "0";
        result.StatusDesc = "SUCCESS";
        result.PegPayId   = Id;
        return(result);
    }
        public void Transfer_BalanceTooLow_ThrowsException()
        {
            Assert.Throws <ApplicationException>(() =>
            {
                var from = new BankAccount(1);
                var to   = new BankAccount(2);

                BankTeller.Transfer(from, to, from.Balance() + 1D);

                Assert.That(from.Transactions.Any(), Is.False);
                Assert.That(to.Transactions.Any(), Is.False);
            });
        }
    public Result SaveTellerDetails(BankTeller teller, string BankCode)
    {
        Result result = new Result();

        result.RequestId = teller.Id;
        LogChangesInAuditLog(teller, teller.Id, teller.BankCode, teller.ModifiedBy);
        string Id = dh.SaveBankTeller(teller, BankCode);

        result.StatusCode = "0";
        result.StatusDesc = "SUCCESS";
        result.PegPayId   = Id;
        return(result);
    }
        public void Transfer_NegativeAmount_ThrowsException()
        {
            Assert.Throws <ApplicationException>(() =>
            {
                var from = new BankAccount(1);
                var to   = new BankAccount(2);

                BankTeller.Transfer(from, to, -1D);

                Assert.That(from.Transactions.Any(), Is.False);
                Assert.That(to.Transactions.Any(), Is.False);
            });
        }
        public void AddAccount()
        {
            BankTeller teller       = new BankTeller(db);
            string     customerName = "Test Account";

            // Add Account
            int accountNumber = teller.AddAccount(customerName);

            // Verify
            Assert.True(accountNumber > -1);

            // Remove Account as part of clean-up
            teller.RemoveAccount(customerName);
            accountNumber = teller.GetAccountNumber(customerName);
            Assert.Equal(-1, accountNumber);
        }
    private BaseObject GetBankUser(string objectId, string bankCode, string Password)
    {
        BaseObject result = new BaseObject();
        BankUser   user   = dh.GetUserById(objectId, bankCode);

        if (user.Usertype == "TELLER")
        {
            BankTeller teller = new BankTeller(user);
            teller.TellerAccountNumber = dh.GetAccountsByUserId(user.Id)[0];
            result = teller;
        }
        else
        {
            result = user;
        }

        return(result);
    }
Exemplo n.º 18
0
    public Result SaveBankTellerDetails(BankTeller teller, string BankCode, string Password)
    {
        Result result = new Result();

        try
        {
            if (teller.IsValidBankTeller(BankCode, Password))
            {
                result = bll.SaveTellerDetails(teller, BankCode);
            }
            else
            {
                result.StatusCode = teller.StatusCode;
                result.StatusDesc = teller.StatusDesc;
            }
        }
        catch (Exception ex)
        {
            result.StatusCode = "100";
            result.StatusDesc = "FAILED : " + ex.Message;
        }
        return(result);
    }
Exemplo n.º 19
0
        public void TestSaveBankTellerDetails()
        {
            BankTeller teller = new BankTeller();

            teller.BranchCode       = "TESTBRANCH";
            teller.CanHaveAccount   = "True";
            teller.DateOfBirth      = "17/02/1991";
            teller.FullName         = "NSUBUGA KASOZI";
            teller.Gender           = "MALE";
            teller.IsActive         = "True";
            teller.ModifiedBy       = "TEST";
            teller.Password         = "******";
            teller.PhoneNumber      = "256794132389";
            teller.StatusCode       = "0";
            teller.Id               = "0";
            teller.Email            = "*****@*****.**";
            teller.Usertype         = "TELLER";
            teller.BranchCode       = "MY";
            teller.TransactionLimit = "1000";

            Result result = client.SaveBankTellerDetails(teller, BankCode, Password);

            Assert.AreEqual(result.StatusCode, "0");
        }