标签:简单 调用 外部 活动 tps 关系 购物车 返回 查询
转:https://www.pmcaff.com/article/index/522932721808512
ps:最新做的事情有点杂,发一个优惠券和促销活动的设计,希望对新人有些帮助!
优惠券生成流程
1. 表现形式和内在
优惠券 或者 促销活动 只是承载促销的外部表现形式,但是规则是通用的。
2. 优惠券
私有形式的,可以是直接关联到会员账户,在结账时选择使用。
公开形式的,在结账时手动录入优惠券码使用。
3. 设计通用的规则定义和规则利益,形成规则库。
4. 规则关联 每个优惠券 或者 促销活动 只关联一条规则。
虽然可以关联多条,但是这样 没有实际价值,关联一条会让业务和实现更加清晰。
5. 优惠券
优惠券分为定义和实体两部分,定义是定义规则,包括优惠券本身使用规则和优惠 规则,实体是根据定义生成的每一张具体的券,这些具体的券可以使用一次或多次 (视同优惠券定义),每次使用都会记录优惠券使用历史。
6. 促销活动
和优惠券形式不同,它不需要选择优惠券,也不需要输入优惠券码,只要规则符合 就可以生效。适用于如免费领取赠品,买 A 送 B,全站满 100 减 10 的促销之类。
7. 规则定义
按 资格类型和配置 –》选择规则利益类型和配置 –》选择基于对象类型和配置(因 为不同的利益类型可以选择的对象类型是不一样的)--》配置规则利益(有些规则 利益有多条,即阶梯优惠)
8. 优惠券使用日志
无论是可以使用单次还是多次的优惠券,记录日志有利于查询。
9. 规则参与日志
处理为了查询外,关键的业务是为了判断用户是否参与过这个促销活动,比如有些 免费送活动,每个会员只能参加一次。
对促销规则、促销活动和优惠券等业务进行分析设计,设计内容涵括:
分为促销活动和优惠券两类,这两类只是对外的表现形式,但是内在的促销规则均 是采用同样的促销规则结构来实现。
包含规则定义和规则利益两部分。
包括资格类型、资格配置、利益类型、利益累加计算、基于对象类型(如 无限制(全站产品)、分类、指定产品等,可做更多扩展)、基于对象配 置(即针对前面的类型进行配置)、对计算金额结果的处理方式。即如四舍五入等 规则。
1. 资格类型
即要使用优惠券或者享受促销活动等优惠时需要先具备的顾客资格。顾客资格包括 无限制(全站会员)、指定会员、会员组、会员级别 和 自定义的查询条件等。 (因为购物必须注册登录,所以游客是不享受优惠的)
2. 对象类型和配置
即这些促销是针对那些产品的。可以做更复杂的扩展,只要最终能够查询出产品 SKU 即可。
3. 利益类型
即当顾客通过优惠券 或 适用促销活动时,符合顾客资格,并且所选购的单品或整 单(即对象类型无限制)在对象范围时,可以获得的优惠。 优惠资源有满减金额、满折金额、减免运费,赠送积分、赠品、优惠券等。 满可以满数量,也可以使满金额。不同的组合形成一个规则策略,需要开发一个该规则策略 的实现类别。
4. 利益累加
比如满 100 减 10,如果不累加,则满 200 时,也是减 10;如果累加则减 20.
当满足前面的规则定义,表示当前购物车的对象可以享受利益,利益有 1~N 条,不 同利益还有进一步的条件限制,以便设置阶梯折扣。
例:比如客户选1件15元/件,5件12元/件,10件10元/件
1. 优惠券或促销活动只是表现形式,可通用规则库内的规则。
2. 调用规则库内的规则之前,先调取当前会员信息 a) 包括会员 ID、级别、当前访问的 IP 所属的区域等。 b) 至于更多的信息可以在相应的计算策略中,根据需要,通过客户 ID 查询获得。
3. 会员资格
根据会员上下文,判断当前这个会员能否有资格适用这个优惠券或促销活动关联的 促销规则。
4. 利益类型 不同的利益类型支持的目标类型会有所不同。所以判断了资格后,先查询出(对应维护时,就是先选择利益类型)关联的利益类型,然后再下一步到目标范围。
5. 目标范围
目标有好多种,简单而言就是当前的购物全部或 部分在这个范围之内,就可以享受优惠了。
6. 金额或数量限定
满足了前面的条件后,进一步计算金额或数量是否满足。 比如日用洗涤用品类,满 199 减 50,满 399 减 120. 7. 计算优惠 前面的都通过后,根据条件和累加(可选)计算优惠,优惠方式可以是各类赠品、 满减、满折、运费等。
1. 规则定义和规则利益表为底层规则结构定义,为优惠券和促销活动所共用。
2. 优惠券定义和促销活动为两种表现方式,分别包含不同的业务逻辑。
3. 优惠券定义
定义了优惠券本身的规则,包括可用次数、可拥有数量、时效类型等。【注】目前不支持同时使用多张优惠券的业务(淘宝、京东等也并不支持),因为 多张优惠券同时生效导致的折扣将很难控制,而且站在商家的立场,一次购物只能 用一张优惠券有利于多次购物。 所以优惠券表的排他式使用、优先级目前是没有投入使用的。
4. 优惠券实体
优惠券实体是对应具体的券,该实体是根据优惠券定义而生成的,实体有自己进一 步的业务,如冗余一部分优惠券定义的字段、状态等。大多数优惠券只能用一次, 顾客获得并使用后,就失效了。
5. 优惠券使用
无论是只能用一次的优惠券或者可用多次的优惠券,每一次使用均需要记录一条使用历史记录。
6. 促销活动
促销活动和优惠券的区分是没有发券和用券的步骤,顾客在网站购物自动享受优惠。
7. 促销活动参与日志
促销活动和优惠券不同,优惠券有天然的限定。促销活动比如通过日志才知道那些 会员是否参与过这个活动,有些活动只限每个会员只能参与一次。
常用的流程有2种:
(1)蓝色:确认购物车内容之后,“选择优惠券”,继续下一步确认订单操作(用户订单确认操作之后,系统生成此订单,订单内容不可再更改),选择支付方式,调取收银台
(2)红色:确认购物车内容之后,直接让用户确认订单(用户订单确认操作之后,系统生成此订单,订单内容不可再更改),然后“选择优惠券”,选择支付方式,调取收银台
两者的区别在于,优惠券的选择,是在“系统生成订单”之前,还是在“系统生成订单”之后
生成订单前选择优惠券,则优惠券与订单为绑定关系,系统生成此订单之后,优惠券则被使用,此时用户不付款而取消订单,已经选择的优惠券则不做返回(因为被用了);
生成订单后选择优惠券,则优惠券与订单不为绑定关系,系统生成此订单之后,才让用户选择使用哪张优惠券,之后支付成功之后,被选优惠券才被使用,如果次流程中用户取消订单,则优惠券可以做到反还。
标签:简单 调用 外部 活动 tps 关系 购物车 返回 查询
原文地址:https://www.cnblogs.com/sheseido/p/9391621.html