405 lines
6.8 KiB
Markdown
405 lines
6.8 KiB
Markdown
# 酒店员工端 H5 页面规划
|
||
|
||
## 产品定位
|
||
|
||
面向酒店/商户员工的移动端工作台,核心解决三件事:
|
||
|
||
- 员工通过手机号验证码登录。
|
||
- 员工查看订单,并对可使用订单进行核销。
|
||
- 员工发布和查看运营事件。
|
||
|
||
第一版优先保证业务闭环,不做复杂后台管理能力。
|
||
|
||
## 页面地图
|
||
|
||
```text
|
||
/login
|
||
手机验证码登录
|
||
|
||
/
|
||
/home
|
||
工作台
|
||
|
||
/orders
|
||
订单列表
|
||
|
||
/orders/:id
|
||
订单详情
|
||
└─ 进入核销确认
|
||
|
||
/verify
|
||
核销入口
|
||
|
||
/verify/confirm
|
||
核销确认
|
||
|
||
/verify/result
|
||
核销结果
|
||
|
||
/events
|
||
事件列表
|
||
|
||
/events/create
|
||
发布事件
|
||
|
||
/mine
|
||
我的
|
||
```
|
||
|
||
## 底部导航
|
||
|
||
| Tab | 路由 | 说明 |
|
||
|---|---|---|
|
||
| 工作台 | `/home` | 展示关键数据和快捷入口 |
|
||
| 订单 | `/orders` | 查询订单、进入详情 |
|
||
| 核销 | `/verify` | 扫码或输入订单号核销 |
|
||
| 事件 | `/events` | 查看事件列表 |
|
||
| 我的 | `/mine` | 当前账号、接口模式、退出登录 |
|
||
|
||
## 核心流程
|
||
|
||
### 登录流程
|
||
|
||
```text
|
||
输入手机号
|
||
-> 获取验证码
|
||
-> 输入验证码
|
||
-> 调用 OAuth2 手机号登录
|
||
-> 保存 access_token
|
||
-> 进入工作台
|
||
```
|
||
|
||
接口:
|
||
|
||
| 动作 | 接口 |
|
||
|---|---|
|
||
| 发送验证码 | `GET /admin/platformUser/sendMobileCode/{phone}` |
|
||
| 手机号登录 | `POST /auth/oauth2/token` |
|
||
| 登录后绑定并获取组织关系 | `POST /hotelStaff/organizationMember/bindUserInfoAndGetUserMemberInfoByPhone` |
|
||
|
||
登录参数要点:
|
||
|
||
- `grant_type=mobile`
|
||
- `mobile=手机号`
|
||
- `code=验证码`
|
||
- `scope=server`
|
||
- `clientConfigId` 需要和发送验证码时保持一致
|
||
|
||
### 订单核销流程
|
||
|
||
```text
|
||
订单列表
|
||
-> 订单详情
|
||
-> 点击立即核销
|
||
-> 核销确认
|
||
-> 调用核销接口
|
||
-> 核销结果
|
||
```
|
||
|
||
也支持:
|
||
|
||
```text
|
||
核销入口
|
||
-> 输入订单号
|
||
-> 查询订单详情
|
||
-> 核销确认
|
||
-> 核销结果
|
||
```
|
||
|
||
接口:
|
||
|
||
| 页面/动作 | 接口 |
|
||
|---|---|
|
||
| 订单列表 | `POST /hotelStaff/order/commodityOrderList` |
|
||
| 订单详情 | `POST /hotelStaff/order/userOrderDetail` |
|
||
| 确认核销 | `POST /hotelStaff/order/writeOff` |
|
||
|
||
当前后端核销能力以 `orderId` 为核心,暂未看到独立“核销码查询”接口。第一版扫码可先约定二维码内容为订单号;如果业务需要独立券码,后端建议补充“按核销码查询订单/商品”的接口。
|
||
|
||
### 事件流程
|
||
|
||
```text
|
||
事件列表
|
||
-> 发布事件
|
||
-> 填写事件信息
|
||
-> 上传图片
|
||
-> 发布
|
||
-> 回到事件列表
|
||
```
|
||
|
||
接口:
|
||
|
||
| 页面/动作 | 接口 |
|
||
|---|---|
|
||
| 事件列表 | `POST /hotelStaff/event/eventList` |
|
||
| 创建事件 | `POST /hotelStaff/event/createEvent` |
|
||
| 图片上传 | `POST /hotelBiz/hotBizCommon/upload` |
|
||
|
||
## 页面明细
|
||
|
||
### `/login` 手机验证码登录
|
||
|
||
目标:让员工用手机号进入系统。
|
||
|
||
展示内容:
|
||
|
||
- 手机号输入框
|
||
- 验证码输入框
|
||
- 获取验证码按钮
|
||
- 登录按钮
|
||
|
||
状态:
|
||
|
||
- 手机号格式错误
|
||
- 验证码倒计时
|
||
- 登录中
|
||
- 登录失败
|
||
|
||
### `/home` 工作台
|
||
|
||
目标:提供员工进入高频操作的首页。
|
||
|
||
展示内容:
|
||
|
||
- 当前日期
|
||
- 当前账号
|
||
- 待使用订单数
|
||
- 今日核销数
|
||
- 生效事件数
|
||
- 今日订单数
|
||
- 快捷入口:扫码核销、订单列表、发布事件、事件列表
|
||
- 近期订单
|
||
- 近期事件
|
||
|
||
主要操作:
|
||
|
||
- 去核销
|
||
- 查看订单
|
||
- 发布事件
|
||
- 查看事件
|
||
|
||
### `/orders` 订单列表
|
||
|
||
目标:让员工快速查找订单。
|
||
|
||
展示内容:
|
||
|
||
- 搜索框:订单号/手机号
|
||
- 状态筛选:全部、待使用、待确认、退款中、已完成
|
||
- 商品类型筛选:全部、酒店、门票、餐饮
|
||
- 订单卡片:订单号、状态、商品名、联系人、手机号、金额、数量、时间
|
||
|
||
主要操作:
|
||
|
||
- 搜索订单
|
||
- 筛选状态
|
||
- 进入订单详情
|
||
|
||
### `/orders/:id` 订单详情
|
||
|
||
目标:核对订单完整信息,并从详情发起核销。
|
||
|
||
展示内容:
|
||
|
||
- 订单号
|
||
- 订单状态
|
||
- 商品图
|
||
- 商品名称
|
||
- 商品类型
|
||
- 购买数量
|
||
- 联系人信息
|
||
- 支付信息
|
||
- 使用/预约信息
|
||
- 套餐内容
|
||
- 核销记录
|
||
|
||
主要操作:
|
||
|
||
- 待使用订单显示“立即核销”
|
||
- 点击后进入 `/verify/confirm`
|
||
|
||
核销按钮显示条件:
|
||
|
||
- `orderStatus === '2'`,即待使用
|
||
|
||
### `/verify` 核销入口
|
||
|
||
目标:提供独立核销入口。
|
||
|
||
展示内容:
|
||
|
||
- 扫码核销入口
|
||
- 手动输入订单号
|
||
|
||
主要操作:
|
||
|
||
- 输入订单号查询订单
|
||
- 进入核销确认
|
||
|
||
备注:
|
||
|
||
- 当前扫码入口已预留。
|
||
- 第一版先按订单号核销。
|
||
|
||
### `/verify/confirm` 核销确认
|
||
|
||
目标:防止员工误核销。
|
||
|
||
展示内容:
|
||
|
||
- 订单号
|
||
- 订单状态
|
||
- 商品名称
|
||
- 联系人
|
||
- 核销套餐
|
||
- 购买数量
|
||
- 预约时间
|
||
- 实付金额
|
||
|
||
主要操作:
|
||
|
||
- 确认核销
|
||
- 取消返回
|
||
|
||
状态:
|
||
|
||
- 可核销
|
||
- 当前订单不可核销
|
||
- 核销提交中
|
||
- 核销失败
|
||
|
||
### `/verify/result` 核销结果
|
||
|
||
目标:给员工明确反馈。
|
||
|
||
展示内容:
|
||
|
||
- 成功/失败状态
|
||
- 订单号
|
||
- 核销内容
|
||
- 操作时间
|
||
- 失败原因
|
||
|
||
主要操作:
|
||
|
||
- 继续核销
|
||
- 查看订单
|
||
|
||
### `/events` 事件列表
|
||
|
||
目标:查看已发布事件。
|
||
|
||
展示内容:
|
||
|
||
- 搜索框:实体名称
|
||
- 状态筛选:全部、开启、关闭
|
||
- 事件卡片:实体名称、事件描述、事件状态、显示状态、生效时间、发布人、是否弹窗提醒
|
||
|
||
主要操作:
|
||
|
||
- 搜索事件
|
||
- 筛选状态
|
||
- 进入发布事件页
|
||
|
||
### `/events/create` 发布事件
|
||
|
||
目标:创建新的运营事件。
|
||
|
||
展示内容:
|
||
|
||
- 实体名称
|
||
- 事件描述
|
||
- 图片上传
|
||
- 发布时间
|
||
- 生效开始时间
|
||
- 生效结束时间
|
||
- 弹窗提醒开关
|
||
|
||
主要操作:
|
||
|
||
- 上传图片
|
||
- 发布事件
|
||
|
||
校验:
|
||
|
||
- 实体名称必填
|
||
- 事件描述必填
|
||
- 生效时间必填
|
||
|
||
### `/mine` 我的
|
||
|
||
目标:查看当前登录和接口配置状态。
|
||
|
||
展示内容:
|
||
|
||
- 当前账号
|
||
- 登录状态
|
||
- 手机号绑定状态
|
||
- 租户
|
||
- 接口模式:Mock/真实接口
|
||
- `clientId`
|
||
- `clientConfigId`
|
||
- 员工端接口前缀
|
||
|
||
主要操作:
|
||
|
||
- 退出登录
|
||
|
||
## 订单状态
|
||
|
||
| 值 | 文案 |
|
||
|---|---|
|
||
| `0` | 待支付 |
|
||
| `1` | 待确认 |
|
||
| `2` | 待使用 |
|
||
| `3` | 已取消 |
|
||
| `4` | 退款中 |
|
||
| `5` | 已关闭 |
|
||
| `6` | 已完成 |
|
||
|
||
## 商品类型
|
||
|
||
| 值 | 文案 |
|
||
|---|---|
|
||
| `0` | 酒店 |
|
||
| `1` | 门票 |
|
||
| `2` | 餐饮 |
|
||
|
||
## 事件状态
|
||
|
||
| 值 | 文案 |
|
||
|---|---|
|
||
| `0` | 开启 |
|
||
| `1` | 关闭 |
|
||
|
||
事件列表还会展示后端计算的 `showStatusDesc`:
|
||
|
||
- 待生效
|
||
- 生效中
|
||
- 已过期
|
||
|
||
## 第一阶段 MVP
|
||
|
||
必须包含:
|
||
|
||
- 手机验证码登录
|
||
- 工作台
|
||
- 订单列表
|
||
- 订单详情
|
||
- 订单详情发起核销
|
||
- 独立核销入口
|
||
- 核销确认
|
||
- 核销结果
|
||
- 事件列表
|
||
- 发布事件
|
||
- 我的/退出登录
|
||
|
||
暂缓内容:
|
||
|
||
- 独立核销码查询
|
||
- 扫码真实调用微信/浏览器能力
|
||
- 订单复杂高级筛选
|
||
- 事件编辑/关闭/删除
|
||
- 员工权限细分
|
||
- 数据统计图表
|