# 面试管理系统 - 项目说明文档 ## 📋 项目概述 本系统是一个基于 **Django-Vue3-Admin** 框架开发的面试管理系统,旨在为企业提供完整的在线面试解决方案。系统支持职位管理、简历筛选、在线面试、AI面试、数字人面试等多种功能。 ## 🎯 核心功能模块 ### 1. 职位管理模块 (`/src/views/position/`) - **职位列表管理**:职位信息CRUD、批量状态管理、标签管理 - **职位详情管理**:职位完整信息配置 - **职位能力匹配**:职位与能力的关联管理 - **职位创建向导**:引导式职位创建流程 ### 2. 题库管理模块 (`/src/views/questionBank/`) - **题库分类管理**:题目分类维护 - **标签管理**:题目标签体系 - **题目管理**:支持多种题型(选择题、填空题、问答题等) - **批量操作**:批量分类、标签管理 - **评分标准**:自定义评分规则 ### 3. 人才管理模块 (`/src/views/talent/`) - **人才库**:候选人信息管理 - **海外人才管理**:国际化人才管理 - **标签管理**:人才标签体系 - **简历筛选**:智能简历筛选功能 ### 4. 求职申请管理 (`/src/views/JobApplication/`) - **申请列表**:所有求职申请记录 - **申请状态跟踪**:申请流程状态管理 - **批量状态修改**:批量处理申请 - **短信通知**:申请状态变更通知 - **报告查看**:面试报告查看 ### 5. 数字人面试模块 (`/src/views/digitalHuman/`) - **数字人面试**:基于AI的数字人面试功能 - **面试配置**:数字人面试参数设置 - **详情查看**:面试过程记录 ### 6. 系统管理模块 (`/src/views/system/`) - **用户管理**:系统用户管理 - **角色权限**:RBAC权限管理 - **菜单管理**:动态菜单配置 - **部门管理**:组织架构管理 - **字典管理**:系统字典维护 - **地区管理**:省市县数据管理 - **文件管理**:文件上传管理 - **操作日志**:系统操作日志记录 - **登录日志**:用户登录记录 ## 🏗️ 技术架构 ### 前端技术栈 - **框架**:Vue 3.4.38 + TypeScript - **UI组件库**:Element Plus 2.8.0 - **状态管理**:Pinia 2.0.28 - **路由**:Vue Router 4.4.3 - **构建工具**:Vite 5.4.1 - **CRUD组件**:FastCRUD 1.21.2 - **国际化**:Vue I18n 9.14.0 - **富文本编辑器**:WangEditor 5.1.23 - **图表**:ECharts 5.6.0 - **表格**:VXE Table 4.6.18 ### 项目结构 ``` src/ ├── api/ # API接口定义 ├── assets/ # 静态资源 │ ├── iconfont/ # 图标字体 │ ├── img/ # 图片资源 │ └── style/ # 样式文件 ├── components/ # 公共组件 │ ├── auth/ # 权限组件 │ ├── editor/ # 富文本编辑器 │ ├── fileSelector/ # 文件选择器 │ ├── iconSelector/ # 图标选择器 │ ├── table/ # 表格组件 │ └── ... ├── stores/ # Pinia状态管理 ├── views/ # 页面视图 │ ├── position/ # 职位管理 │ ├── questionBank/ # 题库管理 │ ├── talent/ # 人才管理 │ ├── JobApplication/ # 求职申请 │ ├── digitalHuman/ # 数字人面试 │ └── system/ # 系统管理 ├── router/ # 路由配置 ├── utils/ # 工具函数 ├── i18n/ # 国际化 └── plugin/ # 插件 ``` ## 🚀 快速开始 ### 环境要求 - Node.js >= 16.0.0 - npm >= 7.0.0 - 现代浏览器(Chrome, Firefox, Safari, Edge) ### 安装步骤 1. **安装依赖** ```bash npm install ``` 2. **开发模式启动** ```bash npm run dev ``` 3. **生产环境构建** ```bash npm run build ``` ### 配置说明 - **开发环境配置**:`.env.development` 文件 - **生产环境配置**:`.env.production` 文件 - **本地生产配置**:`.env.local_prod` 文件 主要配置项: - `VITE_PORT`:开发服务器端口(默认:8080) - `VITE_PUBLIC_PATH`:生产环境公共路径 - `VITE_API_URL`:后端API地址 ## 📁 核心业务说明 ### 1. 职位配置自动创建功能 系统会自动为职位创建默认配置,无需手动操作。详情见 [CONFIG_AUTO_CREATE_SUMMARY.md](./CONFIG_AUTO_CREATE_SUMMARY.md) **使用场景**: - 创建新职位时,系统自动初始化面试配置 - 心理测试、色盲测试等开关默认关闭 - 数字人面试功能可单独配置 ### 2. 字段配置本地缓存功能 职位详情页的字段配置会自动缓存在本地,有效期7天。详情见 [FIELD_CONFIG_CACHE_README.md](./FIELD_CONFIG_CACHE_README.md) **使用场景**: - 用户自定义字段显示偏好 - 提高操作效率,减少重复配置 - 跨浏览器数据隔离 ### 3. 权限管理 - **按钮权限**:精确到按钮级别的权限控制 - **字段权限**:精确到字段级别的权限控制 - **数据权限**:支持按部门、角色划分数据访问范围 **权限体系**: - 菜单权限:控制页面访问 - 按钮权限:控制操作按钮显示 - 接口权限:控制API调用 - 字段权限:控制字段可见性 - 数据权限:控制数据范围 ### 4. 文件上传 - 支持多种文件格式(图片、文档、视频等) - 自动压缩和预览 - 文件管理后台 - 支持断点续传(大文件) ### 5. 智能筛选功能 - **人才筛选**:根据条件自动筛选匹配人才 - **简历分析**:AI智能解析简历内容 - **能力匹配**:职位与人才能力自动匹配 ### 6. 面试流程管理 - **多轮面试**:支持多轮次面试流程 - **状态跟踪**:实时跟踪申请状态 - **自动通知**:邮件、短信自动通知 - **面试报告**:自动生成面试报告 ## 🛠️ 开发规范 ### 代码规范 - 使用 TypeScript 进行类型检查 - 遵循 Vue 3 Composition API 规范 - 使用 ESLint 进行代码检查 ### 提交规范 ```bash git commit -m "feat: 添加新功能" git commit -m "fix: 修复bug" git commit -m "docs: 更新文档" git commit -m "style: 代码格式调整" git commit -m "refactor: 代码重构" ``` ### 命名规范 - **组件名**:使用 PascalCase(如 `UserManagement.vue`) - **文件名**:使用 kebab-case(如 `user-info.vue`) - **变量/函数名**:使用 camelCase(如 `getUserInfo`) - **常量**:使用 UPPER_SNAKE_CASE(如 `API_BASE_URL`) ## 📝 常用功能 ### FastCRUD 配置 系统使用 FastCRUD 作为表格组件,统一配置在 `src/settings.ts` 文件中,包括: - 接口请求/响应转换 - 文件上传配置 - 富文本编辑器配置 - 字典数据获取 ### 国际化 系统支持多语言切换,语言文件在 `src/i18n/lang/` 目录下: - 中文简体(zh-cn.ts) - 中文繁体(zh-tw.ts) - 英文(en.ts) ### 主题配置 - 支持亮色/暗色主题切换 - 主题配置在 `src/stores/themeConfig.ts` 中 ## 🔧 故障排查 ### 常见问题 1. **启动报错** - 检查 Node.js 版本是否符合要求 - 删除 `node_modules` 和 `package-lock.json`,重新安装 2. **接口请求失败** - 检查后端服务是否启动 - 检查 `VITE_API_URL` 配置是否正确 3. **页面空白** - 检查浏览器控制台错误信息 - 清除浏览器缓存 - 检查路由配置 4. **样式不生效** - 检查 Tailwind CSS 配置 - 检查 Element Plus 样式导入 ## 📚 相关文档 - [FastCRUD 官方文档](http://fast-crud.docmirror.cn/) - [Vue 3 官方文档](https://cn.vuejs.org/) - [Element Plus 官方文档](https://element-plus.org/zh-CN/) - [Django-Vue3-Admin 官方文档](https://www.django-vue-admin.com) ## 📄 许可证 MIT License ## 👥 贡献指南 1. Fork 本仓库 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启 Pull Request ## 📞 联系方式 - 项目地址:[Gitee](https://gitee.com/huge-dream/django-vue3-admin) - 在线演示:[https://demo.dvadmin.com](https://demo.dvadmin.com) - 官方文档:[https://www.django-vue-admin.com](https://www.django-vue-admin.com) --- **版本信息**:v3.0.4 **更新日期**:2024