# 店铺设置 — 前端技术方案

> **依据：** 《店铺设置功能需求.md》v1.1、《店铺设置技术方案.md》v1.1.1  
> **前端规范：** `doc/前端设计/前端设计.md`  
> **范围：** 仅 **ruoyi-ui 平台管理端** 全平台策略单页；商家端 **不可** 修改。  
> **实现状态：** 页面与 API 封装已落地，待后端 `/agri/shopSetting` 联调。

---

## 1. 技术栈与写法约定

| 项 | 说明 |
|----|------|
| 框架 | Vue 2 + Element UI |
| 请求 | `@/utils/request` |
| 参考页面 | `ruoyi-ui/src/views/agri/content/merchantEntryAgreement/index.vue`（单页 el-card 表单） |
| 页面形态 | **单页配置**（非列表）；全平台 **一条** 配置 |
| 开关字段 | `defaultAuditPass`：`"0"` 关 / `"1"` 开 |

---

## 2. 文件清单

| 类型 | 路径 | 说明 |
|------|------|------|
| 页面 | `ruoyi-ui/src/views/agri/org/shopSetting/index.vue` | 全局策略表单 |
| API | `ruoyi-ui/src/api/agri/shopSetting.js` | GET / PUT |

**组件 name：** `AgriShopSetting`

---

## 3. 菜单与路由

| 菜单名称 | 组件路径 | 路由 path（建议） | 权限标识 |
|----------|----------|-------------------|----------|
| 店铺设置 | `agri/org/shopSetting/index` | `shopSetting` | `agri:shop:setting` |

**上级菜单：** 农资管理 → **组织管理**（独立菜单，**非** 店铺列表逐行入口）

| 按钮权限 | 标识 |
|----------|------|
| 保存 | `agri:shop:setting` |

---

## 4. 页面结构

```text
店铺设置（单页 · el-card）
├── 卡片标题 + 说明
│   └── 「全平台设置，针对所有店铺生效」
├── 商品是否默认审核通过 defaultAuditPass
│   └── 说明：仅对此后新 submit 上架生效
├── 最大子管理员数量 maxSubAdmin（1～99）
└── 保存 / 重置（重新加载）
```

---

## 5. 复用组件

无特殊业务组件；使用 `el-radio-group`、`el-input-number`。

---

## 6. API 对接

**基路径：** `/agri/shopSetting`

| 前端方法 | HTTP | 路径 | 说明 |
|----------|------|------|------|
| `getShopSetting` | GET | `/` | 进入页加载 |
| `saveShopSetting` | PUT | `/` | 保存配置 |

### 6.1 加载响应 `response.data`

| 字段 | 默认值 | 说明 |
|------|--------|------|
| defaultAuditPass | `"0"` | 关=待审核；开=直接出售中 |
| maxSubAdmin | `5` | 全平台子管理员上限 |

### 6.2 保存请求体

```json
{
  "defaultAuditPass": "0",
  "maxSubAdmin": 5
}
```

**成功 msg（SS11）：** `商品默认审核设置仅对此后新提交上架的商品生效`

---

## 7. 校验规则

| 字段 | 规则 |
|------|------|
| defaultAuditPass | 必选，`0` 或 `1` |
| maxSubAdmin | 必填，整数 1～99（`el-input-number` 限制） |

---

## 8. 权限指令

```html
v-hasPermi="['agri:shop:setting']"
```

---

## 9. 与关联模块边界

| 模块 | 关系 |
|------|------|
| 店铺管理 | 开店 **不** 写入策略；新店自动读全局值 |
| 商品管理 | submit 读 `IShopGlobalConfigFacade`（后端）；前端仅维护配置页 |
| 商户入驻审核 | 首店创建后同样受全局免审开关约束 |

**不追溯（SS3）：** 改开关 **不** 批量改已有商品；页面文案已说明。

---

## 10. 联调检查清单

- [ ] GET 无记录时默认 关 + 5  
- [ ] PUT 成功后 msg 含「此后新提交」  
- [ ] maxSubAdmin 超范围后端拦截  
- [ ] 商家端无此菜单  

---

## 11. 非本期（前端）

子管理员人数实际 CRUD、按店差异化策略、变更历史。

---

## 12. 修订记录

| 版本 | 日期 | 说明 |
|------|------|------|
| v1.0 | 2026-05 | 首版：全局单页配置；对齐功能需求 v1.1 |

---

*文档版本：v1.0 · ruoyi-ui · 关联《店铺设置功能需求.md》v1.1*
