from sqlalchemy import Float, Integer, String, Text from sqlalchemy.orm import Mapped, mapped_column from app.db.base import Base, UUIDMixin, TenantMixin, TimestampMixin class CatalogMarca(Base, UUIDMixin, TenantMixin, TimestampMixin): __tablename__ = "catalog_marci" denumire: Mapped[str] = mapped_column(String(100)) activ: Mapped[int] = mapped_column(Integer, default=1, server_default="1") class CatalogModel(Base, UUIDMixin, TimestampMixin): __tablename__ = "catalog_modele" marca_id: Mapped[str] = mapped_column(String(36), index=True) denumire: Mapped[str] = mapped_column(String(100)) class CatalogAnsamblu(Base, UUIDMixin, TenantMixin, TimestampMixin): __tablename__ = "catalog_ansamble" denumire: Mapped[str] = mapped_column(String(100)) class CatalogNorma(Base, UUIDMixin, TenantMixin, TimestampMixin): __tablename__ = "catalog_norme" cod: Mapped[str | None] = mapped_column(String(50)) denumire: Mapped[str] = mapped_column(Text) ore_normate: Mapped[float] = mapped_column(Float, default=0, server_default="0") ansamblu_id: Mapped[str | None] = mapped_column(String(36), index=True) class CatalogPret(Base, UUIDMixin, TenantMixin, TimestampMixin): __tablename__ = "catalog_preturi" denumire: Mapped[str] = mapped_column(String(200)) pret: Mapped[float] = mapped_column(Float, default=0, server_default="0") um: Mapped[str] = mapped_column(String(10)) class CatalogTipDeviz(Base, UUIDMixin, TenantMixin, TimestampMixin): __tablename__ = "catalog_tipuri_deviz" denumire: Mapped[str] = mapped_column(String(100)) class CatalogTipMotor(Base, UUIDMixin, TenantMixin, TimestampMixin): __tablename__ = "catalog_tipuri_motoare" denumire: Mapped[str] = mapped_column(String(50))