# Hotel Report

> 產出指定月份的月度營運報告（含 Mermaid 圖表）。當使用者說「月報」「營運報告」「report 2025-04」時觸發。

- Skill: `yiming/hotel-report` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add yiming/hotel-report`
- Raw SKILL.md: https://api.skillmd.com/api/skills/yiming/hotel-report/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: yiming (https://skillmd.com/u/yiming)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/yiming/hotel-report

---


# 產出月度營運報告

## 使用方式

```
@hotel-report 產出 2025-04 月報
```

## 步驟

### Step 1：掃描確認單

讀取 `orders/` 目錄下所有 `*-確認單.md`，從每張確認單提取欄位：

| 訂單類型 | ID 前綴 | 金額來源 | 日期來源 | 人數來源 |
|---------|--------|---------|---------|---------|
| 訂房 | BR | 「**合計**」列 | 「入住日期」 | 「人數」 |
| 訂餐 | DR | 品項明細「**合計**」列 | 「用餐日期」 | 「人數」 |
| 場地 | VR | 費用明細「**合計**」列 | 「活動日期」 | 「人數」 |

**篩選**：只納入日期落在目標月份（YYYY-MM）的訂單。

每筆訂單提取：
- `order_id`：從 frontmatter 的 `order_id` 欄位
- `type`：依 ID 前綴判斷（BR/DR/VR）
- `guest`：訂房人 / 訂餐人 / 訂租人
- `date`：入住日期 / 用餐日期 / 活動日期
- `guests`：人數（取數字，去除「位」字）
- `total`：合計金額（取「**合計**」列的數字，去除千分位逗號和「元」）
- `budget_result`：預算比對結果（✓ 或 ⚠/✗）

額外提取：
- **BR 專屬**：房型名稱、每晚房價、晚數
- **DR 專屬**：品項列表、低消檢查結果
- **VR 專屬**：場地名稱、場地費、餐標金額、加購項目列表

### Step 2：計算統計指標

**總覽**：
- 總營收 = Σ(所有訂單 total)
- 訂單數 = count（BR / DR / VR 各別計）
- 平均客單價 = 總營收 ÷ 訂單數
- 總服務人次 = Σ(所有訂單 guests)
- 預算達標率 = 「✓ 在預算內」筆數 ÷ 總筆數 × 100%

**訂房（BR）**：
- 客房收入 = Σ(BR total)
- 平均房價 ADR = 客房收入 ÷ Σ(BR 晚數)
- 房型分布 = 各房型出現次數

**餐飲（DR）**：
- 餐飲收入 = Σ(DR total)
- 平均每人消費 = 餐飲收入 ÷ Σ(DR guests)

**場地（VR）**：
- 場地收入 = Σ(VR total)
- 場地使用次數 = 各場地出現次數
- 加購項目排行

### Step 3：依模板產出報告

讀取 `templates/monthly-report.md`，填入數據，寫入 `orders/report-{YYYY-MM}.md`。

Mermaid 圖表在 Cursor IDE 中可直接預覽。

## 邊界情況

- 指定月份無任何確認單 → 產出空報告，註明「本月無已確認訂單」
- 某類型（BR/DR/VR）無訂單 → 該分析區塊顯示「本月無此類訂單」，對應 Mermaid 圖表省略
- 金額計算以確認單的「合計」為準，不重新從 master-data 計算

## 品質自查

- [ ] 所有確認單都已掃描（對照 `orders/` 目錄的 `*-確認單.md` 檔案數）
- [ ] 各類小計加總 = 總營收
- [ ] 訂單明細表的筆數 = 訂單總數
- [ ] Mermaid 圖表的數據與表格一致

