leeg810312
V2EX  ›  编程

求教订单使用优惠券的技术最佳实践

  •  
  •   leeg810312 · Jul 18, 2022 · 1979 views
    This topic created in 1418 days ago, the information mentioned may be changed or developed.
    正在设计订单优惠券方案,产品设计已经有了。

    优惠券类型:满 xx 减 xx 、无条件直接减 xx 、xx%折扣(最多减 xx )
    优惠券范围:全场、品类、店铺、单品
    使用条件:是否新用户、领取数量、是否叠加、退款是否退还、有效期(距离过期时间越近越优先使用)

    技术实现还在设计中,包括优惠券数据结构、如何在一个订单中自动发现优惠券组合以获得最大优惠、优惠金额分摊到订单中每个商品、优惠券促销效果统计分析、性能保障(对下单没有明显性能影响)。

    求一个技术实现参考(部分或全部),有代码参考最好,不奢望复制粘贴,没有代码有实现思路也可以
    5 replies    2022-07-19 21:42:32 +08:00
    bootvue
        1
    bootvue  
       Jul 18, 2022
    规则引擎
    kfansup
        2
    kfansup  
       Jul 18, 2022
    穷举形式的动态规划
    leeg810312
        3
    leeg810312  
    OP
       Jul 18, 2022
    @bootvue
    @kfansup
    我理解规则引擎、动态规划应该是针对获取最大优惠的吧,能举例简要说明过程一下吗?比如一个订单里有 3 件商品 a/b/c 优惠前总价 400 ,有 4 张优惠券,1 张全场满 300 减 15 ,1 张品类券减 10 适用 a 和 b (一个订单中不能与店铺券或单品券同时使用),1 张店铺券减 10 适合 b+c ( b 和 c 同时购买),1 张单品券减 20 适合 b (不与店铺券叠加)

    另外,优惠券数据结构有什么建议吗?
    kfansup
        4
    kfansup  
       Jul 19, 2022
    @leeg810312 根据商品 abc 匹配出所有能用的优惠券,每张优惠券生成子策略,寻找最佳的子策略组合即可。
    leeg810312
        5
    leeg810312  
    OP
       Jul 19, 2022 via Android
    @kfansup 感谢提供思路
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3201 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 03:03 · PVG 11:03 · LAX 20:03 · JFK 23:03
    ♥ Do have faith in what you're doing.