docs: 更新项目结构与部署说明(apps/* 布局、monorepo 命令)

This commit is contained in:
2026-08-08 15:06:03 +08:00
parent b73ac5e3e4
commit f03f22c605
2 changed files with 39 additions and 28 deletions

View File

@@ -16,6 +16,11 @@
| 账单导出 | Excel汇总+明细双Sheet、单条PDF账单 |
| 教室管理 | 教室信息维护、教室租赁记录 |
| 押金管理 | 押金收取与退还 |
| 班级/排课 | 班级档案、分班、教室日程与排课 |
| 考勤管理 | 手工考勤、钉钉考勤同步、自动匹配 |
| 教室租赁 | 租赁订单、合同、租赁日程 |
| AI 助手 | 对话式查询、表单/导入向导/图表、业务待办引导 |
| 组织/校区 | 组织机构与数据范围 |
| 操作日志 | 所有涉及钱的操作自动审计留痕 |
| 账号管理 | 用户增删改查、角色区分、启用/禁用、重置密码 |
@@ -42,7 +47,7 @@
### 后端启动
```bash
cd backend
cd apps/server
cp .env.example .env # 复制并修改环境配置
npm install
npm run start:dev # 开发模式启动,默认端口 3000
@@ -51,46 +56,48 @@ npm run start:dev # 开发模式启动,默认端口 3000
### 前端启动
```bash
cd frontend
cd apps/admin
npm install
npm run dev # 开发模式启动,默认端口 5173
```
### Docker 部署
### 常用命令
```bash
docker-compose up -d # 一键启动 MySQL + 后端 + 前端
npm run typecheck # 全仓类型检查
npm run lint # 全仓 lint
npm run test # 全仓测试
npm run build # 全仓构建
```
## 项目结构
```
├── backend/ # 后端 NestJS 服务
├── apps/server/ # 后端 NestJS 服务
│ ├── src/
│ │ ├── auth/ # 认证模块 (JWT)
│ │ ├── ai-chat/ # AI 对话、表单/导入向导/图表
│ │ ├── attendance/ # 考勤与钉钉同步
│ │ ├── bills/ # 账单模块
│ │ ├── classrooms/ # 教室管理
│ │ ├── dashboard/ # 数据面板
│ │ ├── deposits/ # 押金管理
│ │ ├── entities/ # 数据实体
│ │ ├── expenses/ # 费用录入
│ │ ├── occupancies/# 入住管理
│ │ ├── rbac/ # 角色权限
│ │ ├── rooms/ # 宿舍管理
│ │ ── students/ # 学生管理
│ │ └── tenants/ # 租户管理
│ │ ── students/ # 学生管理
│ └── .env.example # 环境配置模板
├── frontend/ # 前端 React 应用
├── apps/admin/ # 前端 React 应用
│ └── src/
│ ├── api/ # API 请求封装
│ ├── components/ # 通用组件
│ ├── layouts/ # 布局组件
│ └── pages/ # 页面组件
├── docker-compose.yml # Docker 编排配置
├── packages/ # 共享配置
└── 技术文档.md # 详细技术文档
```
## 环境配置
复制 `backend/.env.example``backend/.env`,按需修改:
复制 `apps/server/.env.example``apps/server/.env`,按需修改:
| 配置项 | 说明 | 默认值 |
|--------|------|--------|

View File

@@ -58,8 +58,8 @@
## 三、项目目录结构
```
宿舍水电费/
├── backend/ # 后端NestJS
gongxue-base/
├── apps/server/ # 后端NestJS
│ ├── src/
│ │ ├── entities/ # 数据库实体
│ │ │ ├── student.entity.ts
@@ -97,7 +97,7 @@
│ ├── package.json
│ └── tsconfig.json
├── frontend/ # 前端React + Vite
├── apps/admin/ # 前端React + Vite
│ ├── src/
│ │ ├── api/index.ts # axios 实例自动携带JWT
│ │ ├── layouts/MainLayout.tsx # 主布局(桌面侧边栏/移动端Drawer
@@ -160,6 +160,8 @@
## 六、API 接口列表
> 以下为早期接口清单,完整接口以当前代码路由为准。
### 认证
| 方法 | 路径 | 说明 |
|------|------|------|
@@ -195,7 +197,7 @@
## 七、环境变量配置
参见 `backend/.env.example`
参见 `apps/server/.env.example`
| 变量 | 说明 | 默认值 |
|------|------|--------|
@@ -221,18 +223,18 @@
```bash
# 1. 上传代码到服务器
# 2. 配置后端环境变量
cd /www/wwwroot/dorm-billing/backend
cd apps/server
cp .env.example .env
vi .env # 填入真实的数据库密码、JWT密钥、管理员密码
# 3. 安装依赖 & 构建
cd backend && npm install && npm run build
cd ../frontend && npm install && npm run build
npm install
npm run build -w @gongxue/server
npm run build -w @gongxue/admin
# 4. PM2 启动后端
cd ../backend
pm2 start dist/main.js --name dorm-billing
pm2 save && pm2 startup
pm2 startOrReload ecosystem.config.cjs --update-env
pm2 save
```
### Nginx 配置
@@ -267,8 +269,8 @@ server {
| 角色 | 权限 |
|------|------|
| admin管理员 | 所有功能 + 账号管理 |
| operator操作员 | 除账号管理外的所有功能 |
| 超管 / 系统管理员 | 所有功能 + 账号管理 |
| 教务 / 住宿运营 / 教室运营 / 任课老师 | 按权限点控制,以 `rbac` 种子数据为准 |
---
@@ -282,6 +284,8 @@ pm2 logs dorm-billing
pm2 restart dorm-billing
# 更新代码后重新部署
cd backend && npm install && npm run build && pm2 restart dorm-billing
cd ../frontend && npm install && npm run build
npm install
npm run build -w @gongxue/server
npm run build -w @gongxue/admin
pm2 startOrReload ecosystem.config.cjs --update-env
```