22 lines
756 B
Python
22 lines
756 B
Python
from __future__ import annotations
|
|
|
|
import uuid
|
|
from datetime import datetime
|
|
|
|
from sqlalchemy import DateTime, ForeignKey, String
|
|
from sqlalchemy.orm import Mapped, mapped_column, relationship
|
|
|
|
from app.db.base_class import Base
|
|
|
|
|
|
class EmployeeChangeLog(Base):
|
|
__tablename__ = "employee_change_logs"
|
|
|
|
id: Mapped[str] = mapped_column(String(36), primary_key=True, default=lambda: str(uuid.uuid4()))
|
|
employee_id: Mapped[str] = mapped_column(ForeignKey("employees.id"), index=True)
|
|
action: Mapped[str] = mapped_column(String(255))
|
|
owner: Mapped[str] = mapped_column(String(100))
|
|
occurred_at: Mapped[datetime] = mapped_column(DateTime(timezone=True), index=True)
|
|
|
|
employee = relationship("Employee", back_populates="change_logs")
|