巴青农资商城

关联需求分析.md 26KB

农资商城 Web — 关联需求分析

范围: 基于 doc/农资商城web/ 下各模块 功能需求定稿 梳理跨模块关系;不涉及 数据库表结构、接口路径、技术实现。
目录(v3.0): 组织管理(商户/店铺/店铺设置/入驻审核)、商品管理(主模块 + 分类/服务/审核)、内容管理、会员管理、订单管理;详见 文档索引.md
依据: 《商户管理功能需求》v1.3.1、《店铺管理功能需求》v1.3.2、《商品分类功能需求》v1.5、《商品管理功能需求》v1.3.3、《商品服务管理功能需求》v1.0.1、《会员管理功能需求》v1.0、《订单管理功能需求》v1.0.1。
说明: 不修改任何 *-草稿.md;技术方案、测试用例为验收参考,本分析以功能需求为准。
v1.1: 纳入 商品服务管理(平台主数据 + 商品勾选快照)。
v1.2: 纳入 用户链(会员、订单);定稿 未完成订单 O10、待支付自动关闭 O8、消费统计 O11
v1.3: 文档目录重组(组织管理 / 商品管理 / 内容管理);路径见 文档索引.md v3.0。
v1.6: 发品分类口径:category_id = 平台二级;shop_category_id = 本店店铺商品二级。


1. 分析目的

目标 说明
统一业务链 说明「商户 → 店铺 → 服务目录 → 分类 → 商品 → C 端」先后依赖与谁配置、谁消费
划清边界 避免平台端与商家端职责混淆(如分类谁维护、账号谁配置)
收敛规则 将分散在各模块的 R/S/G/P 规则归纳为可执行的跨模块约束
明确不联动 列出「状态变更不自动级联」场景,防止产品设计遗漏

2. 系统定位与三端

                    ┌──────────────────────────────────────────┐
                    │            平台管理端(Web)                 │
                    │  商户 │ 店铺 │ 商品服务 │ 商品管理(监管)      │
                    └──────────────────┬───────────────────────────┘
                                       │ 主体、开店、服务目录、审核
                    ┌──────────────────▼───────────────────────────┐
                    │         店铺经营管理端(商家后台)               │
                    │  经营账号登录 → 选当前店铺                     │
                    │  商品分类 │ 商品发布(含服务勾选)/上架/下架      │
                    └──────────────────┬───────────────────────────┘
                                       │ 出售中且满足条件
                    ┌──────────────────▼───────────────────────────┐
                    │              C 端(用户商城)                  │
                    │  浏览分类/商品、服务快照展示、下单              │
                    └──────────────────────────────────────────┘
