Skip to content

排班表管理系统,排班表管理系统是一款专为各类组织设计的可视化排班工具,适用于医院、工厂、餐厅、零售店、学校、安保公司等多种场景。系统采用直观的日历界面和列表视图,帮助管理人员高效安排员工工作时间。

License

Notifications You must be signed in to change notification settings

duma520/Schedule_Manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

软件截图:

image

image

image

image

image

image

image

image

image

image

image

排班表管理系统 - 全面说明书

1. 项目概述

1.1 简介

排班表管理系统是一款专为各类组织设计的智能化排班解决方案,可广泛应用于医院、工厂、商场、酒店、学校等需要复杂排班管理的场景。该系统采用现代化的图形界面,结合强大的数据库功能,为用户提供直观、高效的排班管理体验。

1.2 核心功能

  • 多用户支持:支持创建多个用户账号,各用户拥有独立的排班数据库
  • 多样化视图:提供月视图、双月视图、年视图和双年视图,满足不同查看需求
  • 批量操作:支持批量添加、修改和删除排班记录
  • 智能提醒:自动备份和恢复功能确保数据安全
  • 个性化配置:可自定义界面显示内容和样式

1.3 技术特点

  • 采用Python 3.8+开发
  • 使用PyQt5构建图形界面
  • SQLite3作为数据库引擎
  • 支持跨平台运行(Windows/macOS/Linux)
  • 符合MIT开源协议

2. 详细功能说明

2.1 用户管理

2.1.1 用户注册与登录

系统采用多用户架构,每个用户可以创建自己的排班数据库。登录界面提供:

  • 用户名选择/输入
  • 密码保护(可选)
  • 记住密码功能
  • 用户注册/删除/修改功能

专业说明: 系统使用SQLite数据库存储用户信息,密码采用明文存储(建议在实际部署时改为哈希加密)。每个用户的数据存储在独立的数据库文件中(user_用户名.db),实现了数据隔离。

2.1.2 用户切换

已登录用户可随时切换账户,系统会自动保存当前视图状态,切换后恢复。

2.2 排班管理

2.2.1 添加排班

  • 单条添加:通过表单逐一添加排班记录
  • 批量添加:选择多个员工、多个日期一次性添加排班
  • 快捷添加:在日历视图上右键点击日期快速添加

专业说明: 批量添加功能使用事务处理,确保所有记录要么全部成功,要么全部失败,保持数据一致性。排班记录包含员工姓名、部门、职位、日期、班次类型和备注等字段。

2.2.2 编辑排班

  • 双击排班记录或使用右键菜单进行编辑
  • 保留最近使用的部门和班次类型,提高输入效率

专业说明: 编辑操作采用乐观锁机制,直接更新数据库记录,不进行显式锁定,适合多用户轻度并发的场景。

2.2.3 删除排班

  • 单条删除:选择后确认删除
  • 批量删除:通过过滤条件选择多条记录一次性删除
  • 右键菜单删除:在日历视图上快速删除

数据安全: 所有删除操作都要求确认,且提供备份恢复功能防止误删。

2.3 视图模式

2.3.1 日历视图

  • 月视图:显示单个月份的排班情况
  • 双月视图:并排显示当前月和下一月
  • 年视图:以紧凑形式显示全年12个月
  • 双年视图:并排显示当前年和下一年

UI设计: 采用马卡龙色系(300种颜色)为不同员工分配不同背景色,提高视觉区分度。周末日期显示为红色,工作日为黑色。

2.3.2 列表视图

  • 表格形式展示排班记录
  • 支持按日期范围、部门、姓名筛选
  • 支持排序和多选操作

技术实现: 使用QTableView和QStandardItemModel构建,支持大数据量下的高效滚动和渲染。

2.4 数据管理

2.4.1 自动备份

  • 每天自动备份一次数据库
  • 备份文件存储在程序目录下的backups文件夹
  • 保留30天内的自动备份

2.4.2 手动备份

用户可随时手动触发备份,备份文件包含时间戳和备份类型信息。

2.4.3 数据恢复

  • 从备份列表中选择恢复点
  • 恢复前自动创建回滚备份
  • 支持查看备份详情(时间、类型、大小)

专业说明: 备份机制采用文件级备份,恢复时先创建回滚文件,确保操作可逆。备份文件名包含时间戳和类型(自动/手动/回滚),便于管理。

2.5 系统配置

2.5.1 日历显示配置

  • 控制显示内容:日期、姓名、部门、班次
  • 调整字体大小:日期字体和内容字体
  • 配置保存在用户本地,随账号持久化

