- time_utils 新增 to_beijing(统一naive按UTC转北京时间) + working_duration_hours(排除周末/节假日) - Holiday 模型 + alembic 迁移建 holidays 表 - GET/POST/DELETE /holidays 节假日管理接口,可随时配置放假日期
22 lines
658 B
Python
22 lines
658 B
Python
"""节假日模型 — 放假日期配置,用于工作日时长计算"""
|
|
from datetime import date
|
|
from sqlalchemy import Date, String
|
|
from sqlalchemy.orm import Mapped, mapped_column
|
|
|
|
from app.models.base import Base
|
|
|
|
|
|
class Holiday(Base):
|
|
__tablename__ = "holidays"
|
|
|
|
id: Mapped[int] = mapped_column(primary_key=True, autoincrement=True)
|
|
day: Mapped[date] = mapped_column(
|
|
Date, unique=True, index=True, comment="放假日期",
|
|
)
|
|
name: Mapped[str | None] = mapped_column(
|
|
String(100), nullable=True, comment="放假说明(如国庆节)",
|
|
)
|
|
|
|
def __repr__(self) -> str:
|
|
return f"<Holiday {self.day}>"
|