nex_basse/README.md

2.7 KiB
Raw Permalink Blame History

Nex Basse 基础平台

本项目是面向团队快速开发的基础平台,包含用户、角色、权限、码表、系统参数等核心模块。前端采用 React + TypeScript后端为 FastAPIPython 3.9+),数据库先实现 MySQL 版本。

主要功能

  • 用户管理
    • 用户列表、创建、编辑、禁用、删除
    • 重置密码、角色分配
  • 角色管理
    • 角色列表、创建
    • 角色权限分配(权限树勾选)
  • 权限与菜单
    • 功能权限树(三级:一级/二级菜单 + 三级按钮)
    • 菜单动态加载、按角色权限可见
  • 码表管理
    • 码表类型与条目管理
  • 系统参数管理
    • 多类型参数string/int/bool/json

技术栈

前端

  • React 18 + TypeScript
  • Vite 5
  • Ant Design 5
  • 统一组件:ListTableToastDetailDrawer

后端

  • FastAPI
  • SQLAlchemy 2.0
  • Alembic
  • Redistoken/刷新 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/.env
  • frontend/.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
  • 后端权限树为三级结构:一级/二级菜单 + 三级按钮