model.py 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. from sqlalchemy import Integer, String, Date, Time
  2. from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column
  3. from sqlalchemy.dialects.mysql.base import TINYINT, TEXT
  4. from datetime import date, time
  5. class Base(DeclarativeBase):
  6. pass
  7. class AworkProjekt(Base):
  8. __tablename__ = "awork_projekte"
  9. awork_project_id: Mapped[str] = mapped_column(String(50), primary_key=True)
  10. awork_company_id: Mapped[str] = mapped_column(String(50))
  11. projekt_name: Mapped[str] = mapped_column(String(100))
  12. projekt_status: Mapped[str] = mapped_column(String(20))
  13. projekt_typ: Mapped[str] = mapped_column(String(50))
  14. projekt_allgemein: Mapped[int] = mapped_column(TINYINT, default=0)
  15. kunde_name: Mapped[str] = mapped_column(String(100))
  16. tasks_count: Mapped[int] = mapped_column(Integer, default=0)
  17. tracked_duration: Mapped[int] = mapped_column(Integer, default=0)
  18. class Comment(Base):
  19. __tablename__ = "status_kommentar"
  20. id: Mapped[int] = mapped_column(Integer, primary_key=True)
  21. datum: Mapped[date] = mapped_column(Date)
  22. kunde: Mapped[str] = mapped_column(String(50))
  23. start: Mapped[time] = mapped_column(Time)
  24. benutzer: Mapped[str] = mapped_column(String(50))
  25. benutzer2: Mapped[str] = mapped_column(String(50), nullable=True)
  26. fehler: Mapped[int] = mapped_column(Integer)
  27. status: Mapped[int] = mapped_column(Integer)
  28. kommentar: Mapped[TEXT] = mapped_column(TEXT)
  29. awork_project_id: Mapped[str] = mapped_column(String(50), nullable=True)
  30. awork_task_id: Mapped[str] = mapped_column(String(50), nullable=True)
  31. class User(Base):
  32. __tablename__ = "benutzer"
  33. benutzer: Mapped[str] = mapped_column(String(50), primary_key=True)
  34. name: Mapped[str] = mapped_column(String(50))
  35. vorname: Mapped[str] = mapped_column(String(50))
  36. email: Mapped[str] = mapped_column(String(100))
  37. passwort: Mapped[str] = mapped_column(String(255))
  38. aktiv: Mapped[int] = mapped_column(TINYINT, default=1)
  39. awork_user_id: Mapped[str] = mapped_column(String(50), nullable=True)