# 需求文档：商家入驻与商户变更

| 项目 | 说明 |
|------|------|
| 文档版本 | v1.2 |
| 适用范围 | 管理后台 — 商户准入与资料变更 |
| 原型对照 | `index.html`（商家入驻）、`merchant-change.html`（商户变更） |
| 说明 | 本文档依据当前静态原型整理；标注「待业务确认」项需产品/合规补充规则与接口约定。 |

---

## 1. 背景与目标

### 1.1 背景

平台需对商户完成准入信息采集（入驻），并在商户存续期内支持资料与结算信息的修改申请（变更），变更需进入审核流程，保证信息与证照一致、可追溯。

### 1.2 目标

- **商家入驻**：引导用户按步骤完整填写商家、证照、法人、结算信息，支持草稿与正式提交审核。
- **商户变更**：在同一商户上下文中，分场景编辑「商家侧信息」与「结算信息」，查看历史变更记录，并提交变更审核。

### 1.3 范围说明

- 本文档描述**页面信息架构、字段、交互与展示规则**。
- 不包含：具体接口协议、审核后台、消息通知模板、权限模型细粒度配置（可另文描述）。

---

## 2. 信息架构与导航

### 2.1 整体布局

- 左侧为**管理后台侧栏**（原型含：仪表盘、订单管理、商家入驻、商户变更、商户列表、系统设置等入口）。
- 右侧为主内容区：页标题、说明文案、业务内容区。

### 2.2 页面入口

| 页面 | 路由/文件（原型） | 侧栏状态 |
|------|-------------------|----------|
| 商家入驻 | `index.html` | 「商家入驻」为当前模块 |
| 商户变更 | `merchant-change.html` | 「商户变更」为当前模块；可从入驻页侧栏链入 |

---

## 3. 功能需求 — 商家入驻

### 3.1 页面说明

- **标题**：商家入驻。
- **说明**：提示用户填写商户、证照、法人及结算信息，提交后进入审核流程。

### 3.2 步骤条（向导）

- 展示 **4 步**，顺序固定：**商家信息 → 营业执照信息 → 法人证件信息 → 结算信息**。
- **视觉状态**：当前步高亮；已完成步显示完成态；未到达步为待办态。
- **交互**：
  - 用户可点击步骤条上**任意一步**切换展示对应步骤内容（原型支持）。
  - 支持 **上一页 / 下一页** 在相邻步骤间切换；第 1 步不展示「上一页」；第 4 步展示「提交审核」替代「下一页」。
  - 支持通过 URL 锚点 `#step-1` … `#step-4` 定位步骤（原型行为，正式环境是否开放待业务确认）。

### 3.3 底部操作区

| 按钮 | 出现条件 | 行为说明（需求层） |
|------|----------|----------------------|
| 上一页 | 第 2～4 步 | 返回上一步 |
| 保存草稿 | 各步均可（原型常驻） | 保存当前填写进度，不触发审核 |
| 下一页 | 第 1～3 步 | 进入下一步；**是否校验必填**由业务规则定义（原型未做校验） |
| 提交审核 | 第 4 步 | 点击后弹出**确认框**（二次确认文案），确认后提交完整申请进入审核；**全量校验规则**待业务确认 |

### 3.4 步骤一：商家信息

| 字段名 | 控件类型 | 必填 | 说明 / 约束（原型提示） |
|--------|----------|------|-------------------------|
| 商家名称 | 文本 | 是 | 与门头或对外展示名称一致 |
| 商家类型 | 下拉 | 是 | 选项：企业、工商户 |
| 商家分类 | 下拉 | 是 | 选项：餐饮、零售、服务、其他 |
| 营业状态 | 下拉 | 是 | 选项：正在营业、尚未营业、暂暂停营业 |
| 经营地址（省市区） | 省、市、区三级下拉 | 是 | 级联数据源待业务确认 |
| 商户经营详细地址 | 文本 | 是 | 街道、门牌号、楼层等 |
| 门店照片 | 上传区 ×3 | 是 | 门头照片、内部照片、收银台照片；支持点击/拖拽（正式需定义格式、大小、数量） |

### 3.5 步骤二：营业执照信息

| 字段名 | 控件类型 | 必填 | 说明 / 约束 |
|--------|----------|------|----------------|
| 营业执照照片 | 上传 | 是 | 扫描件/照片 |
| 营业执照名称（字号/名称） | 文本 | 是 | 与执照一致 |
| 执照号 | 文本 | 是 | 统一社会信用代码等 |
| 执照起始日期 | 日期 | 是 | — |
| 执照有效期 | 文本 | 是 | 支持日期或「长期」等文案（待统一校验规则） |
| 营业执照地址 | 文本 | 是 | 执照登记住所 |
| 营业执照经营内容 | 多行文本 | 是 | 经营范围/主营内容，与执照一致 |

### 3.6 步骤三：法人证件信息

| 字段名 | 控件类型 | 必填 | 说明 / 约束 |
|--------|----------|------|----------------|
| 法人身份证 | 上传 ×2 | 是 | 人像面、国徽面 |
| 法人姓名 | 文本 | 是 | — |
| 法人身份证号 | 文本 | 是 | 18 位（正式环境需校验位规则） |
| 身份证地址 | 文本 | 是 | 与身份证一致 |
| 身份证有效期 | 双日期 | 是 | 生效～到期；长期场景待业务与合规约定处理方式 |
| 法人手机号 | 电话 | 是 | 11 位 |
| 法人邮箱 | 邮箱 | 是 | 用于接收通知 |

