Fix: Updated removed redundant filtering, and getting for single-page architecture, which this is not on all pages
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -10,11 +10,6 @@ Description:
|
||||
Data model for store product view
|
||||
"""
|
||||
|
||||
# IMPORTS
|
||||
# VARIABLE INSTANTIATION
|
||||
# METHODS
|
||||
|
||||
# IMPORTS
|
||||
# internal
|
||||
from business_objects.store.product import Product, Parameters_Product
|
||||
from business_objects.store.product_category import Product_Category_Container
|
||||
@@ -28,53 +23,14 @@ import lib.argument_validation as av
|
||||
# external
|
||||
from typing import ClassVar
|
||||
|
||||
"""
|
||||
class Model_View_Store_Product(Model_View_Store):
|
||||
# categories: list # (str)
|
||||
# category_products: dict { category_enum_id: List[Product] }
|
||||
|
||||
# Attributes
|
||||
@property
|
||||
def title(self):
|
||||
return 'Store Product'
|
||||
|
||||
def __init__(self, id_permutation, id_currency, id_region_delivery, is_included_VAT, hash_page_current=Model_View_Store.HASH_PAGE_STORE_PRODUCTS):
|
||||
# Constructor
|
||||
_m = 'Model_View_Store_Product.__init__'
|
||||
Helper_App.console_log(f'{_m}\nstarting...')
|
||||
super().__init__(hash_page_current=hash_page_current, id_currency=id_currency, id_region_delivery=id_region_delivery, is_included_VAT=is_included_VAT)
|
||||
Helper_App.console_log('supered')
|
||||
|
||||
category_list = DataStore_Store_Base().get_many_product(Parameters_Product(
|
||||
self.info_user['sub'],
|
||||
True, '', False,
|
||||
True, '', False, False,
|
||||
False, str(id_permutation), False,
|
||||
True, '', False, False,
|
||||
False, str(id_region_delivery), False,
|
||||
False, str(id_currency), False,
|
||||
True, '', False
|
||||
)) # product_ids=str(id_product), permutation_ids=str(id_permutation))
|
||||
Helper_App.console_log('connection to db successful')
|
||||
# self.categories = categories
|
||||
# self.category_index = category_index
|
||||
""
|
||||
if (category_list.get_category_count() > 0):
|
||||
self.product = category_list.get_permutation_first()
|
||||
else:
|
||||
self.product = None
|
||||
Helper_App.console_log('selected permutation selected')
|
||||
""
|
||||
"""
|
||||
|
||||
|
||||
class Model_View_Store_Product(Model_View_Store):
|
||||
access_levels: list = None
|
||||
category_list: Product_Category_Container = None
|
||||
category_list_filters: Product_Category_Container = None
|
||||
currencies: list = None
|
||||
currency_options: list = None
|
||||
filters_product: Parameters_Product = None
|
||||
form_filters: Filters_Product
|
||||
form_filters: Filters_Product = None
|
||||
form_filters_old: Filters_Product
|
||||
list_options_product: list = None
|
||||
# product_blank: Product = None
|
||||
units_measurement: list = None
|
||||
@@ -86,10 +42,11 @@ class Model_View_Store_Product(Model_View_Store):
|
||||
def title(self):
|
||||
return 'Products'
|
||||
|
||||
def __init__(self, form_filters, hash_page_current=Model_View_Store.HASH_PAGE_STORE_PRODUCTS):
|
||||
def __init__(self, form_filters_old, hash_page_current=Model_View_Store.HASH_PAGE_STORE_PRODUCTS):
|
||||
_m = 'Model_View_Store_Product.__init__'
|
||||
Helper_App.console_log(f'{_m}\nstarting...')
|
||||
super().__init__(hash_page_current=hash_page_current, form_filters=form_filters)
|
||||
super().__init__(hash_page_current=hash_page_current, form_filters_old=form_filters_old)
|
||||
self.form_filters = form_filters_old
|
||||
self.access_levels = self.get_many_access_level(Filters_Access_Level())
|
||||
parameters_product = Parameters_Product.from_form_filters_product(self.form_filters)
|
||||
datastore_store = DataStore_Store_Product()
|
||||
|
||||
@@ -30,18 +30,21 @@ from typing import ClassVar
|
||||
class Model_View_Store_Product_Category(Model_View_Store):
|
||||
# KEY_CATEGORIES: ClassVar[str] = 'categories'
|
||||
|
||||
access_levels: list = None
|
||||
category_list: Product_Category_Container = None # (str)
|
||||
# filters_category: Filters_Product_Category
|
||||
form_filters: Filters_Product_Category = None
|
||||
form_filters_old: Filters_Product_Category
|
||||
|
||||
@property
|
||||
def title(self):
|
||||
return 'Product Category'
|
||||
|
||||
def __init__(self, form_filters, hash_page_current=Model_View_Store.HASH_PAGE_STORE_PRODUCT_CATEGORIES):
|
||||
def __init__(self, form_filters_old, hash_page_current=Model_View_Store.HASH_PAGE_STORE_PRODUCT_CATEGORIES):
|
||||
_m = 'Model_View_Store_Product_Category.__init__'
|
||||
Helper_App.console_log(f'{_m}\nstarting...')
|
||||
super().__init__(hash_page_current=hash_page_current, form_filters=form_filters) # filters_category=filters_category)
|
||||
super().__init__(hash_page_current=hash_page_current, form_filters_old=form_filters_old) # filters_category=filters_category)
|
||||
self.form_filters = form_filters_old
|
||||
# BaseModel.__init__(self, app=app, filters_product=filters_product, **kwargs)
|
||||
self.access_levels = self.get_many_access_level(Filters_Access_Level())
|
||||
datastore_store = DataStore_Store_Product_Category()
|
||||
|
||||
@@ -29,8 +29,9 @@ class Model_View_Store_Product_Permutation(Model_View_Store):
|
||||
category_list_filters: Product_Category_Container = None
|
||||
currencies: list = None
|
||||
currency_options: list = None
|
||||
filters_product: Parameters_Product = None
|
||||
form_filters: Filters_Product_Permutation
|
||||
# filters_product: Parameters_Product = None
|
||||
form_filters: Filters_Product_Permutation = None
|
||||
form_filters_old: Filters_Product_Permutation
|
||||
list_options_product: list = None
|
||||
units_measurement: list = None
|
||||
units_measurement_time: list = None
|
||||
@@ -41,10 +42,11 @@ class Model_View_Store_Product_Permutation(Model_View_Store):
|
||||
def title(self):
|
||||
return 'Product Permutations'
|
||||
|
||||
def __init__(self, form_filters, hash_page_current=Model_View_Store.HASH_PAGE_STORE_PRODUCT_PERMUTATIONS):
|
||||
def __init__(self, form_filters_old, hash_page_current=Model_View_Store.HASH_PAGE_STORE_PRODUCT_PERMUTATIONS):
|
||||
_m = 'Model_View_Store_Permutation.__init__'
|
||||
Helper_App.console_log(f'{_m}\nstarting...')
|
||||
super().__init__(hash_page_current=hash_page_current, form_filters=form_filters)
|
||||
super().__init__(hash_page_current=hash_page_current, form_filters_old=form_filters_old)
|
||||
self.form_filters = form_filters_old
|
||||
# self.form_filters = Filters_Product_Permutation()
|
||||
filters_product = Parameters_Product.from_form_filters_product_permutation(self.form_filters)
|
||||
datastore_store = DataStore_Store_Product_Permutation()
|
||||
|
||||
@@ -30,8 +30,8 @@ class Model_View_Store_Stock_Item(Model_View_Store):
|
||||
category_list_filters: Product_Category_Container = None
|
||||
currencies: list = None
|
||||
currency_options: list = None
|
||||
filters_stock_item: Filters_Stock_Item
|
||||
form_filters: Filters_Stock_Item = None
|
||||
form_filters_old: Filters_Stock_Item
|
||||
list_options_product: list = None
|
||||
plants: list = None
|
||||
storage_locations: list = None
|
||||
@@ -44,15 +44,15 @@ class Model_View_Store_Stock_Item(Model_View_Store):
|
||||
def title(self):
|
||||
return 'Store Stock Items'
|
||||
|
||||
def __init__(self, filters_stock_item, hash_page_current=Model_View_Store.HASH_PAGE_STORE_STOCK_ITEMS):
|
||||
def __init__(self, form_filters_old, hash_page_current=Model_View_Store.HASH_PAGE_STORE_STOCK_ITEMS):
|
||||
_m = 'Model_View_Store_Stock_Item.__init__'
|
||||
Helper_App.console_log(f'{_m}\nstarting...')
|
||||
super().__init__(hash_page_current=hash_page_current, filters_stock_item=filters_stock_item)
|
||||
# BaseModel.__init__(self, app=app, filters_stock_item=filters_stock_item, **kwargs)
|
||||
self.form_filters = Filters_Stock_Item.from_json(filters_stock_item.to_json()) # .from_form_stock_item(filters_stock_item)
|
||||
super().__init__(hash_page_current=hash_page_current, form_filters_old=form_filters_old)
|
||||
# BaseModel.__init__(self, app=app, form_filters_old=form_filters_old, **kwargs)
|
||||
self.form_filters = form_filters_old # Filters_Stock_Item.from_json(form_filters_old.to_json()) # .from_form_stock_item(form_filters_old)
|
||||
datastore_store = DataStore_Store_Stock_Item()
|
||||
tmp_category_list_stock_item, errors = datastore_store.get_many_product(Parameters_Product.from_filters_stock_item(filters_stock_item))
|
||||
self.category_list, errors = datastore_store.get_many_stock_item(Parameters_Stock_Item.from_form_stock_item(filters_stock_item), tmp_category_list_stock_item)
|
||||
tmp_category_list_stock_item, errors = datastore_store.get_many_product(Parameters_Product.from_filters_stock_item(self.form_filters))
|
||||
self.category_list, errors = datastore_store.get_many_stock_item(Parameters_Stock_Item.from_form_stock_item(self.form_filters), tmp_category_list_stock_item)
|
||||
self.category_list_filters, errors_filters = datastore_store.get_many_product(Parameters_Product.get_default())
|
||||
"""
|
||||
Parameters_Stock_Item(
|
||||
@@ -83,7 +83,7 @@ class Model_View_Store_Stock_Item(Model_View_Store):
|
||||
filtered_product_list.append(product)
|
||||
Helper_App.console_log(f'product_list: {product_list}\nfiltered_product_list: {filtered_product_list}')
|
||||
self.form_filters.id_product.choices += [(str(product['value']), product['text']) for product in filtered_product_list] # [Filters_Stock_Item.get_choice_all()] +
|
||||
# self.form_filters.import_values(filters_stock_item)
|
||||
# self.form_filters.import_values(form_filters_old)
|
||||
self.variation_types, self.variations, errors = self.get_many_product_variation()
|
||||
self.units_measurement = self.get_many_unit_measurement()
|
||||
self.units_measurement_time = [unit_measurement for unit_measurement in self.units_measurement if unit_measurement.is_unit_of_time]
|
||||
|
||||
Reference in New Issue
Block a user