# full house 运营

打开根目录 [index.html](index.html) 查看项目总览。首页按广告物料、运营制度和项目基础分类；运营制度再分为岗位制度、操作制度、经营与活动、基础资料；所有文件预览在弹窗中完成。

## 目录

| 位置 | 内容 |
|---|---|
| [operations/](operations/README.md) | 定价、薪资、活动、培训、计分牌银行、收款、饮品与储值的可编辑草案 |
| [advertising/](advertising/README.md) | 海报与导视页面、文案数据、背景素材 |
| [assets/brand/](assets/brand/README.md) | 标准版和横版品牌标志 |
| `app/` | 首页样式、预览器及生成的本地预览数据 |
| `scripts/` | 检查、构建和导出脚本 |
| `dist/` | PDF 与 PNG 导出件；不作为编辑源 |

项目协作与品牌规则见 [AGENTS.md](AGENTS.md)。历史来源内容已内聚在相关运营 `.history.md` 中，不自动成为现行制度；新增价格、薪资、储值权益等规则须标明状态与批准信息。

## 安装与预览

```bash
npm install
npx playwright install chromium
npm run preview
```

浏览 `http://127.0.0.1:4173/`，也可以直接打开本地 `index.html`。广告页面、Markdown 与 JSON 均可从首页弹窗预览。

修改 Markdown 或 JSON 后运行 `npm run build:previews`。运行 `npm run preview` 或 `npm run check` 会自动重建文字预览。

## 首页设计组件

运营首页采用腾讯 TDesign Web Components，版本由 `package-lock.json` 固定。页面采用 TDesign 栅格、卡片、顶部菜单、对话框、按钮与状态标签；文档预览保留章节打印。栅格、卡片与菜单使用组件支持的 Light DOM 模式；对话框通过插槽承载预览正文，接入入口为 `app/设计组件.js`。品牌主题集中在 `app/设计主题.css`，保留中文系统字体、深色背景与暖金强调。广告印刷页面继续使用各自版式。

`npm run build:previews` 会将组件脚本、主题变量与 MIT 许可复制至 `app/vendor/`；本地及发布页面均从本地加载，无需外部 CDN。组件使用说明见 https://github.com/TDesignOteam/tdesign-web-components 。

## 网站部署

仓库地址为 `xoyimi/full-house-operations`，保持私有。网站地址为 https://full-house-operations.pages.dev/ ，Cloudflare Pages 在推送到 `main` 时自动部署。

Cloudflare Pages 设置：框架选 None，生产分支为 `main`，构建命令为 `npm run check && npm run build:pages`，输出目录为 `dist/pages`，Node.js 版本设为 22。

运行 `npm run build:pages` 生成 `dist/pages`。网站包含首页、广告物料、运营正文和变更记录，默认公开访问。生成目录不作为编辑源。

构建预览时会将浏览器依赖复制到 `app/vendor/`，用于本地预览和线上部署；该目录由构建生成，不提交到仓库。

当前 GitHub 套餐不支持私有仓库的 GitHub Pages；保留的 Deploy GitHub Pages 工作流仅供手动运行，需先启用符合套餐条件的 Pages 服务。

## 编辑与导出

- 运营制度：编辑 `operations/*.md`；每份正文的变更记录写在同名 `.history.md` 中，例如 `drinks-sop.history.md`。需要 PDF 时运行 `npm run export:docs`。
- 广告文案：优先编辑 `advertising/data/*.json`；版式编辑 `advertising/*.css`。
- 主海报：`npm run export:pdf`；只有明确需要位图时运行 `npm run export:png -- --dpi 200`，厂家要求时可用 300 DPI。
- 大堂海报：`npm run export:lobby`；电梯指示牌：`npm run export:sign`。
- 修改完成后运行 `npm run check`。导出结果位于 `dist/`。

新增广告页面或运营模块时，将源文件放入对应目录并同步更新 `index.html`；历史来源信息保存在对应变更记录中；状态、版本与批准信息统一放在正文末尾。现有根目录的旧广告页面地址会跳转到 `advertising/`，供已有书签继续使用。
