# solo **Repository Path**: TJONE/solo ## Basic Information - **Project Name**: solo - **Description**: Trae CN开发工具的SOLO模式demo - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-01 - **Last Updated**: 2026-03-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 后台管理平台 ## 1. 项目概述 本项目是一个基于FastAPI+Vue3的前后端分离后台管理平台,提供了完整的用户身份认证、权限管理、数据管理等功能。平台采用现代化的技术栈,具有良好的扩展性和可维护性,适用于各类企业级后台管理系统。 ## 2. 技术栈 ### 2.1 后端技术栈 - **框架**: FastAPI 0.100+ - **ORM**: SQLAlchemy 2.0+ - **数据库**: PostgreSQL 15+ - **认证**: JWT (JSON Web Tokens) - **数据验证**: Pydantic 2.0+ - **API文档**: Swagger UI / ReDoc - **部署**: Docker + Docker Compose ### 2.2 前端技术栈 - **框架**: Vue 3.3+ - **UI库**: Element Plus 2.3+ - **构建工具**: Vite 4.4+ - **状态管理**: Pinia 2.1+ - **路由**: Vue Router 4.2+ - **HTTP客户端**: Axios 1.5+ - **图表**: ECharts 6.0+ ## 3. 项目结构 ``` ├── backend/ # 后端代码 │ ├── app/ # 应用核心代码 │ │ ├── api/ # API路由 │ │ ├── crud/ # 数据操作层 │ │ ├── database/ # 数据库配置 │ │ ├── models/ # 数据模型 │ │ ├── schemas/ # 数据验证模式 │ │ └── utils/ # 工具函数 │ ├── main.py # 应用入口 │ ├── requirements.txt # 依赖列表 │ └── Dockerfile # Docker构建文件 ├── frontend/ # 前端代码 │ ├── src/ # 源代码 │ │ ├── components/ # Vue组件 │ │ ├── views/ # 页面视图 │ │ ├── router/ # 路由配置 │ │ ├── store/ # 状态管理 │ │ └── utils/ # 工具函数 │ ├── package.json # 依赖配置 │ ├── vite.config.js # Vite配置 │ └── Dockerfile # Docker构建文件 ├── docker-compose.yml # Docker Compose配置 └── README.md # 项目说明文档 ``` ## 4. 功能模块 ### 4.1 认证与授权 - **登录/登出**: 基于JWT的身份认证 - **权限控制**: 细粒度的RBAC权限模型 - **角色管理**: 超级管理员/普通管理员两种角色 ### 4.2 用户管理 - **管理员用户列表**: 展示所有管理员账号 - **用户新增/编辑**: 支持创建和修改管理员用户 - **用户状态管理**: 启用/禁用用户账号 - **权限分配**: 为普通管理员分配数据表操作权限 ### 4.3 数据管理 - **统一数据列表**: 支持分页、搜索、排序 - **数据CRUD操作**: 新增、编辑、删除数据 - **批量操作**: 支持批量删除数据 - **权限控制**: 根据用户权限动态显示操作按钮 ### 4.4 系统监控 - **登录日志**: 记录用户登录行为 - **操作日志**: 记录系统操作记录 - **系统状态**: 监控系统运行状态 ### 4.5 个人中心 - **个人信息管理**: 查看和修改个人信息 - **密码修改**: 支持修改登录密码 - **头像上传**: 支持上传和修改头像 ## 5. 数据库设计 ### 5.1 核心数据表 #### 5.1.1 `admin_user` (管理员用户表) | 字段名 | 类型 | 说明 | | :--- | :--- | :--- | | `id` | BIGINT (自增主键) | 用户唯一ID | | `username` | VARCHAR(50) | 登录用户名,唯一 | | `password_hash` | VARCHAR(255) | 加密后的密码 | | `nickname` | VARCHAR(50) | 用户昵称 | | `avatar` | VARCHAR(255) | 头像URL | | `role` | ENUM('super', 'normal') | 角色:super-超级管理员,normal-普通管理员 | | `status` | TINYINT(1) | 状态:1-启用,0-禁用 | | `last_login_ip` | VARCHAR(45) | 最后登录IP | | `last_login_time` | DATETIME | 最后登录时间 | | `created_at` | TIMESTAMP | 创建时间 | | `updated_at` | TIMESTAMP | 更新时间 | #### 5.1.2 `user_info` (账号信息表) | 字段名 | 类型 | 说明 | | :--- | :--- | :--- | | `id` | BIGINT (自增主键) | 信息ID | | `user_id` | BIGINT | 关联`admin_user.id` | | `real_name` | VARCHAR(50) | 真实姓名 | | `phone` | VARCHAR(20) | 手机号 | | `created_at` | TIMESTAMP | 创建时间 | | `updated_at` | TIMESTAMP | 更新时间 | #### 5.1.3 `admin_permission` (权限表) | 字段名 | 类型 | 说明 | | :--- | :--- | :--- | | `id` | BIGINT (自增主键) | 权限ID | | `admin_id` | BIGINT | 关联`admin_user.id` | | `table_name` | VARCHAR(50) | 数据表名 | | `can_create` | TINYINT(1) | 可创建(1是,0否) | | `can_read` | TINYINT(1) | 可查看(1是,0否) | | `can_update` | TINYINT(1) | 可更新(1是,0否) | | `can_delete` | TINYINT(1) | 可删除(1是,0否) | #### 5.1.4 `login_log` (登录日志表) | 字段名 | 类型 | 说明 | | :--- | :--- | :--- | | `id` | BIGINT (自增主键) | 日志ID | | `user_id` | BIGINT | 关联`admin_user.id` | | `username` | VARCHAR(50) | 登录用户名 | | `login_ip` | VARCHAR(45) | 登录IP | | `login_time` | DATETIME | 登录时间 | | `status` | TINYINT(1) | 登录状态:1-成功,0-失败 | | `message` | VARCHAR(255) | 登录信息 | #### 5.1.5 `account_data` (账号数据表) | 字段名 | 类型 | 说明 | | :--- | :--- | :--- | | `id` | BIGINT (自增主键) | 数据ID | | `account_name` | VARCHAR(100) | 账号名称 | | `account_type` | VARCHAR(50) | 账号类型 | | `status` | VARCHAR(20) | 账号状态 | | `created_by` | BIGINT | 创建人ID | | `created_at` | TIMESTAMP | 创建时间 | | `updated_at` | TIMESTAMP | 更新时间 | ## 6. 部署说明 ### 6.1 环境要求 - Docker 20.10+ - Docker Compose 2.0+ ### 6.2 部署步骤 1. **克隆项目** ```bash git clone cd ``` 2. **创建环境变量文件** ```bash # 后端环境变量 cp backend/.env.example backend/.env # 前端环境变量 cp frontend/.env.example frontend/.env ``` 3. **启动服务** ```bash # 构建并启动所有服务 docker compose up -d --build ``` 4. **访问服务** - 前端地址: http://localhost:80 - 后端API: http://localhost:8000 - API文档: http://localhost:8000/docs ### 6.3 停止服务 ```bash docker compose down ``` ## 7. 开发说明 ### 7.1 后端开发 1. **安装依赖** ```bash cd backend python -m venv .venv source .venv/bin/activate pip install -r requirements.txt ``` 2. **启动开发服务器** ```bash python main.py ``` 3. **API文档** - Swagger UI: http://localhost:8000/docs - ReDoc: http://localhost:8000/redoc ### 7.2 前端开发 1. **安装依赖** ```bash cd frontend npm install ``` 2. **启动开发服务器** ```bash npm run dev ``` 3. **构建生产版本** ```bash npm run build ``` ## 8. 功能使用说明 ### 8.1 初始账号 - **用户名**: admin - **密码**: admin123 - **角色**: 超级管理员 ### 8.2 核心功能 #### 8.2.1 管理员管理 1. 登录系统后,点击左侧菜单"用户管理" 2. 可以查看所有管理员用户列表 3. 点击"新增用户"创建新的管理员账号 4. 点击"编辑"修改用户信息 5. 点击"权限设置"为普通管理员分配权限 #### 8.2.2 数据管理 1. 点击左侧菜单"数据管理"下的具体表名 2. 可以查看对应的数据列表 3. 支持按字段搜索、排序和分页 4. 点击"新增"添加新数据 5. 点击"编辑"修改现有数据 6. 点击"删除"删除数据(支持批量删除) #### 8.2.3 个人中心 1. 点击右上角用户头像,选择"个人中心" 2. 可以修改昵称、手机号等个人信息 3. 可以上传和修改头像 4. 可以修改登录密码 ## 9. 安全注意事项 1. **密码安全**: 系统使用bcrypt算法加密存储密码,建议定期更换密码 2. **权限控制**: 严格遵循最小权限原则,为用户分配必要的权限 3. **API安全**: 所有API请求均需携带有效的JWT令牌 4. **数据备份**: 定期备份数据库,防止数据丢失 5. **环境变量**: 敏感配置(如数据库密码、JWT密钥)应通过环境变量配置 ## 10. 版本更新日志 - **v1.0.0** (2024-11-28) - 初始版本发布 - 完成核心功能开发 - 支持Docker部署 ## 11. 联系方式 - **项目维护**: - **问题反馈**: - **文档地址**: --- **© 2024 后台管理平台. All rights reserved.**