refactor(models): clean up whitespace and update has_express_line type in Company model

This commit is contained in:
2026-01-21 13:09:29 -06:00
parent ce8712436e
commit 5db940b518

View File

@@ -1,6 +1,7 @@
"""
Modelo principal de Company
"""
from typing import Optional, TYPE_CHECKING
from sqlalchemy import Integer, String, SmallInteger, ForeignKey, Boolean
from sqlalchemy.orm import Mapped, mapped_column, relationship
@@ -19,39 +20,37 @@ if TYPE_CHECKING:
class Company(Base, TimestampMixin):
"""Información principal de la empresa"""
__tablename__ = "company"
__table_args__ = {"schema": "a76", "extend_existing": True}
# Primary key
id: Mapped[int] = mapped_column(Integer, primary_key=True)
tenant_id: Mapped[int] = mapped_column(
ForeignKey("core.tenants.id"),
nullable=False,
index=True
ForeignKey("core.tenants.id"), nullable=False, index=True
)
# Información básica
name: Mapped[Optional[str]] = mapped_column(String(256))
rfc: Mapped[Optional[str]] = mapped_column(String(30))
curp: Mapped[Optional[str]] = mapped_column(String(19))
main_activity: Mapped[Optional[str]] = mapped_column(String(80))
# Programa
program: Mapped[Optional[str]] = mapped_column(String(7))
program_number: Mapped[Optional[str]] = mapped_column(String(40))
prosec: Mapped[Optional[int]] = mapped_column(SmallInteger)
prosec_authorization: Mapped[Optional[str]] = mapped_column(String(20))
# Sectores
sector1: Mapped[Optional[str]] = mapped_column(String(150))
sector2: Mapped[Optional[str]] = mapped_column(String(150))
sector3: Mapped[Optional[str]] = mapped_column(String(5))
# Identificadores
manufacturer_id: Mapped[Optional[str]] = mapped_column(String(25))
broker_company: Mapped[Optional[str]] = mapped_column(String(6))
# Responsable
responsible: Mapped[Optional[str]] = mapped_column(String(80))
responsible_name: Mapped[Optional[str]] = mapped_column(String(20))
@@ -59,15 +58,15 @@ class Company(Base, TimestampMixin):
responsible_mother_last_name: Mapped[Optional[str]] = mapped_column(String(20))
responsible_rfc: Mapped[Optional[str]] = mapped_column(String(30))
position: Mapped[Optional[str]] = mapped_column(String(30))
# Configuración básica
logo: Mapped[Optional[str]] = mapped_column(String(255))
has_express_line: Mapped[Optional[str]] = mapped_column(String(2))
has_express_line: Mapped[Optional[bool]] = mapped_column(Boolean, default=False)
order_format_type: Mapped[Optional[str]] = mapped_column(String(19))
is_service_company: Mapped[Optional[bool]] = mapped_column(Boolean, default=False)
client_name: Mapped[Optional[str]] = mapped_column(String(300))
subassembly_mode: Mapped[Optional[str]] = mapped_column(String(7))
# Configuraciones técnicas (flags)
previous_code: Mapped[Optional[int]] = mapped_column(SmallInteger)
active_labels: Mapped[Optional[int]] = mapped_column(SmallInteger)
@@ -80,7 +79,7 @@ class Company(Base, TimestampMixin):
activate_facmexame: Mapped[Optional[int]] = mapped_column(SmallInteger)
part_reference: Mapped[Optional[int]] = mapped_column(SmallInteger)
international_firm: Mapped[Optional[int]] = mapped_column(SmallInteger)
# Configuraciones simples
ftp_key: Mapped[Optional[str]] = mapped_column(String(10))
sifra_path: Mapped[Optional[str]] = mapped_column(String(255))
@@ -88,59 +87,59 @@ class Company(Base, TimestampMixin):
sql_language: Mapped[Optional[str]] = mapped_column(String(19))
balance_operation_mode: Mapped[Optional[str]] = mapped_column(String(50))
inter_db_name: Mapped[Optional[str]] = mapped_column(String(100))
# ==================== RELACIONES CON SUBTABLAS ====================
addresses: Mapped[list["CompanyAddress"]] = relationship(
"CompanyAddress",
back_populates="company",
cascade="all, delete-orphan",
lazy="selectin"
lazy="selectin",
)
certification: Mapped[Optional["CompanyCertification"]] = relationship(
"CompanyCertification",
back_populates="company",
uselist=False,
cascade="all, delete-orphan",
lazy="selectin"
lazy="selectin",
)
digital_certificates: Mapped[list["CompanyDigitalCertificate"]] = relationship(
"CompanyDigitalCertificate",
back_populates="company",
cascade="all, delete-orphan",
lazy="selectin"
lazy="selectin",
)
ventanilla_unica: Mapped[Optional["CompanyVU"]] = relationship(
"CompanyVU",
back_populates="company",
uselist=False,
cascade="all, delete-orphan",
lazy="selectin"
lazy="selectin",
)
electronic_agent: Mapped[Optional["CompanyElectronicAgent"]] = relationship(
"CompanyElectronicAgent",
back_populates="company",
uselist=False,
cascade="all, delete-orphan",
lazy="selectin"
lazy="selectin",
)
prevalidator: Mapped[Optional["CompanyPrevalidator"]] = relationship(
"CompanyPrevalidator",
back_populates="company",
uselist=False,
cascade="all, delete-orphan",
lazy="selectin"
lazy="selectin",
)
cfdi: Mapped[Optional["CompanyCFDI"]] = relationship(
"CompanyCFDI",
back_populates="company",
uselist=False,
cascade="all, delete-orphan",
lazy="selectin"
)
lazy="selectin",
)