37 lines
1.0 KiB
Python
37 lines
1.0 KiB
Python
from typing import TYPE_CHECKING
|
|
|
|
from sqlalchemy import ForeignKey
|
|
from sqlalchemy.orm import Mapped, mapped_column, relationship
|
|
|
|
from models.base import BaseModel
|
|
|
|
if TYPE_CHECKING:
|
|
from modules.fulfillment_base.models import Product
|
|
|
|
|
|
class ProductBarcode(BaseModel):
|
|
__tablename__ = "fulfillment_base_product_barcodes"
|
|
|
|
product_id: Mapped[int] = mapped_column(
|
|
ForeignKey("fulfillment_base_products.id"),
|
|
primary_key=True,
|
|
)
|
|
product: Mapped["Product"] = relationship(back_populates="barcodes")
|
|
|
|
barcode: Mapped[str] = mapped_column(
|
|
primary_key=True, index=True, comment="ШК товара"
|
|
)
|
|
|
|
|
|
class ProductBarcodeImage(BaseModel):
|
|
__tablename__ = "fulfillment_base_product_barcode_images"
|
|
|
|
product_id: Mapped[int] = mapped_column(
|
|
ForeignKey("fulfillment_base_products.id"),
|
|
primary_key=True,
|
|
comment="ID товара",
|
|
)
|
|
product: Mapped["Product"] = relationship(back_populates="barcode_image")
|
|
|
|
filename: Mapped[str] = mapped_column()
|