主要角色 本分析涉及模块
平台管理端 平台管理员 组织管理(商户/店铺/入驻)、商品管理(服务/审核/监管)、内容管理
店铺经营管理端 店铺经营账号、子管理员(上限由平台配置,子账号能力 非本期 商品分类、商品管理(商家侧,含服务勾选)
C 端 用户 不单独成稿;可售条件在商品/店铺/分类需求中定义;服务展示读商品快照

供给链共性(商户/店铺/商品 v1.3): 商家登录使用 平台配置的店铺经营账号不校验 C 端会员注册。

2.1 双业务链(v1.2)

【供给链】商户 → 店铺 → 商品服务 → 分类 → 商品 → C 端可购
【用户链】C 端会员注册 → 下单/支付 → 订单履约(平台)→ 会员管理(只读订单/消费统计)
账号对象 平台模块
供给链 店铺经营账号 商户、店铺、商品服务、商品(监管)
用户链 C 端买家会员 会员管理、订单管理

两链 账号不混用;店铺经营账号 不是 会员账号。


3. 模块职责与边界

菜单分组(文档目录 v3.0): 组织管理(商户、店铺、店铺设置、入驻审核)· 商品管理(商品、分类、服务、审核)· 内容管理(协议、Banner)· 会员/订单(用户链,顶层目录)。

模块 核心职责 明确不做
商户管理 平台 添加/维护商户(主体+经营信息)、认证状态、删除商户主体 不配置商家登录账号;不管理店铺/商品/分类
店铺管理 平台 为合格商户开店、店铺开业/停业、配置商户级经营账号、删店;商家端可改店资料(列表同源) 不维护商品分类;店铺策略见《店铺设置》;不审核商品
店铺设置 平台 全平台 商品默认审核子管理员上限(针对所有店铺) 非逐店配置;见 组织管理/店铺设置/
入驻审核 平台 + C 端 用户商城入驻申请、平台审核→公示→首店创建 不替代商户管理日常维护;协议见内容管理
商品分类 平台 + 商家 平台维护全平台分类(shop_id 为空);商家维护本店店铺商品分类树 商品 category_id平台二级shop_category_id 可选挂本店二级;均 不可 挂一级
商品管理 平台 + 商家 商家发品与状态流转;平台审核、下架、全平台检索;勾选服务并保存 快照 不维护服务目录
商品审核 平台 待审/出售中商品 监管列表、审核、下架(与商品管理同源状态机) 不重复商家发品表单;见专册或合入商品管理菜单
商品服务管理 平台 全平台服务目录(名称、简介、图标、默认显示、排序) 非店铺维度;商家/C 端 不维护 目录

3.1 模块依赖方向(功能层)

商户管理 ──前置──► 店铺管理 ──前置──► 商品分类(商家)
                              ├──► 商品服务管理(平台,可与开店并行)
                              └──► 商品管理(商家发品 + 平台监管)
  • 硬前置: 无商户 → 无店;无店 → 商家无法维护分类/发品。
  • 软前置: 商户 经营信息未完整 → 不可被选为开店对象(仍可先入驻主体)。
  • 并行: 平台可先配 商品服务目录 再发品;同一店铺下商家可先建分类再发品;分类、商品服务勾选、商品均在 当前店铺 上下文(服务目录本身全平台共用)。

3.2 商品服务与商品的边界(定稿)

问题 定稿
谁维护目录? 仅平台 · 商品服务管理
谁勾选? 商家 发品/编辑商品时多选(可零项)
展示用哪份数据? 保存商品时的 展示快照(P18);非实时跟目录
删服务项 有被未删商品勾选则 不可删;删后 C 端 不展示(P20)
改服务文案 不自动 改已售商品 C 端展示(P19)

4. 核心业务对象(功能视角)

对象 归属 关键属性(功能语义) 主要维护方
商户 平台 个人/企业、主体资质、经营信息、认证状态(正常/冻结/注销)、已绑定店铺数 平台 · 商户管理
店铺 商户下 名称、头像、开业/停业、商家电话;默认审核/子管理员上限 见《店铺设置》全局 平台 · 店铺管理;商家端可改名称/头像/描述/电话
商户经营账号 商户下 一套(多店共用登录名) 登录名、管理员姓名、密码;首家店创建,后续店须一致 平台 · 店铺管理(开店/账号管理)
子管理员 店铺维度配额 人数上限 在店铺设置;具体人员 非本期 预留 · 商家端(待建设)
商品分类 店铺下 一级+二级;显示/热门/排序;店间独立 商家 · 商品分类
商品 店铺下 编号(系统生成)、单规格价/库存、五态、二级分类、服务展示快照 商家创建;平台审核/下架
商品服务项 全平台 名称、简介、图标、默认显示、排序 平台 · 商品服务管理

命名说明(需求用语): 产品称「店铺经营账号」;业务上为 一商户一套登录凭证、多店共用,与「每店一条账号」不同。


5. 端到端主流程

5.1 标准开业流程(平台 + 商家)

【平台】添加商户
    → 仅填写主体资质(个人 / 企业)
    → 认证状态 = 正常,提示后续补全经营信息
        ↓
【平台】编辑商户
    → 补全商户经营信息(名称、联系人、结算银行等)
    → 经营信息完整后,方可被店铺管理选为开店对象
        ↓
【平台】添加店铺
    → 选择商户(须:未删除 + 认证正常 + 经营信息完整)
    → 配置经营账号(首家:登录名/姓名/密码;非首家:须与已有账号一致)
    → 店铺默认开业;**全局** 店铺策略见独立菜单「店铺设置」
    → 商户「已绑定店铺数量」+1
        ↓
【平台】商品服务管理:配置服务目录(可与开店并行,建议发品前完成)
        ↓
【商家】经营账号登录 → 选择当前店铺
        ↓
【商家】商品分类:添加一级 / 二级分类
        ↓
【商家】商品管理:发布商品 → 未上架(草稿)
    → 选择平台二级「商品分类」(必选);可选本店「店铺商品分类」
    → 勾选商品服务(可选,默认显示项预勾选)→ 保存生成快照
    → 提交上架
        ↓
    ┌─ 店铺「默认审核通过」= 关 ─► 待审核 ──【平台】审核──► 出售中 / 审核失败
    └─ 店铺「默认审核通过」= 开 ─► 直接出售中
        ↓
【C 端】出售中 + 店铺开业 + 分类显示 + 库存>0 → 可下单
    → 商品详情展示服务 **快照**(已删服务项不展示)

5.2 商户认证异常对下游的影响

商户认证变更 店铺管理 已有店铺 商品状态 C 端
已冻结 不可 新开店 不自动停业 不自动下架 不停业店仍可售(若店铺仍开业)
已注销 不可新开店;不可编辑商户 不自动停业 不自动下架 同上
正常(恢复) 可开店(须经营信息完整)

运营可 人工 将店铺改为停业;改停业须二次确认,C 端该店 禁止下单,商品后台状态 不变

5.3 店铺停业与商品、C 端

平台:店铺 开业 → 停业(二次确认)
    ↓
商品:仍为出售中(及其他原状态,不批量变更)
    ↓
C 端:该店禁止下单(购物车/立即购买均拦截)
    ↓
商家端:仍可维护分类、商品资料(需求允许)

5.4 商品状态闭环(跨端摘要)

状态 商家端 平台列表 进入方式 离开方式
未上架 保存商品 提交上架
待审核 提交上架(店免审关) 平台通过→出售中;驳回→审核失败
出售中 审核通过或店免审开 平台/商家下架→已下架
审核失败 平台驳回 修改后重新提交上架
已下架 下架 重新提交上架

刚性约束(P17): 状态 只能 通过「提交上架、平台审核、下架」变更;编辑保存 不得 直接改为出售中,也 不得 改回未上架。

待审核期间(P14): 商家可改资料,保存后 仍为待审核,不自动通过,不视为重新排队(以首次提交上架时间为准)。


6. 跨模块业务规则总表

6.1 商户 ↔ 店铺

编号 规则 触发模块 消费模块
M-S1 开店可选商户:未删除 + 认证 正常 + 经营信息 完整 商户 R6 店铺 S1
M-S2 单商户可开 多个 店;不设 开店数量上限 商户 R1 店铺 S2
M-S3 同商户下所有店 同一套 经营账号(登录名一致) 店铺 S4/S5 开店、账号管理
M-S4 经营账号在 添加店铺 时配置(首家必填密码) 店铺 商户不采集
M-S5 商户冻结/注销 → 不可新开店不自动 改店铺状态 商户 7.5 店铺 S9
M-S6 商户详情可跳转店铺列表(按商户名筛选) 商户 8.1 店铺列表
M-S7 末店删除后经营账号 保留,便于再开店沿用 店铺 11.5 再次开店

6.2 店铺 ↔ 商品

编号 规则 说明
S-P1 「默认审核通过」默认 关闭 新提交上架 → 待审核;开启则 → 出售中
S-P2 修改审核开关 不追溯 已存在商品 仅影响 此后 新提交上架
S-P3 店铺 停业 → C 端禁单;不自动 下架商品 商品可仍为出售中
S-P4 删店前置:无 出售中、无 待审核 商品 已下架/审核失败/未上架不阻塞删店
S-P5 商品创建后 不可换店 归属店铺固定
S-P6 子管理员上限仅数字配置;人员管理 非本期 店铺 10.4

6.3 分类 ↔ 商品

编号 规则 说明
C-P1 商品 category_id 仅可关联平台二级分类 不可挂一级
C-P1b shop_category_id 若填写则 仅可关联本店店铺商品二级 见《店铺商品分类功能需求》
C-P2 删二级分类前须无关联商品 须先改商品分类或处理商品
C-P3 删一级:子级无商品方可删;通过则 级联删 下属二级 批量删整批失败
C-P4 改分类显示/排序 不自动 改商品上下架状态 分类 G8
C-P5 分类「不显示」→ C 端无分类入口;商品 不自动 下架 与 P9 衔接

6.4 平台商品监管

编号 规则 说明
P-PL1 平台列表 不含 未上架 草稿仅商家可见
P-PL2 待审核 可审核;仅 出售中 可下架 其他状态操作阻断
P-PL3 批量审核/下架:含不符合状态 → 整批失败 与分类批量删一致
P-PL4 审核驳回 必填原因 商家可见
P-PL5 平台可按店铺、分类路径检索 分类由商家维护,平台只读引用

6.5 商品服务 ↔ 商品

编号 规则 说明
GS-P1 服务目录 全平台一份,非店铺维度 商品服务 GS1
GS-P2 商家发品 多选 服务,可不选 商品 §10.6
GS-P3 保存商品时写 展示快照 商品 P18
GS-P4 C 端/详情展示 快照,平台改目录 不追溯 商品 P19;商品服务 GS13
GS-P5 逻辑删除服务项 → C 端 不展示 商品 P20
GS-P6 商家再次保存商品 → 自动剔除 已删服务项 商品 P21
GS-P7 删服务项:有被未删商品勾选 → 不可删 商品服务 GS7
GS-P8 批量删服务:整批失败 商品服务 GS8
GS-P9 改/删服务 不改变 商品上下架状态 商品服务 GS9

7. 删除与注销顺序(逻辑严谨)

7.1 推荐操作顺序

处理商品(出售中下架、待审核审完)
    ↓
删除店铺(满足:无未完成订单、无出售中/待审核商品)
    ↓
删除商户(满足:无下属店铺、无未完成订单、认证非注销等)

禁止: 在仍有未删除店铺时删除商户;在仍有出售中/待审核商品时删除店铺。

7.2 各层删除前置(功能条件)

对象 全部满足方可删除 不满足时典型提示方向
二级分类 该分类下无未删除商品 先处理商品
一级分类 其下任一二级都无商品;确认后级联删二级 子分类有商品则整棵不可删
店铺 无未完成订单(O10:待支付+待发货+已发货);无出售中/待审核商品 先下架或审完商品
商户 正常或冻结;0 下属店铺;无未完成订单(O10 先删店铺

订单 O10 说明: 已关闭(含待支付超时自动关闭 O8)、已完成已删除 不属于 未完成订单。

均为 逻辑删除;删除后列表默认不展示,历史数据保留策略以各模块为准。

7.3 逻辑删除后的经营能力

事件 分类维护 商品新发/上架 经营账号
店铺逻辑删除 不可用 不可用 同商户仍有店则保留
商户末店删除 保留,再开店可沿用
商户注销 不可新开店;商户资料只读

8. 状态与事件「不自动级联」清单

以下场景需求 明确不自动联动,实现与测试须避免「误级联」:

事件 不自动发生的变更
商户 → 已冻结/已注销 店铺不停业;商品不下架
店铺 → 停业 商品状态不变;仅 C 端禁单
店铺「默认审核通过」开关变更 已有商品状态不批量重算
分类 → 不显示 商品不下架;C 端分类入口隐藏
商家编辑待审核商品 不自动变为出售中
商家编辑出售中商品 状态仍为出售中(资料可变)
平台编辑/删除商品服务项 商品状态不变;C 端展示 不自动 跟目录变(读快照);已删服务 C 端不展示
平台改服务「默认显示」 不追溯 已保存商品的勾选与快照

9. 账号体系(功能层)

9.1 商户经营账号

定稿
配置时机 添加店铺(通常首家店)
维度 一商户一套,非每店一套
维护入口 平台 · 店铺管理 · 店铺账号管理
修改影响 改登录名/密码后,同商户下所有店 展示同步
与会员 关联
登录后 商家须 切换当前店铺,再操作分类/商品

9.2 子管理员

定稿
配置 平台在 店铺设置 配置 最大人数(默认 5,1~99)
使用 商品分类/商品需求中写明可由子管理员操作,但 增删子账号、权限分配非本期
依赖 待「商家端账号/权限」模块建设后落地

10. 批量操作统一原则

各模块对「勾选多条后批量处理」采用一致策略,便于产品与测试统一预期:

模块 操作 规则
商品管理 批量审核 仅待审核;含其他状态 → 整批失败,不变更任一条
商品管理 批量下架 仅出售中;含其他状态 → 整批失败
商品分类 批量删除 任一条校验失败 → 整批不删,汇总原因
商品服务管理 批量删除 任一条有关联商品或校验失败 → 整批不删,汇总原因

11. C 端可售条件(四模块交汇)

用户下单须 同时 满足(商品需求第 11 节):

# 条件 来源模块
1 商品状态 = 出售中 商品管理
2 店铺 = 开业 店铺管理
3 商品所属分类 显示 = 是(且父级一级亦显示,技术方案有父级联动;功能上为「分类可见」) 商品分类
4 库存 > 0 商品管理

任一不满足即拦截下单;店铺停业库存为 0 须分别提示。

说明: 商品服务项 不参与 可下单校验(商品服务 GS、商品 §11.1)。


12. 模块依赖矩阵(谁依赖谁的数据)

| | 商户 | 店铺 | 商品服务 | 分类 | 商品 | 会员 | 订单 | |--|:--:|:--:|:--:|:--:|:--:|:--:|:--:| | 商户 | — | 主体 | — | — | 间接 | 无 | 删商户 O10 | | 店铺 | 依赖 | — | — | 店/账号 | 删店校验 | 无 | 删店 O10 | | 商品服务 | — | — | — | — | 目录 | — | — | | 商品分类 | — | 店 | — | — | 分类 | — | — | | 商品管理 | 间接 | 店态 | 勾选 | 分类 | — | — | 支付扣库存 | | 会员管理 | 无 | 无 | — | — | 间接 | — | 只读订单/O11 | | 订单管理 | 间接 | 店 | 快照展示 | — | 库存 | 数据源 | — |


12.1 订单 ↔ 会员 / 店铺 / 商品(v1.2)

编号 规则 说明
O-P1 未完成订单 O10 = 待支付 + 待发货 + 已发货 删店/删商户
O-P2 待支付超时 O8 → 已关闭,不计入 O10 订单 §3.4
O-P3 累计消费 O11已完成 会员 §6.5
O-P4 支付成功扣库存;待支付不扣 订单 §12.2;商品 P15
O-P5 整单发货,本期不拆单 订单 O5、§17
O-P6 会员管理内订单 只读 订单 O12;会员 M6

13. 非本期与待建设(关联影响)

影响范围 当前文档处理
C 端下单/支付页面细则 用户链 订单需求含协作规则;C 端另述
子管理员 CRUD 与权限 商家端 仅上限数字;分类/商品写明可含子管理员,能力预留
分批发货/拆单 订单 草稿有;本期不做(订单 §17)
支付渠道、退款、售后 订单 另册
多 SKU / 多规格 商品 首期单规格
平台代发、商品导出、C 端商品列表 API 商品 非本期
三级分类 分类 禁止
商户/店铺逻辑删除恢复 各模块 删除后须新建,不恢复
按服务项检索全平台商品 商品服务 非本期
服务分组、多语言 商品服务 非本期

14. 源文档索引

文档 版本 角色
组织管理/商户管理/商户管理功能需求.md v1.5 主体与认证;平台/C 端差异
组织管理/店铺管理/店铺管理功能需求.md v1.3.5 开店、账号、商家端店资料
组织管理/店铺设置/店铺设置功能需求.md v1.1 全平台店铺策略
组织管理/入驻审核/商户入驻审核功能需求.md v1.1 C 端完整填报;审核→公示→入驻
商品管理/商品分类/商品分类功能需求.md v1.5 平台 + 商家分类;发品双字段口径
商品管理/商品管理功能需求.md v1.3.3 商品状态与商家发品
商品管理/商品审核/商品审核功能需求.md v1.0 平台审核/下架
商品管理/商品服务/商品服务管理功能需求.md v1.0.1 平台服务目录
内容管理/商城入驻协议/商城入驻协议功能需求.md v1.0 入驻协议文案
会员管理/会员管理功能需求.md v1.0.1 C 端买家
订单管理/订单管理功能需求.md v1.0.1 履约、O8/O10/O11
订单管理/订单管理技术方案.md v1.0.1 DDL sql/biz_order.sql
店铺后台/订单管理/全部订单/全部订单功能需求.md v1.0 商家端本店订单
店铺后台/订单管理/全部订单/全部订单技术方案.md v1.0.1 /agri/seller/order
店铺后台/订单管理/全部订单/全部订单测试用例.md v1.0 SAO-UT/SAO-API/SAO-UI
文档索引.md v3.0 版本与路径入口

15. 分析结论(给产品 / 研发 / 测试)

  1. 主链路清晰: 商户(主体+经营)→ 店铺(+经营账号)→ 商品服务目录 → 商家分类 → 商家商品(含服务勾选与快照)→ 平台审核 → C 端;缺店则无法发品,无服务目录仍可发品(服务可选)。
  2. 边界清晰: 平台维护 平台分类、商家维护 店铺分类(数据隔离);商户不建登录账号;店铺不审商品;商品服务仅平台维护目录,商品负责勾选与快照。
  3. 逻辑一致: 批量整批失败、删除顺序、状态不级联在多模块重复出现;服务展示快照(P18~P21)与「目录变更不级联商品状态」已纳入 §6.5、§8。
  4. 用户链已衔接: 会员只读订单;订单 O8/O10/O11 与删店、消费统计一致;整单发货、不拆单。
  5. 缺口显性: 子管理员、C 端交易页、支付退款/售后、拆单为非本期或另册。
  6. 测试建议: 供给链见各模块测试用例;用户链见《订单管理测试用例》v1.0(49)、《会员管理测试用例》v1.0(39):下单 → O8 超时关闭 → 支付 → 发货 → 确认收货 → O11 消费统计;删店 O10

文档版本:v1.6 · 仅功能需求关联分析 · 不修改草稿 · 路径对齐文档索引 v3.1