智能排班系统

作者:Administrator 发布时间: 2025-12-08 阅读量:0 评论数:0

智能排班系统说明文档

系统概述

智能排班系统是一个基于Python和Tkinter开发的图形界面应用程序,主要用于管理和生成节假日及周末的值班安排。系统支持从Excel文件导入人员信息,自动获取节假日数据,并生成合理的排班表。

主要功能

  1. Excel人员信息导入
  2. 节假日数据自动获取
  3. 智能排班生成
  4. 排班结果导出(支持Excel和CSV格式)
  5. 上次导入文件自动加载

核心模块说明

1. 数据库管理(DatabaseManager类)

负责系统数据的持久化存储,主要功能包括:

  • 创建和管理SQLite数据库
  • 存储节假日信息
  • 记录最近使用的JSON文件路径
  • 提供数据查询接口

2. 人员管理(PeopleManager类)

处理人员信息的导入和转换,主要功能:

  • 从Excel文件导入人员信息
  • 将人员信息转换为JSON格式
  • 数据格式验证

3. 排班核心逻辑(Scheduler类)

实现排班算法和节假日管理:

  • 在线获取节假日数据
  • 生成指定时间范围的排班表
  • 处理节假日和周末的特殊排班

4. 主界面(MainApplication类)

提供图形用户界面,包含:

  • 文件导入导出功能
  • 排班参数设置
  • 排班结果显示
  • 状态信息提示

数据结构

人员信息格式

{
    "name": "姓名",
    "phone": "电话号码"
}

排班结果格式

{
    "date": "日期",
    "name": "值班人员",
    "phone": "联系电话",
    "type": "节假日/周末"
}

使用说明

  1. 准备人员Excel文件

    • 必须包含"姓名"列
    • 可选包含"电话"列
  2. 导入人员信息

    • 点击"导入Excel"按钮
    • 选择Excel文件
    • 系统自动转换为JSON格式并保存
  3. 设置排班参数

    • 选择开始日期(默认为当天)
    • 输入需要排班的天数(1-366之间)
  4. 生成排班表

    • 点击"生成排班"按钮
    • 系统自动获取节假日信息
    • 生成排班结果
  5. 导出结果

    • 点击"导出结果"按钮
    • 选择导出格式(Excel或CSV)
    • 选择保存位置

注意事项

  1. 确保网络连接正常,以便获取节假日数据
  2. Excel文件路径避免使用中文或特殊字符
  3. 排班天数需在1-366天之间
  4. 日期格式必须为YYYY-MM-DD
  5. 电话号码为可选信息,未提供时显示为N/A

排班系统1

排班系统2

排班系统3

评论