促销卷功能E03

按要求设计并实现促销卷功能

交互

销售管理


<   1.  查看购物车
<   2.  添加商品
<   3.  删除商品
<   4.  优惠劵
<   5.  结账
<   0.  返回
> 

优惠劵

单一规则

一个购物车 只能设置一张购物券

避免 购物券优惠政策之间 产生冲突

优惠劵库存

程序运行之前, 就已经使用代码 确定了可用于选择的优惠措施

运行时, 只能从这些里选择 添加到购物车, 但不能在运行时设置新的优惠措施

优惠劵代码

优惠劵代码 为 6位字符

交互
<   Available Coupons
<   -----------------
<   | Code   | Name                     |
<   | BLACKF | 20% Off                  |
<   | HAPPYE | Fruits, 20% Off          |
<   | FRUITB | Fruits, Buy 2 Get 1 free | 
+   当前没有设置优惠劵
    <   Current Coupon
    <   --------------
    <   None
+   当前有设置优惠劵
    <   Current Coupon
    <   --------------
    <   | Code   | Name                     |
    <   | FRUITB | Fruits, Buy 2 Get 1 free |
<   1.  设置 
<   0.  返回    
+   用户输入1
    >   1
    <   请输入优惠劵码
    >   FRUITB
    +   如果有这个优惠劵
        <   设置成功
    +   如果没有
        <   没有这个优惠劵
+   用户输入0
    >   0

结账

需求稍微改下

优惠劵的优惠效果需要在结账时的小票上显示出来

更改需求 为向用户确认是否收款,

如果收款 收款后购物车清空

返回, 则结账是类似预览的效果

<   ------------------------------
<          ZZAX Supermarket
<   ------------------------------
<   000003 grape              4.72
<          x 10              47.20
<          CP:HAPPYE         37.76
<   000008 iPhone          4800.00
<   ------------------------------
<   HAPPYE
<   Fruits, 20% Off
<   ------------------------------
<   Total                  4847.20
<   Discount                 -9.44
<   Total                  4837.76
<   1.  确认收银
<   0.  返回
+   用户输入1
    >   1
    <   收款
    >   4850
    <   退款
    <   12.24
+   用户输入0
    >   0

优惠劵种类

折扣

案例

全场 8 折

电器 7 折

规则

可能全场打折

可能根据某个 Category 打折

优惠劵名称
20% Off
Fruits, 20% Off
结账显示
<   ------------------------------
<          ZZAX Supermarket
<   ------------------------------
<   000003 grape              4.72
<          x 10              47.20
<          CP:XXXXXX         37.76
<   000008 iPhone          4800.00
<          CP:XXXXXX       3840.00
<   ------------------------------

满减

案例

全场 满 100 减 50

全场 满 200 减 30

电器 满 100 减 10

规则

可能全场打折

可能根据某个 Category 打折

优惠劵名称
Buy 100$ Save 10$
Fruits, Buy 100$ Save 20$
结账显示

减的钱价格比例分给每个商品

比如 如果 水果 满 100 减 10

水果有一个总价 20$, 另外一个 80$

那么减价时, 20$ 的 减 2$, 80$ 的 减 8$

<   ------------------------------
<          ZZAX Supermarket
<   ------------------------------
<   000003 grape              2.00
<          x 10              20.00
<          CP:XXXXXX         18.00
<   000008 apple              4.00
<          x 20              80.00
<          CP:XXXXXX         72.00
<   ------------------------------

满送

案例

全场 满 100 送 葡萄 1斤

电器 满 300 送 iphone 1个

规则

可能全场打折

可能根据某个 Category 打折

优惠劵名称
Buy 100$ Get 1 grape free
Fruits, Buy 100$ Get 1 grape free
结账显示

不显示在相关商品上, 只用优惠劵区提示就好了

<   ------------------------------
<          ZZAX Supermarket
<   ------------------------------
<   000003 grape              2.00
<          x 10              20.00
<   000008 apple              4.00
<          x 20              80.00
<   ------------------------------
<   SASSAS
<   Fruits, Buy 100$ Get 1 grape f
<   ree
<   ------------------------------

半价

案例

全场 第二件 半价

服装 第三件 半价

规则

可能全场打折

可能根据某个 Category 打折

优惠劵名称
The 2th 20% off
Fruits, 3th 50% off
结账显示

不显示在相关商品上, 只用优惠劵区提示就好了

<   ------------------------------
<          ZZAX Supermarket
<   ------------------------------
<   000003 grape            380.00
<          CP:SGJAXS        190.00
<   000008 apple            480.00
<   ------------------------------

ZZAX 微信公众

文档一更新,立刻告诉你