feat: attrs on product

This commit is contained in:
2024-05-11 00:24:59 +03:00
parent dca4070db7
commit 7ce9258096
12 changed files with 25 additions and 22 deletions

View File

@@ -6,6 +6,7 @@ from .company_name_attribute_getter import CompanyNameAttributeGetter
from .composition_attribute_getter import CompositionAttributeGetter
from .inn_attribute_getter import InnAttributeGetter
from .name_attribute_getter import NameAttributeGetter
from .size_attribute_getter import SizeAttributeGetter
class AttributeWriterFactory:
@@ -28,5 +29,7 @@ class AttributeWriterFactory:
return ColorAttributeGetter()
case 'composition':
return CompositionAttributeGetter()
case 'size':
return SizeAttributeGetter()
case _:
return None

View File

@@ -5,7 +5,5 @@ from models import Product
class BrandAttributeGetter(BaseAttributeGetter):
def get_value(self, product: Product):
result = product.brand
if not result:
result = ''
return result
return product.brand

View File

@@ -5,7 +5,4 @@ from models import Product
class ColorAttributeGetter(BaseAttributeGetter):
def get_value(self, product: Product):
result = product.color
if not result:
result = ''
return result
return product.color

View File

@@ -5,7 +5,4 @@ from models import Product, Client
class CompanyNameAttributeGetter(BaseAttributeGetter):
def get_value(self, product: Product):
client: Client = product.client
result = client.company_name
if not result:
result = ''
return result
return client.company_name

View File

@@ -5,7 +5,4 @@ from models import Product
class CompositionAttributeGetter(BaseAttributeGetter):
def get_value(self, product: Product):
result = product.composition
if not result:
result = ''
return result
return product.composition

View File

@@ -6,7 +6,4 @@ class InnAttributeGetter(BaseAttributeGetter):
def get_value(self, product: Product):
client: Client = product.client
client_details: ClientDetails = client.details
result = client_details.inn
if not result:
result = ''
return result
return client_details.inn

View File

@@ -0,0 +1,7 @@
from barcodes.attributes.base import BaseAttributeGetter
from models import Product
class SizeAttributeGetter(BaseAttributeGetter):
def get_value(self, product: Product):
return product.size