42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
import uuid
|
|
|
|
from barker.models.meta import Base
|
|
from sqlalchemy import Boolean, Column, ForeignKey, Integer, Unicode, text
|
|
from sqlalchemy.dialects.postgresql import UUID
|
|
from sqlalchemy.orm import relationship
|
|
|
|
|
|
class FoodTable(Base):
|
|
__tablename__ = "food_tables"
|
|
|
|
id = Column(
|
|
"id", UUID(as_uuid=True), primary_key=True, server_default=text("gen_random_uuid()"), default=uuid.uuid4
|
|
)
|
|
name = Column("name", Unicode(255), nullable=False, unique=True)
|
|
seats = Column("seats", Integer, nullable=False)
|
|
section_id = Column("section_id", UUID(as_uuid=True), ForeignKey("sections.id"), nullable=False)
|
|
is_active = Column("is_active", Boolean, nullable=False)
|
|
sort_order = Column("sort_order", Integer, nullable=False)
|
|
|
|
section = relationship("Section", foreign_keys=section_id)
|
|
|
|
@property
|
|
def __name__(self):
|
|
return self.name
|
|
|
|
def __init__(
|
|
self,
|
|
name=None,
|
|
seats=None,
|
|
section_id=None,
|
|
is_active=None,
|
|
sort_order=0,
|
|
id_=None,
|
|
):
|
|
self.name = name
|
|
self.seats = seats
|
|
self.section_id = section_id
|
|
self.is_active = is_active
|
|
self.sort_order = sort_order
|
|
self.id = id_
|