2014-12-01 10:35:38 -05:00

119 lines
2.7 KiB
Python

import sqlite3
import hashlib
class DB:
def __init__( self, file= ):
self.file = file
def create_user( self, name, pin, permission ):
c = self.__connect()
# check if user name is taken
result = self.get_user( name )
if len(result) == 0:
c.execute( "INSERT INTO user ( name, pin, permission ) VALUES ( ?, ?, ? )", ( name, pin, permission ) )
self.conn.commit
c.close()
return True
else:
c.close()
return False
def login_user():
c = self.__connect
c.execute( "SELECT * FROM user WHERE pin=(?) and name=(?)", ( pin ,name ) )
result = c.fetchall()
c.close()
if len( result ) == 1
return result[0]
else:
return False
def get_user( sefl, name ):
c = self.__connect()
c.execute( "SELECT * FROM user WHERE name LIKE (?)", ( name ) )
c.close()
return c.fetchall()
def __connect( self ):
self.conn = sqlite3.connect( '' )
return self.conn.cursor()
# start the data base
class Users:
def __int__( self, name, pin ):
def creat( self, name, pin, permission ):
pin = hashlib.md5( pin )
if db.create_user( name, pin.hexdigest(), permission ):
return True
return False
def login( self, name, pin ):
pin = hashlib.md5( pin )
get_user = db.login_user( name, pin.hexdigest() )
if get_user:
return __check_type( get_user )
return False
def __check_type( self, user ):
if user.permission == "client":
return Cleint( user )
elif user.permission == "banker"
return Banker( user )
def look_up( self, name ):
return db.get_user( name )
class account:
def __init__( self, account_number ):
self.account = db.account( amount )
def view( self ):
return self.account
def withdraw( self, amount ):
if amount < self.amount.balance:
db.account_update( self.account.number, amount, withdraw )
def deposit( self, amount ):
db.account_update( self.account.number, amount, deposit )
def transfer( self, amount, to_account_number ):
db.account_update( self.account.number, amount, transfer )
db.account_update( to_account_number, amount, transfer )
class client:
def __init__( self ):
self.accounts = account()
def view_all_accounts( self ):
return self.accounts
class banker( user ):
def __init__( self ):
pass
def view_all_users( self ):
pass
def view_user_acconts( self ):
pass
def current_account( self ):
pass