76 lines
2.6 KiB
Markdown
76 lines
2.6 KiB
Markdown
# 班级操行分管理系统
|
||
|
||
基于 Python FastAPI 开发的班级操行分管理系统,支持学生端、管理端、家长端三端访问,实现操行分管理、作业提交跟踪、考勤记录等功能。
|
||
|
||
## 主要功能
|
||
|
||
### 学生端
|
||
- 查询个人当前操行总分
|
||
- 查看个人加减分历史明细(时间、分数变化、原因、操作人)
|
||
- 查看个人作业提交情况
|
||
- 查看个人考勤记录
|
||
- 修改个人登录密码(首次登录强制修改)
|
||
|
||
### 家长端
|
||
- 查询子女当前操行总分
|
||
- 查看子女作业提交情况
|
||
- 查看子女考勤记录
|
||
|
||
### 管理端
|
||
|
||
**班主任权限:**
|
||
- 学生管理:新增/编辑/删除学生、批量导入学生(JSON)
|
||
- 操行分管理:对学生进行加减分、撤销任何扣分记录、查看全班历史记录
|
||
- 作业管理:发布作业、查看提交情况
|
||
- 考勤管理:查看全班考勤记录
|
||
- 科目管理:动态增删学科
|
||
- 管理员管理:添加班长/科代表/考勤委员/劳动委员
|
||
|
||
**班长权限:**
|
||
- 操行分管理:对学生进行加减分(±5分以内)、撤销任何人的扣分记录、查看全班历史记录
|
||
|
||
**科代表权限:**
|
||
- 作业管理:更新作业提交状态、关联扣分(仅扣分,按规则)
|
||
- 历史记录:仅查看自己提交的操作记录
|
||
|
||
**考勤委员权限:**
|
||
- 考勤管理:记录考勤状态、关联扣分(仅扣分,按规则)
|
||
- 历史记录:仅查看自己提交的操作记录
|
||
|
||
**劳动委员权限:**
|
||
- 操行分管理:以卫生值日为理由进行加减分(固定 ±1 分)
|
||
- 历史记录:仅查看自己提交的操作记录
|
||
|
||
## 技术栈
|
||
|
||
| 层级 | 技术 | 版本 |
|
||
|------|------|------|
|
||
| 后端框架 | FastAPI | 0.104+ |
|
||
| 数据库 | MySQL | 5.7 |
|
||
| 缓存 | Redis | 7.x |
|
||
| 前端 | PHP | 8.0 |
|
||
| Web服务器 | Nginx | 1.28+ |
|
||
|
||
## 角色权限一览表
|
||
|
||
| 角色 | 操行分查看 | 操行分加减 | 撤销扣分 | 历史记录查看 |
|
||
|------|-----------|-----------|---------|-------------|
|
||
| 班主任 | 全班 | 无限制 | 可撤销任何记录 | 全班所有记录 |
|
||
| 班长 | 全班 | ±5分 | 可撤销任何记录 | 全班所有记录 |
|
||
| 科代表 | 全班 | 仅扣分(按规则) | 不可撤销 | 仅自己提交的 |
|
||
| 考勤委员 | 全班 | 仅扣分(按规则) | 不可撤销 | 仅自己提交的 |
|
||
| 劳动委员 | 全班 | 仅±1分(卫生值日) | 不可撤销 | 仅自己提交的 |
|
||
| 学生 | 自己 | 无 | 无 | 自己的历史 |
|
||
| 家长 | 子女总分 | 无 | 无 | 不可见详情 |
|
||
|
||
## 安装部署
|
||
|
||
详见 [INSTALL.md](INSTALL.md)
|
||
|
||
## 使用说明
|
||
|
||
详见 [USAGE.md](USAGE.md)
|
||
|
||
## 许可证
|
||
|
||
本项目使用 [MIT License](LICENSE) 许可证 |