feat: modules, products, services, services kits

This commit is contained in:
2025-09-16 10:54:10 +04:00
parent be8052848c
commit 276626d6f7
55 changed files with 1791 additions and 34 deletions

View File

@ -0,0 +1,28 @@
from typing import TYPE_CHECKING
from sqlalchemy import ForeignKey
from sqlalchemy.orm import Mapped, mapped_column, relationship
from models.base import BaseModel
from models.mixins import PriceMixin
if TYPE_CHECKING:
from models import Deal
from modules.fulfillment_base.models import Service
class DealService(BaseModel, PriceMixin):
__tablename__ = "fulfillment_base_deal_services"
deal_id: Mapped[int] = mapped_column(ForeignKey("deals.id"), primary_key=True)
deal: Mapped["Deal"] = relationship(backref="deal_services")
service_id: Mapped[int] = mapped_column(
ForeignKey("fulfillment_base_services.id"), primary_key=True
)
service: Mapped["Service"] = relationship()
quantity: Mapped[int] = mapped_column(default=1)
is_fixed_price: Mapped[bool] = mapped_column(
default=False, server_default="0", comment="Фиксированная цена"
)