2.7 KiB
2.7 KiB
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. 后端
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. 前端
cd frontend
yarn install
yarn dev --host 0.0.0.0 --port 5173
环境配置
复制示例文件并填写:
backend/.env.example->backend/.envfrontend/.env.example->frontend/.env
详情见:backend/ENV.md
数据库初始化
执行初始化 SQL:
mysql -u <user> -p <db_name> < backend/docs/init_mysql.sql
若已有旧数据,参考 backend/docs/migrations/ 中的迁移脚本。
管理员账号
默认账号密码:
admin / 123456
可通过脚本重置:
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)
- 后端权限树为三级结构:一级/二级菜单 + 三级按钮