ASA 手机零售平台 — 产品设计文档

版本: v0.2-draft | 日期: 2026-04-28


1. 系统定位

ASA(Agency-Sales-Account)是一个面向手机零售行业的多租户 SaaS 平台,通过四级组织架构(平台 → 代理商 → 公司 → 帐套)实现多层级权限管控和独立核算。


2. 四级组织架构

2.1 层级关系

平台(Platform)              ← 超级管理员,运营方
  └── 代理商(Agent)         ← 区域/渠道代理,可管理下属公司
        └── 公司(Company)   ← 独立经营主体,可管理帐套和商城
              ├── 帐套(AccountBook) ← 独立核算的进销存系统
              └── 商城(Mall)       ← 面向消费者的线上商城

2.2 各级角色定义

层级角色核心职责权限范围
平台超级管理员管理代理商、维护公库数据、统一经营监控全局,可查看所有代理商、公司、帐套数据
代理商代理商管理员管理下属公司、监控经营状况仅可查看/管理下属公司及下属帐套汇总数据
公司公司管理员管理帐套、商城、商品、订单、库存仅可管理本公司下的帐套和商城,本身不是独立核算单位
帐套帐套管理员/操作员日常进销存操作独立核算单元,数据隔离

3. 核心业务模块

3.1 平台管理模块

平台运营方使用的功能:

  • 代理商管理: 新增/编辑/停用代理商
  • 公司总览: 查看所有公司(跨代理商),按区域/行业/规模筛选
  • 经营监控仪表盘: 各代理商/公司的经营数据
  • 公库管理: 维护品牌库、商品分类、型号库、供应商库等公共基础数据
  • 全局业务配置: 维护科目模板、审批流模板、结算方式等平台统一定义的配置
  • 计费规则配置: 为各代理商设置收费模式

3.2 代理商模块

  • 公司管理: 新增/编辑/停用下属公司,设置资源配额
  • 经营汇总: 查看下属公司整体经营数据
  • 计费规则配置: 为各公司设置收费模式
  • 收入报表: 查看来自下属公司的收费收入明细

3.3 公司模块

  • 帐套管理: 创建帐套、设置帐套参数
  • 商城管理: 创建商城、绑定帐套、配置商城模板
  • 商品管理: 基于公库商品创建公司级商品
  • 员工管理: 管理公司员工及在各帐套中的角色权限

3.4 帐套模块(进销存核心)

基础模块(包含在帐套基础费用中)

模块功能
采购管理采购订单、入库、退货、供应商档案
销售管理零售订单、批发订单、销售退货
库存管理实时库存查询、出入库管理、库存预警
基础报表销售报表、采购报表、库存明细报表

高阶模块(可选,额外收费)

模块功能收费方式示例
高级仓储多仓库管理、库位管理、批次管理、盘点¥100/月/帐套
IMEI 追踪手机串号全流程管理¥80/月/帐套
财务管理应收应付、收付款、利润核算¥200/月/帐套
内部采购同一公司下帐套间相互采购¥50/月/帐套
数据报表库存周转率、库龄分析、毛利分析¥150/月/帐套

4. 会员体系

4.1 会员归属规则

会员归属公司层级,由公司统一管理会员档案、等级、积分和营销,各帐套通过引用 member_id 记录与该会员的交易流水。

4.2 会员档案

会员(Member)
├── 基础信息:编号、姓名、手机号、头像、注册时间
├── 会员等级:普通/银卡/金卡/VIP
├── 积分账户:当前积分、累计获得、累计消耗
├── 消费汇总:累计消费金额、订单数、首次/最近消费日期
├── 标签:系统标签 + 手动标签
└── 状态:正常 / 冻结 / 注销

4.3 积分体系

  • 获取方式: 消费获得(按等级倍率)、签到、活动赠送
  • 消耗方式: 积分抵扣订单金额、积分兑换商品/卡券
  • 过期规则: 公司可设置积分有效期(年度清零/滚动12个月过期)

5. 销售管理

5.1 销售渠道

渠道说明适用场景
线下零售门店 POS 收银,现场扫码/选品 → 收款 → 出库实体门店销售
线下批发批量销售,支持多商品多数量订单B2B 大宗交易
线上商城客户在商城下单 → 帐套发货 → 物流/自提微信/支付宝小程序、H5 商城

5.2 销售商品类型

商品类型库存管理出库方式
有串号标品按 IMEI/SN 逐一管理必须选择/扫描具体 IMEI 出库
无串号标品按数量管理按数量出库
服务类无库存销售后直接确认收入
卡券类按"张"管理关联卡号出库
回收非标品按 IMEI 逐一管理选择具体 IMEI 出库

5.3 成本线与提成计算

成本线 仅适用于标品,回收非标品一机一价不需要成本线。

