initial build
This commit is contained in:
72
models/user.py
Normal file
72
models/user.py
Normal file
@@ -0,0 +1,72 @@
|
||||
import sqlite3
|
||||
from models.database import Database
|
||||
|
||||
class User:
|
||||
def __init__(self, connection : sqlite3.Connection, id = None, firstname = None, lastname = None, address = None, zipcode = None, city_id = None, email = None, phone = None, password = None, role = None):
|
||||
self.connection = connection
|
||||
self.id = id
|
||||
self.firstname = firstname
|
||||
self.lastname = lastname
|
||||
self.address = address
|
||||
self.zipcode = zipcode
|
||||
self.city_id = city_id
|
||||
self.email = email
|
||||
self.phone = phone
|
||||
self.password = password
|
||||
self.role = role
|
||||
|
||||
def load_by_id(self):
|
||||
cur = Database.connection.cursor()
|
||||
row = cur.execute("SELECT * FROM users WHERE id = ?", (self.id,)).fetchone()
|
||||
|
||||
if row == None:
|
||||
return False
|
||||
|
||||
self._set_row_values(row)
|
||||
|
||||
cur.close()
|
||||
return True
|
||||
|
||||
def save(self):
|
||||
cur = Database.connection.cursor()
|
||||
cur.execute("""
|
||||
INSERT INTO users
|
||||
(id, fistname, lastname, address, zipcode, city_id, email, phone, password, role) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
||||
""", (self.id, self.firstname, self.lastname, self.zipcode, self.city_id, self.email, self.phone, self.password, self.role))
|
||||
|
||||
Database.connection.commit()
|
||||
cur.close()
|
||||
return True
|
||||
|
||||
def update(self):
|
||||
cur = Database.connection.cursor()
|
||||
cur.execute("""
|
||||
UPDATE users SET
|
||||
fistname = ?,
|
||||
lastname = ?,
|
||||
address = ?,
|
||||
zipcode = ?,
|
||||
city_id = ?,
|
||||
email = ?,
|
||||
phone = ?,
|
||||
password = ?,
|
||||
role = ?,
|
||||
WHERE id = ?
|
||||
""", (self.firstname, self.lastname, self.zipcode, self.city_id, self.email, self.phone, self.password, self.role, self.id))
|
||||
|
||||
Database.connection.commit()
|
||||
cur.close()
|
||||
return True
|
||||
|
||||
def _set_row_values(self, row):
|
||||
self.id = row[0]
|
||||
self.firstname = row[1]
|
||||
self.lastname = row[2]
|
||||
self.address = row[3]
|
||||
self.zipcode = row[4]
|
||||
self.city_id = row[5]
|
||||
self.email = row[6]
|
||||
self.phone = row[7]
|
||||
self.password = row[8]
|
||||
self.role = row[9]
|
||||
|
Reference in New Issue
Block a user