v0.1.1 update

This commit is contained in:
serversdwn
2025-12-02 06:36:13 +00:00
parent 938e950dd6
commit 90ecada35f
17 changed files with 867 additions and 221 deletions

View File

@@ -1,18 +1,31 @@
from sqlalchemy import Column, String, DateTime
from sqlalchemy import Column, String, DateTime, Boolean, Text
from datetime import datetime
from backend.database import Base
class Emitter(Base):
"""Emitter model representing a seismograph unit in the fleet"""
__tablename__ = "emitters"
id = Column(String, primary_key=True, index=True)
unit_type = Column(String, nullable=False)
last_seen = Column(DateTime, default=datetime.utcnow)
last_file = Column(String, nullable=False)
status = Column(String, nullable=False) # OK, Pending, Missing
status = Column(String, nullable=False)
notes = Column(String, nullable=True)
def __repr__(self):
return f"<Emitter(id={self.id}, type={self.unit_type}, status={self.status})>"
class RosterUnit(Base):
"""
Roster table: represents our *intended assignment* of a unit.
This is editable from the GUI.
"""
__tablename__ = "roster"
id = Column(String, primary_key=True, index=True)
unit_type = Column(String, default="series3")
deployed = Column(Boolean, default=True)
retired = Column(Boolean, default=False)
note = Column(String, nullable=True)
project_id = Column(String, nullable=True)
location = Column(String, nullable=True)
last_updated = Column(DateTime, default=datetime.utcnow)