活动中心和权益中心

一、系统介绍

        餐饮行业竞争十分激烈,实施有效的营销活动对于吸引顾客、提高销售和增加品牌认知非常重要。

二、系统设计

1.系统架构

活动中心和权益中心_第1张图片

       营销整个系统分为活动、权益、规则三个模块。

       活动包括像新用户注册、支付返、抽奖。活动流程包括投放、参与活动、完成活动发奖。

       权益包括礼品卡、积分、卡券。流程包括获取可用权益、核销和冲正。

       规则包括活动投放、玩法、发放规则。权益核销和冲正规则。

2.系统流程

活动中心和权益中心_第2张图片

活动策略:

     1.先发放后使用: 例如迎新活动、抽奖活动、支付返券包。

        活动推荐是在各个资源位,如个人中心。

        活动完成后会发放权益。

        下单去使用对应权益。算价会根据用户权益计算。使用权益后核销权益。

     2.发放后立刻使用

       主要是提单场景,如一分购、订单满减、单品满减、换购等活动。

            活动推荐一般是在提单时候,涉及购物车、结算页、收银台等场景。

            活动算价根据权益规则计算(不是用户已有权益)。

            活动完成(用户提单/支付后)会发放对应的权益,并把奖励给直接核销掉。

3.活动数据模型活动中心和权益中心_第3张图片

4.权益中心模型

活动中心和权益中心_第4张图片

5.权益模型

  优惠券权益

活动中心和权益中心_第5张图片

6.简单类图

活动中心和权益中心_第6张图片

三、技术方案

1.如何实现商家给百万用户发券

        1.设计发券任务。(实现批量,断点,可重试,可监控)

                发券任务可以基于分布式任务如elastic job进行分片计算。

        2.分页获取用户列表,基于mq机制异步批量发放优惠券。

2.库存扣减。

        方式一: 基于mysql 

                a. 有事务

                    1.更新库存

                    2.落变更流水

                b.无事务

                    1.获取库存版本

                     2.基于版本更新库存

                     3.异步落库存流水

        方式二: 基于redis lua

                       a、 lua具体逻辑:

                             1、前置防重幂等校验

                             2、库存扣减

                             3、落库存流水

         方式三: 基于mysql,库存分片

3.优惠叠加与共享如何设计

        1.计算所有优惠组合的全排列。

                算法 -> 递归 & 回溯

        2.在计算某个优惠时候,通过CartLocker保存前置优惠计算结果。

        CartLocker -> 记录当前的购物车对应活动锁定商品

        CartLocker -> Locker list; Locker记录sku与活动的锁定关系。

        Locker -> sku, lock-quantity,promotionAmount,price_unit,promotionId,promotion-type

       目前是一件商品只能用一个优惠,所以商品被某个优惠锁定后,则直接跳过。

        tips: 算价有组合,订单满减,阶梯等,每种策略算的核心是已最小代价获取最多优惠,一般都是贪心的思想。

       3.选择优惠粒度最大的一个组合。

四、业务指标

1、活动拉新、留存。

2、活动曝光和点击转换率。

3、ROI

      roi = 回报 / 成本。

你可能感兴趣的:(营销活动,后端)