### 3.7 步骤四：结算信息

| 字段名 | 控件类型 | 必填 | 说明 / 约束 |
|--------|----------|------|----------------|
| 账户类型 | 单选 | 是 | **对私** / **对公** |
| 开户许可证 | 上传 | 条件必填 | 仅当账户类型为 **对公** 时展示且必填；文案：开户许可证 / 基本存款账户信息 |
| 银行卡照片 | 上传 | 是 | 卡号面清晰可辨 |
| 开户行名称 | 文本 | 是 | 例：中国工商银行××支行 |
| 银行卡号 | 文本 | 是 | 对公/对私卡号 |

**联动规则**：选择「对公」时显示「开户许可证」上传；选择「对私」时隐藏该项（不采集）。

---

## 4. 功能需求 — 商户变更

### 4.1 页面说明

- **标题**：商户变更。
- **说明**：修改商家资料、证照、法人或结算信息，提交后进入审核。

### 4.2 主内容标签页

共 **3 个** 标签，互斥展示：

| 标签 | 内容概要 |
|------|------------|
| 商家信息 | 商家基础信息 + 营业执照信息 + 法人证件信息（与入驻对应模块字段对齐） |
| 结算信息 | **当前结算信息** 区块，字段与入驻「结算信息」一致，含对公/对私联动 |
| 商户变更记录 | 列表展示该商户历史变更申请 |

**底部操作区**（保存草稿、提交变更审核）：

- 在 **商家信息**、**结算信息** 标签下展示。
- 在 **商户变更记录** 标签下**不展示**（仅查看记录，避免误操作）。

### 4.3 标签「商家信息」— 折叠区块

同一标签内分 **3 个可折叠卡片**，标题栏可点击展开/收起，右侧有折叠指示（▼/收起态旋转）。

| 区块名称 | 默认展开状态（原型） | 内含字段 |
|----------|----------------------|----------|
| 商家信息 | 展开 | 同 **3.4 商家信息** 全部字段 |
| 营业执照信息 | 收起 | 同 **3.5 营业执照信息** 全部字段 |
| 法人证件信息 | 收起 | 同 **3.6 法人证件信息** 全部字段 |

**无障碍**：标题为按钮，需维护 `aria-expanded`、`aria-controls` 与内容区 `role="region"`（与原型一致）。

### 4.4 标签「结算信息」

- 卡片标题：**当前结算信息**。
- 字段与 **3.7 结算信息** 一致；单选组与入驻区分命名，避免同页冲突（实现层要求）。
- **对公 / 对私** 与 **开户许可证** 显隐规则同 **3.7**。

### 4.5 标签「商户变更记录」

- 展示形式：**表格列表**。
- 列表上方可配有简短说明文案（原型：该商户历史变更申请记录）。

**列定义**：

| 列名 | 说明 |
|------|------|
| 变更人 | 发起本次变更操作的用户（账号名/姓名，以账号体系为准，待业务确认） |
| 审核状态 | 枚举展示；含：**待审核**、**审核通过**、**审核驳回**、**已撤销**（用户主动撤销后的终态；是否与审核流状态码一一对应待确认） |
| 变更时间 | 提交变更申请的时间，格式建议：`YYYY-MM-DD HH:mm` |
| 变更类型 | 枚举：**商家信息**、**结算信息**（与本次申请修改范围对应；若一次申请含多类是否拆行待业务确认） |
| 操作 | **撤销**：仅当本条申请处于**待审核**（或业务约定的可撤销状态）时展示；点击后先弹出**确认框**，确认后状态变为 **已撤销**，操作列改为不可再操作（如展示「—」）。已通过、已驳回、已撤销等状态不展示撤销。 |

**列表能力（待扩展，非原型必选）**：分页、排序、筛选、导出、查看详情 —— 可在二期需求中定义。

### 4.6 底部操作（商户变更）

| 按钮 | 说明 |
|------|------|
| 保存草稿 | 保存当前编辑，不提交审核 |
| 提交变更审核 | 点击后弹出**确认框**，确认后提交变更申请进入审核；**是否分标签独立提交或合并提交**待业务确认（原型为统一按钮） |

---

## 5. 非功能与体验（建议）

- **响应式**：窄屏下表单项可单列堆叠；侧栏可隐藏或收折（与原型一致）。
- **上传**：正式环境需约定大小、格式、病毒扫描、OCR 对接等。
- **安全与合规**：身份证、银行卡、证照等敏感信息脱敏展示规则、日志留痕、操作权限在专项需求中定义。

---

## 6. 数据与状态（待业务/研发对齐）

| 主题 | 待确认项 |
|------|----------|
| 入驻与变更 | 变更是否必须关联已存在商户 ID；从列表进入变更时如何预填「当前结算信息」 |
| 审核流 | 状态枚举、驳回原因是否回显、是否支持撤回草稿 |
| 变更记录 | 变更类型与多模块同时修改的建模方式 |
| 校验 | 各字段前后端校验规则、跨字段一致性（如执照名称与商家名称） |

---

## 7. 修订记录

| 版本 | 日期 | 说明 |
|------|------|------|
| v1.0 | 2026-04-25 | 初版，依据 `index.html`、`merchant-change.html` 原型整理 |
| v1.1 | 2026-04-25 | 变更记录增加「操作 / 撤销」与审核状态「已撤销」 |
| v1.2 | 2026-04-25 | 入驻「提交审核」、变更「提交变更审核」与「撤销」增加二次确认弹窗 |
