""" Project: PARTS Website Author: Edward Middleton-Smith Precision And Research Technology Systems Limited Technology: View Models Feature: User View Model Description: Data model for user view """ # internal from business_objects.dog.company import Company, Parameters_Company from datastores.datastore_user import DataStore_User from forms.dog.company import Filters_Company from helpers.helper_app import Helper_App from models.model_view_base import Model_View_Base # from routes import bp_home # external from typing import ClassVar class Model_View_User_Company(Model_View_Base): filter_roles: list = None form_filters: Filters_Company = None form_filters_old: Filters_Company companies: list = None def __init__(self, form_filters_old, hash_page_current = Model_View_Base.HASH_PAGE_USER_COMPANY): super().__init__(hash_page_current = hash_page_current, form_filters_old = form_filters_old) self._title = 'Company' self.form_filters = form_filters_old Helper_App.console_log(f'Form filters: {self.form_filters}') datastore = DataStore_User() parameters_company = Parameters_Company.from_form_filters_company(self.form_filters) Helper_App.console_log(f'Query args: {parameters_company}') self.companies, errors = datastore.get_many_company(parameters_company)