# IMF供应商到访平台项目开发 **Repository Path**: plutohxyou/my-first-code ## Basic Information - **Project Name**: IMF供应商到访平台项目开发 - **Description**: 纯AI练手项目//人生第一个开发项目 - **Primary Language**: NodeJS - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-08 - **Last Updated**: 2026-04-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # IFM 供应商到访平台 ## 项目简介 为**非驻场类供应商**(偶尔、短期、临时到访)提供通用卡借还、权限申请的线上化管理平台。 ## 核心功能 - **邀请管理**: 内部员工发起邀请,供应商填写信息 - **通用卡借还**: 前台发放通用卡,供应商扫码激活使用 - **权限管理**: 特殊权限申请与审批 - **数据统计**: 按职场/供应商类型/时间维度统计 - **操作日志**: 全量记录所有操作 ## 快速启动 ### 环境要求 - Python 3.10+ - Node.js 16+ ### 一键启动 双击 `启动服务.bat` 即可自动安装依赖并启动服务。 - 后端服务: http://localhost:8000 - 前端页面: http://localhost:5173 - API文档: http://localhost:8000/docs ### 默认账号 | 角色 | 用户名 | 密码 | |------|--------|------| | 管理员 | admin | admin123 | | 接待员 | receptionist | reception123 | ## 技术栈 ### 后端 - FastAPI (Python) - SQLAlchemy ORM - SQLite - JWT 鉴权 - Bcrypt 密码加密 ### 前端 - Vue 3 - Element Plus - Vite - Axios - Pinia ## 项目结构 ``` ifm-visitor-platform/ ├── backend/ │ ├── app/ │ │ ├── routers/ # API路由 │ │ ├── models.py # 数据模型 │ │ ├── schemas.py # Pydantic模型 │ │ ├── utils.py # 工具函数 │ │ ├── database.py # 数据库配置 │ │ └── seed.py # 初始化数据 │ ├── main.py # 入口文件 │ └── requirements.txt # Python依赖 ├── frontend/ │ ├── src/ │ │ ├── views/ # 页面组件 │ │ ├── router/ # 路由配置 │ │ ├── stores/ # 状态管理 │ │ └── utils/ # 工具函数 │ ├── index.html │ └── package.json ├── data/ # 数据库文件 ├── logs/ # 日志文件 ├── 启动服务.bat └── 停止服务.bat ``` ## API 接口 启动后可访问 http://localhost:8000/docs 查看完整的 Swagger API 文档。 ## 角色说明 | 角色 | 权限 | |------|------| | employee (内部员工) | 创建邀请、查看自己的邀请 | | receptionist (接待员) | 卡片借还、查看邀请 | | admin (管理员) | 全部权限,包括权限审批、数据统计、供应商管理 | ## 数据库 使用 SQLite 数据库,数据文件存储在 `data/ifm_visitors.db`。 ## 部署说明 本项目设计为单机部署,无需 Docker/K8s。 1. 确保 Python 3.10+ 和 Node.js 16+ 已安装 2. 双击 `启动服务.bat` 自动安装依赖并启动 3. 访问 http://localhost:5173 使用系统 ## 数据备份 直接复制 `data/ifm_visitors.db` 文件即可完成备份。