促销系统业务模型 - 2

POP

POP是Point of Purchase的简称,指线上线下一体化促销管控专用记录单。该单据用于存储已完成线下落地筹备的促销/会员全量约束信息。其核心是通过布尔字段 print_pop 标识是否生成/打印线下海报、地推物料、门店价签等线下实物物料,是系统执行同sku、同门店、时段互斥的核心依据。

如果双方任意一侧有POP数据且是否打印为真,则互斥,否则不互斥。

覆盖单门店、店群、城市级全域活动;只要活动覆盖范围内任意门店存在 print_pop=True 的 POP 记录,同 SKU、重叠时段的新活动直接拦截创建,避免线下多套冲突促销物料同时投放、线上活动随意修改导致门店执行混乱。

库存管理与订货规划

库存管理需要关注两个维度:我需要多少货,和已经卖了多少货。订货规划则需要关注应该订多少货,和实际订货的偏差是多少。一个完整的库存系统(无论用于促销活动还是供应链管理),都需要关心如下问题:

角色 核心关注
运营 备货策略如何定?(目标库存天数/安全水位)怎么根据大促波次调整配货权重?
审核员 这个订货量合理吗?滞销或断货等风险可控吗?
订货系统 建议的采购建议量是多少?怎么区分大仓补货和门店直供?
供应商 生产多少?
大仓 我要收供应商多少?每个门店发多少?在一个供应链系统中,如何对有保质期的商品及时配送?
门店 今天要订多少货?能卖多少货?一共能卖多少货?
交易系统 还能卖吗?超过限制了吗?
消费者 我还能买吗?

活动创建

运营创建促销活动时,需要关注如下信息

  • 有哪些sku参与?促销规则是什么?
  • 单个sku(无论是参与品还是优惠品)的最大库存总量应该是多少?
  • 有没有限购规则?活动赠送是仅限一次还是可以反复送?活动参加有什么门槛?

随后活动进入审批系统。审核员主要关注如下信息

  • 活动名字、描述等是否合理?
  • 促销规则是否存在被薅羊毛的可能?
  • 库存限制是否合理?

审批通过后,活动开始前,活动将进入“待生效”状态。此时和货物相关的角色开始供货

开始供货

订货系统按照运营给定的促销规则,给供应商、大仓、门店、交易系统指定规则

  • 对每个供应商,告诉他们大仓可能回订多少货,需要他们在什么时候开始供应多少货
  • 对每个大仓,告诉他们应该在什么时间段备足多少货,他们能联系哪些供应商,提供哪些sku,应该在什么时候发送到哪些门店
  • 对每个门店,告诉他们谁给他们供货,应该在什么时间备好多少货

订货系统接收如下信息

  • 供应商对应时间段的最大供货量信息
  • 大仓对应的现存货物信息,实际对应的门店信息
  • 门店的现存库存信息,门店实际执行的订货量

活动开始

一定时间后,活动进入“生效中”状态,先前的供货开始使用。消费者开始按照交易系统中的信息购买sku。消费者的限购额或限购数是一早由运营写好的。

由于这是一个促销管理系统,因此对库存管理也是点到即止,还没有涉及大仓中可能的竞态问题(生产-消费者问题),没有涉及保质期问题。

价格倒挂

因为某些规格的物品进行了促销活动,导致一些本应该比它更便宜的物品却更贵了,导致后者没人买,就产生了价格倒挂。一般来说,可以归纳至少但不限于以下几种情形

  1. 包装规格:小型包装规格(如300ml可乐)的物品做促销后,每毫升价格居然比大型包装规格(2L可乐)的还便宜,这样大可乐就没人买了。解决方案是小型包装规格的物品在做促销时,大型包装规格的物品也一定要做促销。
  2. 冰镇和常温:冰镇啤酒做促销后的价格比常温啤酒还便宜,常温啤酒就没人买了。解决方案是冰镇啤酒做促销时常温啤酒必须同步促销。
  3. 大米真空失空:真空大米做促销后的价格比正常大米还便宜,正常大米就没人买了。解决方案是真空大米做促销时正常大米也必须做促销。、

活动互斥叠加

活动互斥指同一商品在不同活动间不能同时存在。活动叠加指同一商品可同时参加不同的活动。

我们首先需要将活动分为三类

  1. 单品活动:一个活动中,每个商品之间没有关系的活动,如折扣、特价等;
  2. 多品活动:多个商品一起满足特定条件下的优惠活动,如指定商品满69元减10元等;
  3. 订单活动:整个购物车的商品一起作为门槛统计,且一单只能享受一个。

于是我们可以将互斥叠加规则如下描述

  • 单品活动间不可叠加
    叠加了就存在先后问题,不好算价
  • 多品活动间不可叠加
    和单品活动类似,不好酸钾
  • 订单活动间可以叠加
    均为整单金额,件数独立计算是否可以拿到优惠,因此可以叠加

为了进行互斥叠加的校验,一种可行的步骤为

  1. 先将可能互斥的活动全部拿出。可能互斥的活动满足以下特点
    1. 活动状态为实际参与的活动,详细一点就是 (生效中 OR 待生效) OR (草稿 and !(作废 OR 审核不通过(不可修改)))
    2. 促销范围是不是一样的(单品和多品这些)
    3. 门店和城市是否重叠了
  2. 开始按照促销类型的不一样,开始查看是否重叠。除了上面提到的促销范围,还可能存在如下问题
    1. 买A赠A和一口价/秒杀价/折扣不能在一起。
    2. 买A赠B和买B赠A不能在一起
    3. ……
  3. 互斥校验完了,得到了活动列表,然后再查看这些活动之间能不能叠加

此处可能还存在许多情况,不一一列举。


促销系统业务模型 - 2
https://tech.ivanclf.com/2026/06/25/promotion-2/
作者
Ivan Chan
发布于
2026年6月25日
许可协议