29 lines
1.1 KiB
Python
29 lines
1.1 KiB
Python
from sqlalchemy import Column, Integer, String, Float, DateTime, ForeignKey, CheckConstraint, Index, Boolean, Table, UniqueConstraint
|
|
from sqlalchemy.orm import relationship
|
|
from app.db.database import Base
|
|
from sqlalchemy import event
|
|
from sqlalchemy.orm import Session
|
|
from sqlalchemy import func
|
|
import logging
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
class PricingEvent(Base):
|
|
__tablename__ = "pricing_events"
|
|
|
|
id = Column(Integer, primary_key=True)
|
|
inventory_item_id = Column(Integer, ForeignKey("inventory_items.id"))
|
|
price = Column(Float)
|
|
price_used = Column(String)
|
|
price_reason = Column(String)
|
|
free_shipping_adjustment = Column(Boolean, default=False)
|
|
created_at = Column(DateTime(timezone=True), server_default=func.now())
|
|
updated_at = Column(DateTime(timezone=True), server_default=func.now(), onupdate=func.now())
|
|
deleted_at = Column(DateTime(timezone=True), nullable=True)
|
|
|
|
# Relationships
|
|
inventory_item = relationship(
|
|
"InventoryItem",
|
|
primaryjoin="PricingEvent.inventory_item_id == foreign(InventoryItem.id)",
|
|
viewonly=True
|
|
) |