feauture/catalogo-clases-inventario-UME

This commit is contained in:
2026-06-02 11:12:38 -06:00
parent e612037668
commit e0b08dfa8a
8 changed files with 374 additions and 11 deletions

View File

@@ -42,6 +42,12 @@ class Class(Base, TenantScopedMixin, TimestampMixin):
["a76.units_of_measure.code", "a76.units_of_measure.tenant_id",
"a76.units_of_measure.company_id"],
),
ForeignKeyConstraint(
["stock_unit_of_measure", "tenant_id", "company_id"],
["a76.units_of_measure.code", "a76.units_of_measure.tenant_id",
"a76.units_of_measure.company_id"],
name="fk_classes_stock_uom",
),
UniqueConstraint(
"tenant_id",
"company_id",
@@ -69,6 +75,9 @@ class Class(Base, TenantScopedMixin, TimestampMixin):
unit_of_measure: Mapped[Optional[str]] = mapped_column(
String(5)
) # UNIMED - homologated from UNIMEDIDA
stock_unit_of_measure: Mapped[Optional[str]] = mapped_column(
String(5)
) # UMEXISTENCIA - UM Existencia (SCAII/inventory)
# Tariff fractions
fraction: Mapped[Optional[str]] = mapped_column(String(20)) # FRACCION
@@ -97,7 +106,11 @@ class Class(Base, TenantScopedMixin, TimestampMixin):
)
unit_of_measure_info: Mapped[Optional["UnitOfMeasure"]] = relationship(
foreign_keys=[unit_of_measure]
)
)
stock_unit_of_measure_info: Mapped[Optional["UnitOfMeasure"]] = relationship(
foreign_keys=[stock_unit_of_measure],
viewonly=True,
)
# Inverse relationship with GParts that have this class
parts: Mapped[list["Part"]] = relationship(