成本线(CostFloor)
├── 商品:product_id
├── 成本线金额:¥X
├── 计算方式:手动设置 / 自动计算(按库龄递减)
└── 自动递减规则(可选)
      ├── 0-30天:基准价 × 100%
      ├── 31-60天:基准价 × 95%
      ├── 61-90天:基准价 × 90%
      └── 180天以上:基准价 × 70%

提成计算公式:

条件提成计算
售价 ≥ 成本线提成 =(售价 - 成本线)× 数量
售价 < 成本线无提成

6. 库存管理与存货计价

6.1 存货计价方法

帐套初始化时选择一种计价方法,之后不允许修改

计价方法说明适用场景
先进先出法(FIFO)先入库的商品先出库商品有保质期要求、价格波动较大的场景
移动加权平均法每次入库后重新计算加权平均单价商品同质化程度高、价格相对稳定的场景

回收商品强制使用个别计价法(一机一价)。

6.2 库存台账

每台商品的出入库都必须记录完整的库存台账:

库存流水(InventoryLedger)
├── 帐套、商品、仓库/库位
├── 流水类型:入库 / 出库
├── 子类型:采购入库 / 退货入库 / 销售出库 / 调拨入库 等
├── 数量、单价、金额
├── 结存数量、结存金额
├── 关联单据:采购单号 / 销售单号
├── IMEI/SN:序列号
└── 操作时间、操作人

7. 财务管理(高阶模块)

7.1 凭证配置体系

系统中所有产生凭证的业务场景,通过帐套级系统设置配置凭证模板。

平台预置凭证模板

业务场景预置分录(借 / 贷)
采购入库借:库存商品 / 贷:应付账款
销售出库借:主营业务成本 / 贷:库存商品
收款借:银行存款 / 贷:应收账款
付款借:应付账款 / 贷:银行存款
内部采购(采购方)借:库存商品 / 贷:内部往来
内部采购(供应方)借:内部往来 / 贷:主营业务收入

7.2 应收应付管理

应收单(Receivable)
├── 客户/供应商
├── 应收/应付金额
├── 已收/已付金额
├── 未收/未付金额
├── 账龄:按账龄区间自动计算
└── 状态:未结 / 部分结清 / 已结清 / 坏账

7.3 利润核算

利润基于账簿数据自动计算:

利润计算
├── 营业收入 = 主营业务收入 + 其他业务收入
├── 营业成本 = 主营业务成本 + 其他业务成本
├── 毛利润 = 营业收入 - 营业成本
├── 营业费用 = 销售费用 + 管理费用 + 财务费用
├── 营业利润 = 毛利润 - 营业费用
└── 净利润 = 利润总额 - 所得税

8. 计费体系(核心业务逻辑)

8.1 计费层级

平台 ← 收费 → 代理商

         代理商 ← 收费 → 公司

8.2 计费模式

模式说明示例
模式 A:按量计费按实际使用量收取固定单价费用¥200/月 × 帐套数
模式 B:按比例抽成平台从代理商向公司收取的费用中按比例抽成抽 20%
模式 C:固定费用收取固定金额,不随使用量变化¥5000/月
模式 D:阶梯计费按使用量分阶梯定价1-10个 ¥200/个,11+ ¥150/个

8.3 模块定价

代理商定价(针对下属公司)
├── 帐套基础费用: ¥200/月(含基础模块)
└── 高阶模块定价列表
      ├── 高级仓储: ¥100/月/帐套
      ├── IMEI 追踪: ¥80/月/帐套
      ├── 财务管理: ¥200/月/帐套
      ├── 内部采购: ¥50/月/帐套
      └── 数据报表: ¥150/月/帐套

9. 权限模型

9.1 双层 RBAC 架构

  • 公司级权限: 控制能访问哪些帐套、商城和公司级菜单
  • 帐套级权限: 控制在某个帐套/商城中能操作哪些功能

9.2 角色模板

预设角色所属范围典型权限
公司管理员公司全部公司级权限
帐套管理员帐套帐套全部功能权限 + 角色管理
采购员帐套采购单查看/创建/编辑、供应商管理
销售员帐套销售单查看/创建/编辑、客户管理
库管员帐套库存查看、出入库操作、盘点
财务帐套收付款查看/操作、凭证管理

10. 审批流与批签体系

10.1 审批流模型

审批流(ApprovalFlow)
├── 名称:如 "采购审批流"、"大额费用审批流"
├── 适用范围:采购/销售/付款/费用/内部采购等
├── 触发条件:金额条件、商品条件、客户条件
└── 审批节点列表(按顺序执行)
      ├── 审批人:指定用户 / 指定角色 / 直属上级
      ├── 审批方式:单人审批 / 会签 / 或签
      └── 超时处理:自动通过 / 转交上级 / 提醒

10.2 审批通过后的业务动作

