# resume-manager **Repository Path**: stone4j/resume-manager ## Basic Information - **Project Name**: resume-manager - **Description**: 简历管理 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-06 - **Last Updated**: 2026-03-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 简历批改管理系统 ## 功能需求 1. 上传简历文件 2. 根据文件名识别学生身份 3. 支持多次上传(版本管理) 4. 查看历史版本 5. 简历状态管理 ## 技术栈 - 后端: Node.js + Express - 前端: HTML + CSS + JavaScript - 存储: 本地文件系统 + JSON数据库 ## 目录结构 ``` resume_manager/ ├── server.js # Express服务器 ├── package.json # 依赖配置 ├── database/ │ └── db.json # JSON数据库 ├── uploads/ # 简历文件存储 │ └── {studentId}/ │ ├── v1_resume.pdf │ ├── v2_resume.pdf │ └── ... ├── public/ # 前端静态文件 │ ├── index.html # 主页面 │ ├── css/ │ │ └── style.css │ └── js/ │ └── app.js └── routes/ └── resumes.js # 简历相关API ``` ## 文件名解析规则 文件名格式示例: - `张三_简历.pdf` -> 学生: 张三, 版本: 1 - `李四_v2_resume.docx` -> 学生: 李四, 版本: 2 - `王五_resume_v3.pdf` -> 学生: 王五, 版本: 3 解析逻辑: 1. 提取文件名(不含扩展名) 2. 查找版本号标识 (v\d+ 或 第\d+版) 3. 剩余部分作为学生姓名 ## API设计 ### 上传简历 ``` POST /api/resumes/upload Content-Type: multipart/form-data file: <文件> ``` ### 获取所有学生列表 ``` GET /api/students ``` ### 获取某个学生的所有简历版本 ``` GET /api/resumes/:studentId ``` ### 获取特定版本简历 ``` GET /api/resumes/:studentId/:version ``` ### 删除简历版本 ``` DELETE /api/resumes/:studentId/:version ``` ## 数据模型 ### Student ```json { "id": "zhangsan", "name": "张三", "createdAt": "2024-01-15T10:30:00Z", "updatedAt": "2024-01-20T14:20:00Z" } ``` ### Resume ```json { "id": "uuid", "studentId": "zhangsan", "studentName": "张三", "version": 2, "filename": "张三_v2_resume.pdf", "originalName": "张三_v2_resume.pdf", "filePath": "uploads/zhangsan/v2_resume.pdf", "fileSize": 1024567, "fileType": "application/pdf", "uploadedAt": "2024-01-20T14:20:00Z", "status": "待批改" } ``` ## 页面设计 ### 主页面功能 1. 文件上传区域(支持拖拽) 2. 学生列表侧边栏 3. 选中学生的简历版本列表 4. 预览/下载功能 5. 状态标记(待批改/批改中/已完成)