C#通过反射动态组装校验规则

运营活动可在多个不同的场景下向用户发放优惠券,每个场景的优惠券领取规则以及返回的状态码和提示语不尽相同,可将每种校验规则由单独一个函数实现,每个场景下根据业务需求对规则进行组装,并通过统一的入口进行校验。

1、写出各种规则下的单独校验功能函数。 以2个规则为例:

 

 

 

2 、校验入口函数,根据业务组装校验数组名称,有序通过反射动态获取校验函数。

   按照数组的索引依次进行规则校验,当某个规则校验失败时则中断校验并返回整个校验失败结果,校验状态码,提示语。

 

3、具体业务场景校验。根据需求组装校验规则,通过校验入口函数进行校验并获取结果,校验失败则返回当前请求,校验成功则进行具体的领券业务。

当前场景有客户扫码领券校验,客户端小程序领券校验,ERP主动派券校验等,校验应用举例如下:

场景1:芝麻券码券扫码领取校验(红色部分为校验规则名称)

 

 

场景2:客户端客户主动领取校验

 

 

3、校验扩展。

   当校验规则增加时只需要增加具体的校验方法,并在对应的业务下对校验规则数组进行组装,改变规则数组的顺序亦可改变校验的顺序。

posted @ 2022-07-28 10:07  丝絮  阅读(95)  评论(0)    收藏  举报