up
Some checks failed
CI / Test (ubuntu-latest) (push) Has been cancelled
CI / Test (windows-latest) (push) Has been cancelled
CI / Lint (ubuntu-latest) (push) Has been cancelled
CI / Lint (windows-latest) (push) Has been cancelled
CI / Check (ubuntu-latest) (push) Has been cancelled
CI / Check (windows-latest) (push) Has been cancelled
CodeQL / Analyze (javascript-typescript) (push) Has been cancelled
Deploy Website on push / Deploy Push Playground Ftp (push) Has been cancelled
Deploy Website on push / Deploy Push Docs Ftp (push) Has been cancelled
Deploy Website on push / Deploy Push Antd Ftp (push) Has been cancelled
Deploy Website on push / Deploy Push Element Ftp (push) Has been cancelled
Deploy Website on push / Deploy Push Naive Ftp (push) Has been cancelled
Release Drafter / update_release_draft (push) Has been cancelled
CI / CI OK (push) Has been cancelled
Deploy Website on push / Rerun on failure (push) Has been cancelled
Lock Threads / action (push) Has been cancelled
Issue Close Require / close-issues (push) Has been cancelled
Close stale issues / stale (push) Has been cancelled

This commit is contained in:
杨志
2026-03-19 09:01:05 +08:00
parent 6dd6854e6b
commit d20caa9c8d
33 changed files with 1157 additions and 2996 deletions

View File

@@ -0,0 +1,74 @@
# 座位布局导出功能说明
## 功能概述
在座位布局弹窗中新增了"导出"按钮可以将座位布局导出为Excel格式文件包含完整的布局信息和座位状态。
## 功能特点
1. **完整的布局信息**:导出包含所有座位、过道、柱子、投影等布局元素
2. **座位状态显示**
- **蓝色单元格**:已预订座位(显示编号、学员姓名、预订日期)
- **绿色单元格**:空闲座位(显示编号和"空闲"标识)
- **红色单元格**:不可选座位(显示编号和"不可选"标识)
- **橙色单元格**:过道
- **蓝色单元格**:投影区域
- **灰色单元格**:柱子
- **浅蓝色单元格**:门
3. **样式美化**Excel文件包含颜色填充、字体样式、对齐方式等
4. **合并单元格支持**:正确导出合并的单元格
## 使用方法
1. 在教室列表页面,点击某个教室的"座位布局"按钮
2. 在座位布局弹窗的右上角,点击"导 出"按钮
3. 系统会自动生成Excel文件并下载文件名格式`教室名称_座位布局_日期.xlsx`
## 技术实现
### 依赖库
- `xlsx-js-style`用于生成带样式的Excel文件
- `xlsx`基础Excel处理库
### 安装方式
如果安装失败可以尝试使用不同的npm源
```bash
# 使用淘宝镜像
pnpm add xlsx-js-style --registry https://registry.npmmirror.com
# 或使用官方源
pnpm add xlsx-js-style --registry https://registry.npmjs.org
```
### 代码位置
- 导出功能实现:`apps/web-antd/src/views/classroom/list.vue`
- 导出按钮位置:座位布局弹窗顶部右侧
## 导出格式说明
### Excel结构
- **第一行**列标题A, B, C, D...
- **第一列**行号1, 2, 3, 4...
- **数据区域**:座位布局数据,包含颜色和样式
### 单元格内容格式
- **已预订座位**`编号 学员姓名 预订日期`(蓝色背景)
- **空闲座位**`编号 空闲`(绿色背景)
- **不可选座位**`编号 不可选`(红色背景)
- **过道**`过道`(橙色背景)
- **投影**`投影`(蓝色背景)
- **柱子**`柱子`(灰色背景)
- **门**`门`(浅蓝色背景)
## 注意事项
1. 导出功能需要获取座位状态数据,如果获取失败,将只导出布局信息(不包含预订状态)
2. 合并单元格会正确导出,保持与界面一致的布局
3. Excel文件支持在Excel、WPS等软件中打开和编辑