# Nex Basse 基础平台 本项目是面向团队快速开发的基础平台,包含用户、角色、权限、码表、系统参数等核心模块。前端采用 React + TypeScript,后端为 FastAPI(Python 3.9+),数据库先实现 MySQL 版本。 ## 主要功能 - 用户管理 - 用户列表、创建、编辑、禁用、删除 - 重置密码、角色分配 - 角色管理 - 角色列表、创建 - 角色权限分配(权限树勾选) - 权限与菜单 - 功能权限树(三级:一级/二级菜单 + 三级按钮) - 菜单动态加载、按角色权限可见 - 码表管理 - 码表类型与条目管理 - 系统参数管理 - 多类型参数:string/int/bool/json ## 技术栈 ### 前端 - React 18 + TypeScript - Vite 5 - Ant Design 5 - 统一组件:`ListTable`、`Toast`、`DetailDrawer` ### 后端 - FastAPI - SQLAlchemy 2.0 - Alembic - Redis(token/刷新 token/异步任务占位) - PyMySQL ### 数据库 - MySQL 5.7(开发)、8.0+(部署) - 字符集:`utf8mb4`,排序规则:`utf8mb4_unicode_ci` - 状态字段统一:`status TINYINT(1)` ## 目录结构 ``` . ├─ backend │ ├─ app │ │ ├─ api/v1/endpoints │ │ ├─ core │ │ ├─ models │ │ ├─ schemas │ │ └─ services │ ├─ docs │ │ ├─ db_schema.md │ │ └─ migrations │ ├─ scripts │ ├─ requirements.txt │ └─ ENV.md ├─ design │ └─ 页面参考图与数据库设计 ├─ frontend │ ├─ src │ │ ├─ components │ │ ├─ layout │ │ └─ pages │ ├─ package.json │ └─ vite.config.ts └─ README.md ``` ## 本地启动 ### 1. 后端 ```bash cd backend python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt uvicorn app.main:app --reload --host 0.0.0.0 --port 8000 ``` ### 2. 前端 ```bash cd frontend yarn install yarn dev --host 0.0.0.0 --port 5173 ``` ## 环境配置 复制示例文件并填写: - `backend/.env.example` -> `backend/.env` - `frontend/.env.example` -> `frontend/.env` 详情见:`backend/ENV.md` ## 数据库初始化 执行初始化 SQL: ```bash mysql -u -p < backend/docs/init_mysql.sql ``` 若已有旧数据,参考 `backend/docs/migrations/` 中的迁移脚本。 ## 管理员账号 默认账号密码: ``` admin / 123456 ``` 可通过脚本重置: ```bash cd backend source .venv/bin/activate INIT_ADMIN_PASSWORD=123456 PYTHONPATH=./ /Users/jiliu/WorkSpace/nex_basse/backend/.venv/bin/python scripts/init_admin.py ``` ## 备注 - 功能页面统一在主框架右侧载入(左侧菜单可收起/展开) - 新增/编辑使用右侧抽屉(DetailDrawer) - 后端权限树为三级结构:一级/二级菜单 + 三级按钮