2.5.2 班次类型管理

  • 内置默认班次:早班、中班、晚班、全天班
  • 支持自定义班次名称和时间段
  • 模糊班次支持(不指定具体时间)

3. 使用指南

3.1 快速入门

3.1.1 首次使用

  1. 启动程序,注册新用户
  2. 进入主界面,熟悉视图切换
  3. 添加部门和员工信息
  4. 开始排班

3.1.2 基本操作流程

  1. 添加排班:点击"添加排班"按钮或右键日历日期
  2. 编辑排班:双击记录或使用右键菜单
  3. 删除排班:选择后点击删除按钮或使用右键菜单
  4. 切换视图:使用顶部工具栏按钮

3.2 高级功能

3.2.1 批量操作技巧

  • 在批量添加时,可以使用日期范围+工作日过滤快速选择多个日期
  • 批量删除前先用过滤条件缩小范围
  • 按住Ctrl键可多选记录

3.2.2 快捷键

  • 回车键:在对话框中快速确认
  • 方向键:在日历视图中导航日期
  • Ctrl+N:快速添加排班(列表视图)

4. 技术架构

4.1 系统架构图

[用户界面层]
  ↓
[业务逻辑层] - 排班管理、用户管理、备份恢复
  ↓
[数据访问层] - SQLite数据库操作
  ↓
[存储层] - 用户数据库文件、备份文件

4.2 数据库设计

4.2.1 用户数据库(users.db)

  • users表:存储用户账号信息
  • 字段:id, username, password, db_file, last_login, has_password

4.2.2 排班数据库(user_用户名.db)

  • departments表:部门信息
  • schedules表:排班记录
  • custom_shifts表:自定义班次类型

4.3 性能优化

  • 使用索引加速查询
  • 分批加载大数据集
  • 采用模型-视图架构减少内存占用
  • 使用QPixmap缓存渲染结果

5. 应用场景示例

5.1 医院护士排班

  • 创建科室:内科、外科、急诊等
  • 设置三班倒班次:早8-晚4,晚4-夜12,夜12-早8
  • 批量分配月度排班
  • 导出排班表供护士查看

5.2 零售门店排班

  • 按部门:收银、理货、客服
  • 设置早晚班和周末特别班次
  • 使用年视图规划节假日排班
  • 快速调整临时调班

5.3 工厂生产线排班

  • 创建各生产线班组
  • 设置四班三运转等复杂班次
  • 批量复制周排班到整月
  • 标注特殊岗位和技能要求

6. 常见问题解答

6.1 一般用户问题

Q:如何快速找到某天的排班? A:在日历视图中点击日期,或在列表视图中设置日期范围筛选。

Q:能否打印排班表? A:目前支持截图打印,未来版本将添加导出PDF功能。

Q:如何区分不同员工的排班? A:系统自动为不同员工分配不同颜色,可在日历视图中直观区分。

6.2 技术问题

Q:数据存储在哪里?如何迁移? A:数据存储在程序目录下,迁移时复制user_用户名.db文件即可。

Q:支持多少用户同时使用? A:由于使用文件数据库,建议单用户使用,多用户可能产生冲突。

Q:如何实现自定义报表? A:可通过SQL查询导出数据到Excel进行进一步处理。

7. 版本更新记录

版本 1.46.0 (2025-06-09)

  • 新增双年视图模式
  • 优化视图切换性能
  • 修复备份恢复功能中的类型显示问题
  • 改进用户界面配色方案

版本 1.45.0 (2025-05-15)

  • 添加批量删除功能
  • 改进日历右键菜单
  • 优化数据库查询性能
  • 修复若干小错误

版本 1.40.0 (2025-04-01)

  • 新增年视图模式
  • 添加自动备份功能
  • 改进用户管理界面
  • 增加马卡龙配色方案

8. 版权与支持

版权声明 © 永久 杜玛 保留所有权利

项目地址https://github.com/duma520

问题报告:通过GitHub Issues提交

注意:我们不提供私人邮箱支持,所有技术支持都通过公开渠道进行,以便其他用户也能受益。


本说明书持续更新,随软件版本升级而修订。建议用户定期查看GitHub获取最新文档。

About

排班表管理系统,排班表管理系统是一款专为各类组织设计的可视化排班工具,适用于医院、工厂、餐厅、零售店、学校、安保公司等多种场景。系统采用直观的日历界面和列表视图,帮助管理人员高效安排员工工作时间。

Resources

License

Stars

Watchers

Forks

Packages

No packages published