worked on system, added member, advisor & admin management.
This commit is contained in:
69
services/search.py
Normal file
69
services/search.py
Normal file
@@ -0,0 +1,69 @@
|
||||
from models.database import Database
|
||||
from models.user import User
|
||||
|
||||
class Search:
|
||||
@staticmethod
|
||||
def search_members(query):
|
||||
cur = Database.connection.cursor()
|
||||
cur.execute("""
|
||||
SELECT * FROM users WHERE
|
||||
id LIKE ? OR
|
||||
username LIKE ? OR
|
||||
firstname LIKE ? OR
|
||||
lastname LIKE ? OR
|
||||
email LIKE ? OR
|
||||
phone LIKE ?
|
||||
""", (f"%{query}%", f"%{query}%", f"%{query}%", f"%{query}%", f"%{query}%", f"%{query}%"))
|
||||
rows = cur.fetchall()
|
||||
|
||||
payload = []
|
||||
for row in rows:
|
||||
user = User(Database.connection)._set_row_values(row)
|
||||
if user.role == "MEMBER":
|
||||
payload.append(user)
|
||||
|
||||
return payload
|
||||
|
||||
@staticmethod
|
||||
def search_advisors(query):
|
||||
cur = Database.connection.cursor()
|
||||
cur.execute("""
|
||||
SELECT * FROM users WHERE
|
||||
id LIKE ? OR
|
||||
username LIKE ? OR
|
||||
firstname LIKE ? OR
|
||||
lastname LIKE ? OR
|
||||
email LIKE ? OR
|
||||
phone LIKE ?
|
||||
""", (f"%{query}%", f"%{query}%", f"%{query}%", f"%{query}%", f"%{query}%", f"%{query}%"))
|
||||
rows = cur.fetchall()
|
||||
|
||||
payload = []
|
||||
for row in rows:
|
||||
user = User(Database.connection)._set_row_values(row)
|
||||
if user.role == "ADVISOR":
|
||||
payload.append(user)
|
||||
|
||||
return payload
|
||||
|
||||
@staticmethod
|
||||
def search_admins(query):
|
||||
cur = Database.connection.cursor()
|
||||
cur.execute("""
|
||||
SELECT * FROM users WHERE
|
||||
id LIKE ? OR
|
||||
username LIKE ? OR
|
||||
firstname LIKE ? OR
|
||||
lastname LIKE ? OR
|
||||
email LIKE ? OR
|
||||
phone LIKE ?
|
||||
""", (f"%{query}%", f"%{query}%", f"%{query}%", f"%{query}%", f"%{query}%", f"%{query}%"))
|
||||
rows = cur.fetchall()
|
||||
|
||||
payload = []
|
||||
for row in rows:
|
||||
user = User(Database.connection)._set_row_values(row)
|
||||
if user.role == "SYSTEM_ADMIN":
|
||||
payload.append(user)
|
||||
|
||||
return payload
|
Reference in New Issue
Block a user