Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

网上请假审批与管理系统

这是一个基于 Flask + SQLite 的网上请假审批与管理系统,适合课程设计、实验报告和答辩演示。系统采用应用工厂模式,既可以通过 python app.py 本地启动,也保留后续部署到 Web 服务器的能力。

功能说明

  • 学生:提交包含开始/结束日期与时分的请假申请、查看自己的申请、修改或删除待审批申请。
  • 老师:查看请假记录、审批待审批申请、查看统计分析。
  • 管理员:管理用户、查看全部请假记录、删除申请、查看统计分析。
  • 注册流程:学生可直接注册;老师和管理员注册后需要管理员在“注册审批”中手动通过。
  • 查询与排序:支持关键字、状态、类型、日期范围筛选,以及按时间或状态排序。
  • 状态展示:待审批、已通过、进行中、已过期、已驳回;其中进行中和已过期会根据当前系统时间自动计算。
  • 统计可视化:展示状态分布、请假类型统计、月份趋势。
  • 安全要求:密码使用 werkzeug.security 哈希存储,业务页面均做登录和角色权限校验。

环境要求

  • Windows 10 及以上平台
  • Python 3.10 及以上版本

安装依赖

python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt

如果不创建虚拟环境,也可以直接执行:

python -m pip install -r requirements.txt

初始化数据库和演示数据

python seed.py

该命令可以重复执行。系统会幂等创建数据库表和演示账号,不会因为重复插入账号导致报错。

启动项目

python app.py

启动后访问:

http://127.0.0.1:5000

默认测试账号

角色 用户名 密码
管理员 admin 123456
老师 teacher 123456
学生 student 123456

运行测试

pytest

部署说明

项目在 app.py 中提供了 create_app() 应用工厂,部署到 Web 服务器时可导入该函数创建应用实例。config.py 集中管理 SECRET_KEY、数据库路径和调试配置,部署时应替换默认密钥并关闭调试模式。

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages