企业日历管理

工作日与节假日设置——影响定时任务和报表生成。

企业日历管理

企业日历用于标记工作日和节假日,为定时任务调度和报表生成提供日期依据。

功能概述

通过企业日历,管理员可以:

  • 标记法定节假日和调休工作日
  • 设置企业自定义的休息日(如年度团建日)
  • 为定时任务提供「仅工作日执行」的判断依据
  • 影响日报/周报/月报等报表的统计周期

API 接口

获取年度日历

GET /api/org-calendar/:year

响应示例:

{
  "year": 2025,
  "holidays": [
    {"date": "2025-01-01", "name": "元旦", "type": "holiday"},
    {"date": "2025-01-28", "name": "春节", "type": "holiday"},
    {"date": "2025-01-26", "name": "春节调休", "type": "workday"}
  ]
}

批量创建/更新日历

POST /api/org-calendar
{
  "entries": [
    {"date": "2025-05-01", "name": "劳动节", "type": "holiday"},
    {"date": "2025-05-05", "name": "劳动节", "type": "holiday"},
    {"date": "2025-04-27", "name": "劳动节调休", "type": "workday"}
  ]
}

查询指定日期是否为工作日

GET /api/org-calendar/is-workday/:date

响应:

{"date": "2025-05-01", "is_workday": false}

对定时任务的影响

定时任务(Schedule)可以配置为仅在工作日执行。系统在触发 cron 任务前会调用日历接口判断当天是否为工作日,非工作日则跳过执行。

在 Web 面板中设置

  1. 进入「系统管理」→「企业日历」
  2. 选择年份,在日历视图中点击日期切换工作日/休息日状态
  3. 支持批量导入国家法定假日模板
  4. 修改即时生效,无需重启服务