Ejemplo n.º 1
0
def transfer_money(id):
    try:
        acc_no_sender = int(input("Enter Account No From : "))
    except:
        print("Invalid Account No")
        return
    account_sender = database.get_all_info_account(acc_no_sender,id,"withdraw")
    if account_sender is not None:
        try:
            acc_no_receiver = int(input("Enter Account No To Transfer Money To : "))
        except:
            print("Invalid Account No")
            return
        account_receiver = database.get_all_info_account(acc_no_receiver,-1,"transfer")
        if account_receiver is not None:
            try:
                amount = int(input("\nEnter Amount To Transfer : "))
            except:
                print("Invalid Amount")
                return
            database.transfer_money_customer(account_sender,account_receiver,amount)
        else:
            print("Sorry Account doesn't exist")

    else:
        print("Sorry Account No doesn't match")
Ejemplo n.º 2
0
def avail_loan(id):
    try:
        acc_no = int(input("\nEnter Your Savings Account No : "))
    except:
        print("Invalid Account No")
        return
    account = database.get_all_info_account(acc_no,id,"loan")
    if account is not None:
        max_loan = 2*account.get_balance()
        msg = "\nEnter loan amount (Max Amount : Rs "+ str(max_loan) + " ) (in multiples of 1000) : "
        try:
            loan_amt = int(input(msg))
        except:
            print("Invalid Amount")
            return
        if loan_amt <= max_loan and loan_amt > 0 and loan_amt % 1000 == 0 :
            try:
                loan_term = int(input("\nEnter repayment term (in months) : "))
            except:
                print("Invalid repayment term")
                return
            if loan_term > 0:
                database.get_loan_customer(account.get_account_no(),loan_amt,loan_term)
                res = db_admin.get_loan_report(id)
                print("Account No \t\t\t\t Amount \t\t\t\t Repay Term")
                for i in range(0,len(res)):
                    print(res[i][0],"   \t\t\t\t\t   ",res[i][1],"   \t\t\t\t   ",res[i][2])
            else:
                print("Sorry ! Invalid Loan Term")

        else:
            print("Sorry ! Invalid Loan Amount")

    else:
        print("Sorry! Account No Doesn't match")
Ejemplo n.º 3
0
def withdraw_money(id):
    try:
        acc_no = int(input("Enter your account No: "))
    except:
        print("ERROR: Invalid Account No")
        return
    account = database.get_all_info_account(acc_no, id, "withdraw")
    if account is not None:
        if account.get_withdrawals_left() == 0 and account.get_account_type(
        ) == "savings":
            print("ERROR: You have exceeded withdrawals(10) for this month")

        else:
            try:
                amount = int(input("Enter amount to Withdraw: "))
            except:
                print("ERROR: Invalid Amount")
                return
            if account.withdraw(amount) == True:
                database.money_withdraw_customer(account, amount, "withdraw")
                print("Rs ", amount, "Successfully withdrawn")
                print("Balance : Rs ", account.get_balance())

    else:
        print("ERROR: Account No doesn't match")
Ejemplo n.º 4
0
def deposit_money(id):
    try:
        acc_no = int(input("Enter your account No\n"))
    except:
        print("Invalid Account No")
        return
    account = database.get_all_info_account(acc_no,id,"deposit")
    if account is not None:
        try:
            amount = int(input("Enter amount to Deposit\n"))
        except:
            print("Invalid Amount")
            return
        if account.deposit(amount) == True:
            try:
                database.money_deposit_customer(account,amount)
            except cx_Oracle.DatabaseError as e:
                print("Sorry something went Wrong")
                print(e)
                con.rollback()
                return
            print("Rs ",amount,"Successfully deposited");
            print("Balance : Rs ",account.get_balance())

    else:
        print("Sorry Account No doesn't match")
Ejemplo n.º 5
0
def close_account(id):
    try:
        acc_no = int(input("\nEnter Account No to close : "))
    except:
        print("Invalid Account No")
        return
    account = database.get_all_info_account(acc_no,id,"close")
    if account is not None:
        database.close_account_customer(account)
    else:
        print("\nSorry Account No doesn't match")
Ejemplo n.º 6
0
def print_statement(id):
    try:
        acc_no = int(input("Enter your account No\n"))
    except:
        print("Invalid Account No")
        return
    account = database.get_all_info_account(acc_no,id,"statement")
    if account is not None:
        print("Enter Dates in format (day-Mon-Year) ")
        date_from = input("Date From : ")
        date_to = input("\nDate To : ")
        if validate.validate_date(date_from,date_to) == True:
            res = database.get_transactions_account(acc_no,date_from,date_to)
            print("Date \t\t\t Transaction Type \t\t\t Amount \t\t\t Balance \t")
            for i in range(0,len(res)):
                print(res[i][0].strftime("%d-%b-%Y")," \t\t\t ",res[i][1]," \t\t\t ",res[i][2]," \t\t\t ",res[i][3])
        else:
            print("Please Enter Valid Dates")
Ejemplo n.º 7
0
def deposit_money(id):
    try:
        acc_no = int(input("Enter your account No: "))
    except:
        print("ERROR: Invalid Account No")
        return
    account = database.get_all_info_account(acc_no, id, "deposit")
    if account is not None:
        try:
            amount = int(input("Enter amount to Deposit: Rs "))
        except:
            print("ERROR: Invalid Amount")
            return
        if account.deposit(amount) == True:
            database.money_deposit_customer(account, amount)
            print("Rs ", amount, "Successfully deposited")
            print("Balance : Rs ", account.get_balance())

    else:
        print("ERROR: Account No doesn't match")
    def avail_loan(self):
        try:
            acc_no = int(input("\nEnter Your Savings Account No : "))
        except:
            print("Invalid Account No")
            return
        account = database.get_all_info_account(acc_no, self.id, "loan")
        if account is not None:
            max_loan = 2 * account.get_balance()
            msg = "\nEnter loan amount (Max Amount : Rs " + str(
                max_loan) + " ) (in multiples of 1000) : "
            try:
                loan_amt = int(input(msg))
            except:
                print("Invalid Amount")
                return
            if max_loan >= loan_amt > 0 and loan_amt % 1000 == 0:
                try:
                    loan_term = int(
                        input("\nEnter repayment term (in months) : "))
                except:
                    print("Invalid repayment term")
                    return
                if loan_term > 0:
                    database.get_loan_customer(account.get_account_no(),
                                               loan_amt, loan_term)
                    res = db_admin.get_loan_report(self.id)
                    print(
                        tabulate(
                            res,
                            headers=["Account No", "Amount", "Repay Term"],
                            tablefmt="pretty"))
                else:
                    print("Sorry ! Invalid Loan Term")

            else:
                print("Sorry ! Invalid Loan Amount")

        else:
            print("Sorry! Account No Doesn't match")
 def print_statement(self):
     try:
         acc_no = int(input("Enter your account No\n"))
     except:
         print("Invalid Account No")
         return
     account = database.get_all_info_account(acc_no, self.id, "statement")
     if account is not None:
         print("Enter Dates in format (Year-Mon-Day) ")
         date_from = input("Date From : ")
         date_to = input("Date To : ")
         if validate.validate_date(date_from, date_to):
             res = database.get_transactions_account(
                 acc_no, date_from, date_to)
             print(
                 tabulate(res,
                          headers=[
                              "Date", "Transaction Type", "Amount",
                              "Balance", "Account Type"
                          ],
                          tablefmt="pretty"))
         else:
             print("Please Enter Valid Dates")