Files
Fulfillment-Backend/models/marketplace_products.py

41 lines
1.4 KiB
Python

from sqlalchemy import ForeignKey, BigInteger
from sqlalchemy.orm import Mapped, relationship, mapped_column
from models import BaseModel
from models import Marketplace
from models import Product
class WildberriesProduct(BaseModel):
__tablename__ = 'wildberries_products'
marketplace_id: Mapped[int] = mapped_column(ForeignKey('marketplaces.id'), primary_key=True)
marketplace: Mapped["Marketplace"] = relationship()
product_id: Mapped[int] = mapped_column(ForeignKey('products.id'), primary_key=True)
product: Mapped["Product"] = relationship(back_populates='wildberries_products')
nm_uuid: Mapped[str] = mapped_column(nullable=False)
class OzonProduct(BaseModel):
__tablename__ = 'ozon_products'
marketplace_id: Mapped[int] = mapped_column(ForeignKey('marketplaces.id'), primary_key=True)
marketplace: Mapped["Marketplace"] = relationship()
product_id: Mapped[int] = mapped_column(ForeignKey('products.id'), primary_key=True)
product: Mapped["Product"] = relationship()
ozon_product_id: Mapped[int] = mapped_column(BigInteger, nullable=False)
class YandexProduct(BaseModel):
__tablename__ = 'yandex_products'
marketplace_id: Mapped[int] = mapped_column(ForeignKey('marketplaces.id'), primary_key=True)
marketplace: Mapped["Marketplace"] = relationship()
product_id: Mapped[int] = mapped_column(ForeignKey('products.id'), primary_key=True)
product: Mapped["Product"] = relationship()