Feat: Dogs page.

This commit is contained in:
2025-08-09 10:44:33 +01:00
parent d5e5e1a111
commit 77393d2057
46 changed files with 1718 additions and 640 deletions

View File

@@ -14,6 +14,7 @@ Datastore for Users
# from routes import bp_home
import lib.argument_validation as av
from business_objects.sql_error import SQL_Error
from business_objects.dog.company import Company, Parameters_Company
from business_objects.dog.role import Role, Parameters_Role
from business_objects.dog.user import User, User_Temp, Parameters_User
from datastores.datastore_base import DataStore_Base
@@ -167,4 +168,43 @@ class DataStore_User(DataStore_Base):
cls.db_cursor_clear(cursor)
return roles, errors
return roles, errors
@classmethod
def get_many_company(cls, company_filters):
_m = f'{cls.__qualname__}.get_many_company'
user = cls.get_user_session()
argument_dict = {
'a_id_user': user.id_user
, **company_filters.to_json()
, 'a_debug': 0
}
Helper_App.console_log(f'argument_dict: {argument_dict}')
result = cls.db_procedure_execute('p_dog_get_many_company', argument_dict)
cursor = result.cursor
# Companies
result_set_1 = cursor.fetchall()
Helper_App.console_log(f'raw companies: {result_set_1}')
companies = []
company_indexes = {}
for row in result_set_1:
Helper_App.console_log(f'Raw company: {row}')
new_company = Company.from_db_company(row)
company_indexes[new_company.id_company] = len(companies)
companies.append(new_company)
# Errors
cursor.nextset()
result_set_e = cursor.fetchall()
Helper_App.console_log(f'raw errors: {result_set_e}')
errors = []
if len(result_set_e) > 0:
errors = [SQL_Error.from_db_record(row) for row in result_set_e]
for error in errors:
Helper_App.console_log(f"Error [{error.code}]: {error.msg}")
cls.db_cursor_clear(cursor)
return companies, errors