64 lines
2.6 KiB
Python
64 lines
2.6 KiB
Python
"""
|
|
Project: PARTS Website
|
|
Author: Edward Middleton-Smith
|
|
Precision And Research Technology Systems Limited
|
|
|
|
Technology: View Models
|
|
Feature: Store Permutations View Model
|
|
|
|
Description:
|
|
Data model for store permutations view
|
|
"""
|
|
|
|
# internal
|
|
from dog_training.business_objects.dog.command import Command, Parameters_Command
|
|
from dog_training.business_objects.dog.dog import Dog, Parameters_Dog
|
|
from dog_training.business_objects.dog.dog_command_link import Dog_Command_Link, Parameters_Dog_Command_Link
|
|
from dog_training.business_objects.dog.obedience_level import Obedience_Level
|
|
from dog_training.datastores.datastore_dog import DataStore_Dog
|
|
from dog_training.models.model_view_dog_base import Model_View_Dog_Base
|
|
from dog_training.forms.dog.dog_command_link import Filters_Dog_Command_Link
|
|
# from routes import bp_home
|
|
from dog_training.helpers.helper_app import Helper_App
|
|
import dog_training.lib.argument_validation as av
|
|
|
|
# external
|
|
from pydantic import BaseModel
|
|
from typing import ClassVar
|
|
|
|
class Model_View_Dog_Dog_Command_Link(Model_View_Dog_Base):
|
|
filter_dogs: list = None
|
|
filter_commands: list = None
|
|
dog_command_links: list = None
|
|
form_filters: Filters_Dog_Command_Link = None
|
|
form_filters_old: Filters_Dog_Command_Link
|
|
|
|
@property
|
|
def title(self):
|
|
return 'Dog Command Link'
|
|
|
|
def __init__(self, form_filters_old, hash_page_current=Model_View_Dog_Base.HASH_PAGE_DOG_DOG_COMMAND_LINKS):
|
|
_m = 'Model_View_Dog_Dog_Command_Link.__init__'
|
|
Helper_App.console_log(f'{_m}\nstarting...')
|
|
super().__init__(hash_page_current=hash_page_current, form_filters_old=form_filters_old)
|
|
self.form_filters = form_filters_old
|
|
datastore = DataStore_Dog()
|
|
parameters_filter_dog = Parameters_Dog.get_default()
|
|
self.filter_dogs, errors = datastore.get_many_dog(parameters_filter_dog)
|
|
|
|
parameters_filter_command = Parameters_Command.get_default()
|
|
self.filter_commands, errors = datastore.get_many_command(parameters_filter_command)
|
|
|
|
parameters_filter_dog_command_link = Parameters_Dog_Command_Link.get_default()
|
|
self.dog_command_links, errors = datastore.get_many_dog_command_link(parameters_filter_dog_command_link)
|
|
|
|
Helper_App.console_log(f'dogs: {self.filter_dogs}')
|
|
Helper_App.console_log(f'commands: {self.filter_commands}')
|
|
Helper_App.console_log(f'links: {self.dog_command_links}')
|
|
|
|
"""
|
|
@classmethod
|
|
def save_categories(cls, comment, list_categories):
|
|
_m = f'{cls.__name__}.save_categories'
|
|
return DataStore_Store_Product_Category().save_categories(comment, list_categories)
|
|
""" |