- Implemented service classes for PedimentoConfigParameters, PedimentoConfigSurcharges, PedimentoConfigUpdateRectification, PedimentoConfigUpdates, PedimentoCustomsOffices, PedimentoDates, PedimentoDecrementables, PedimentoIncrementables, PedimentoIndexes, PedimentoPayments, PedimentoRectificationDestination, PedimentoRectificationOrigin, PedimentoTransportMeans, and PedimentoValidation. - Each service class includes methods for CRUD operations: create, read, update, and delete. - Added a main router for the API v1, integrating various modules including authentication, tenants, licenses, and pedimentos. - Created models for PedimentoValidation with appropriate constraints and relationships.
30 lines
1.5 KiB
Python
30 lines
1.5 KiB
Python
from sqlalchemy import DateTime, ForeignKeyConstraint, Integer, Numeric, PrimaryKeyConstraint, SmallInteger, String, UniqueConstraint, text
|
|
from sqlalchemy.orm import Mapped, mapped_column, relationship
|
|
from sqlalchemy.orm.base import Mapped
|
|
from core.database import Base
|
|
|
|
class PedimentoDecrementables(Base):
|
|
__tablename__ = 'pedimento_decrementables'
|
|
__table_args__ = (
|
|
ForeignKeyConstraint(['tenant_id'], ['a76.tenants.id']),
|
|
ForeignKeyConstraint(['pedimento_id'], ['a76.pedimentos.id'], ondelete='CASCADE', name='fk_pedimento_decrementables'),
|
|
PrimaryKeyConstraint('id', name='pedimento_decrementables_pkey'),
|
|
UniqueConstraint('pedimento_id', name='pedimento_decrementables_pedimento_id_key'),
|
|
{'schema': 'a76'}
|
|
)
|
|
|
|
id = mapped_column(Integer)
|
|
pedimento_id = mapped_column(Integer, nullable=False)
|
|
tenant_id = mapped_column(Integer, nullable=False, index=True)
|
|
freight = mapped_column(Numeric(13, 2))
|
|
insurance = mapped_column(Numeric(13, 2))
|
|
loading = mapped_column(Numeric(13, 2))
|
|
unloading = mapped_column(Numeric(13, 2))
|
|
others = mapped_column(Numeric(13, 2))
|
|
currency = mapped_column(String(3))
|
|
currency_factor = mapped_column(Numeric(15, 8))
|
|
not_affect_usd_value = mapped_column(SmallInteger)
|
|
not_affect_customs_value = mapped_column(SmallInteger)
|
|
created_at = mapped_column(DateTime, server_default=text('CURRENT_TIMESTAMP'))
|
|
|
|
pedimento: Mapped['Pedimentos'] = relationship('Pedimentos', back_populates='pedimento_decrementables') |