业务类型审批通过后自动执行的动作
采购单生成入库单,通知供应商发货
销售单生成出库单,更新可用库存
付款单执行实际付款,更新应付账款
费用报销生成费用记录,计入费用科目
内部采购单通知供应方帐套出库,同步入库

11. 帐套间内部采购(同一公司内)

同一公司下的不同帐套之间可以进行内部采购,形成内部交易闭环。(高阶模块,需开通后方可使用)

11.1 内部采购流程

采购方帐套发起内部采购单

选择供应方帐套(同一公司下可选)

填写采购商品、数量、内部结算价格

供应方帐套确认(同意/拒绝/修改价格)

公司管理员审批

供应方出库 → 库存扣减(供应方)

采购方入库 → 库存增加(采购方)

系统自动生成内部结算单据

12. 技术架构要点

12.1 模块设计原则:低耦合高内聚

  • 模块自治: 每个模块拥有自己的数据模型、业务逻辑、API 接口
  • 接口通信: 模块之间通过定义良好的接口通信
  • 事件驱动: 跨模块的状态变化通过事件机制解耦

12.2 数据库架构:独立数据库 + 统一分发

平台数据库(Platform DB)
├── 组织架构数据、公库数据、全局业务配置
├── 计费数据、课程数据、用户中心
└── 帐套连接信息管理

帐套数据库 A(独立实例)
├── 业务数据:采购、销售、库存、财务
└── 操作日志

帐套数据库 B(独立实例)
├── 业务数据
└── 操作日志

12.3 技术栈

  • 后端: Go 1.25 + Gin + GORM + PostgreSQL
  • 前端: React(Vite 构建)
  • 部署: Docker / Docker Compose

13. 通知系统

通知类型

类型来源模块示例
审批通知审批流模块你有新的采购单待审批
库存预警库存模块iPhone 16 Pro 库存低于下限 50 台
账单通知计费模块本月账单已生成,请确认
欠费预警计费模块账户余额不足,请及时充值

通知渠道

渠道说明
站内消息用户登录系统后在通知中心查看
邮件发送电子邮件
短信发送短信(消耗公司购买的短信条数)

14. 操作日志

14.1 日志范围

日志类型记录内容
业务操作日志业务单据的创建、修改、删除、审批
登录日志用户登录/登出记录
权限变更日志角色分配、权限修改
配置变更日志系统配置、计费规则、审批流配置修改

14.2 日志模型

操作日志(OperationLog)
├── 操作用户、操作用户 ID
├── 操作时间、IP、设备
├── 所属公司、所属帐套
├── 模块、业务类型、业务对象
├── 操作描述
├── 变更内容(before/after)
└── 操作结果:成功 / 失败

15. 后续规划

15.1 第一阶段(MVP)

  • 四级组织架构及权限体系
  • 平台公库管理
  • 全局业务配置管理
  • 帐套独立数据库架构
  • 帐套初始化流程
  • 帐套基础模块(采购、销售、库存、基础报表)
  • 凭证配置体系基础
  • 计费体系基础框架
  • 审批流基础框架
  • 操作日志基础框架
  • 通知系统基础框架
  • 单个商城基础功能

15.2 第二阶段

  • 财务管理完整功能
  • 计费体系完整功能
  • 帐套高阶模块体系
  • 帐套间内部采购
  • IMEI 全流程追踪
  • 多帐套共用商城
  • 在线课程基础功能
  • 通知系统完整功能

15.3 第三阶段

  • 平台经营监控仪表盘
  • 线上会议(直播授课)
  • 题库与考试系统
  • 徽章与培训认证
  • 会员中心与营销工具
  • 物流对接
  • 欠费自动化处理

16. 逻辑闭环补全

16.1 统一链路

状态机 → 域事件 → 异步执行 → 凭证/台账/账单 → 对账

16.2 一致性与幂等

  • 帐套内: 要求同一事务完成"状态变更 + outbox 写入"
  • 帐套间: 采用"最终一致 + 可重放 + 可补偿"

16.3 凭证不可变、更正红冲与账期锁定约束

  1. 凭证生成的确定性与幂等
  2. 双分录校验(借贷合计必须严格平衡到分)
  3. 凭证确认后不可变更,更正通过"红冲/作废红冲"实现
  4. 账期锁定:已结账期间禁止新增/修改凭证

17. 金额与税费计算规范

  1. 金额精度: 所有金额统一使用"分"的整数(int64)
  2. 税费口径: 税额在明细行粒度完成四舍五入到分
  3. 折扣与优惠分摊: 必须可追溯,按明细原价比例或优惠优先级顺序分摊
  4. 卡券/充值卡: 发行时计入合同负债/预收款,消费完成时确认收入
  5. 赠品账务口径: 赠品库存结转成本进入费用类(如销售费用/促销费用)
  6. 退货/红冲一致性: 必须以原业务单据的财务影响作为红冲对象

文档版本: v0.2-draft | 最后更新: 2026-04-28