# course-work-hub-zysj **Repository Path**: thiswind/course-work-hub-zysj ## Basic Information - **Project Name**: course-work-hub-zysj - **Description**: No description available - **Primary Language**: Unknown - **License**: GPL-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-13 - **Last Updated**: 2025-06-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 专业实践 - 学生作业提交系统 这是一个基于Flask的学生作业收集系统,用于收集学生的三次实验作业。 ## 功能特点 - 智能认证系统(首次登录用学号+姓名,后续用学号+密码) - 支持2个实验的作业提交(专业实践报告、答辩PPT) - 只接受PDF格式的作业文件,自动重命名为 `实验X-学号-姓名.pdf` - 自动生成16位强密码,确保数据安全 - 文件预览、删除、重新上传功能 - 响应式界面设计 ## 快速开始 ### 环境要求 - Linux系统 - Docker 和 docker-compose - Windows用户可以使用 WSL (Windows Subsystem for Linux) ### 安装步骤 1. **克隆项目**: ```bash git clone https://gitee.com/thiswind/course_work_hub.git cd course_work_hub ``` 2. **初始化项目**: ```bash ./init-project.sh ``` 3. **编辑学生信息**: ```bash # 编辑生成的CSV文件,替换为真实学生数据 vi 专业实践-学号-姓名.csv ``` 4. **启动系统**: ```bash docker-compose up -d ``` 5. **访问系统**:http://localhost:25612 ### 管理命令 ```bash # 查看服务状态 ./docker-manage.sh status # 查看运行日志 ./docker-manage.sh logs # 重启服务 ./docker-manage.sh restart # 停止服务 ./docker-manage.sh stop ``` ## 项目结构 ``` course_work_hub/ ├── app.py # Flask主应用 ├── requirements.txt # Python依赖 ├── 专业实践-学号-姓名.csv # 学生信息数据库 ├── templates/ # HTML模板 ├── static/ # 静态文件 ├── uploads/ # 作业存储目录 │ ├── 专业实践报告/ │ └── 答辩PPT/ ├── Dockerfile # Docker镜像配置 ├── docker-compose.yml # 容器编排配置 ├── docker-manage.sh # 管理脚本 └── init-project.sh # 项目初始化脚本 ``` ## 认证机制 ### 首次登录 1. 学生输入学号 2. 系统检测为首次登录,要求输入姓名验证身份 3. 验证成功后自动生成16位强密码 4. 密码显示页面提醒学生保存密码 ### 后续登录 - 用户名:学号 - 密码:系统生成的16位强密码 ### 安全特性 - 每个学生独立密码,防止互相干扰 - 密码包含大小写字母和数字,安全性高 - 防止恶意修改他人作业 ## 文件命名规则 上传的作业文件将自动重命名为:`实验X-学号-姓名.pdf` 示例: - `专业实践报告-2023XXXXXX-张同学.pdf` - `答辩PPT-2023XXXXXX-李同学.pdf` ## 重要提醒 ### 🔒 数据安全 - 学生信息CSV文件和uploads目录已被.gitignore排除,不会推送到远程仓库 - 请妥善保管学生真实信息,不要将其提交到版本控制系统 - 首次部署时必须运行 `./init-project.sh` 创建必需的文件和目录 ### ⚙️ 技术规格 - 运行端口:25612 - 文件大小限制:16MB - 支持文件格式:仅PDF - 基于Docker容器化部署,确保环境一致性 ## Windows用户 Windows用户请使用WSL (Windows Subsystem for Linux): 1. 安装WSL:在PowerShell(管理员模式)中运行 `wsl --install` 2. 重启计算机并安装Ubuntu 3. 在WSL环境中按照上述Linux步骤操作 ## 许可证 本项目基于 GPL v2 许可证开源。