精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

可裝配的優(yōu)惠券系統(tǒng)設(shè)計(jì)與實(shí)踐

開發(fā) 前端
通過不斷的開發(fā)積累組件化控件,使得運(yùn)營可以更靈活的設(shè)計(jì)營銷方案,極大的提高了代碼復(fù)用和系統(tǒng)靈活性和效率,優(yōu)惠券模板只需拖拽即可完成人機(jī)交互功能。

1. 背景簡介

優(yōu)惠券系統(tǒng)是互聯(lián)網(wǎng)電商時(shí)代最為常用運(yùn)營手段,拉新,促活,留存,在運(yùn)營的過程中,能快速的、靈活的支持運(yùn)營頻繁多變的營銷需求。傳統(tǒng)的實(shí)現(xiàn)方案,不僅開發(fā)周期長、成本大,并且不能及時(shí)影響運(yùn)營多變的需求,運(yùn)營活動復(fù)用的效率較低。

車服務(wù)優(yōu)惠券系統(tǒng)提供了一種可裝配且通用優(yōu)惠券核心框架的實(shí)現(xiàn),快速搭建滿足業(yè)務(wù)需要的優(yōu)惠券模板功能。僅需開發(fā)一次自定義業(yè)務(wù)組件,可靈活裝配多優(yōu)惠券模板,發(fā)券用券驗(yàn)券接口無需二次開發(fā),平行無縫對接第三方商家券,節(jié)省開發(fā)資源,減少開發(fā)成本,提高了運(yùn)營效率。

圖片

2. 系統(tǒng)設(shè)計(jì)

2.1優(yōu)惠券的生命周期

組件創(chuàng)建:定義表單元素,生成自定義組件,存入組件庫中。

裝配模板:運(yùn)營按業(yè)務(wù)需求,選擇組件,組合裝配在一起,生成優(yōu)惠券模板。

生成批次:選擇模板,關(guān)聯(lián)配置業(yè)務(wù)券,比如:加油券,充電券,洗車券,代步券等。模板組合裝配在一起,生成優(yōu)惠券批次。

投放活動:配置運(yùn)營活動,關(guān)聯(lián)批次券信息。可組合裝配成券包,或單張券,投放客戶端或H5頁面。

兌換領(lǐng)取:發(fā)放形式,可分為3種,兌換碼兌換,運(yùn)營活動用戶登錄領(lǐng)券,運(yùn)營后臺定向發(fā)券,滿足業(yè)務(wù)規(guī)則,比如新注冊用戶,業(yè)務(wù)新老用戶,首單用戶發(fā)券進(jìn)行間接發(fā)券。

核銷使用:用戶購買商品下單,拉取可用券,下單鎖定券,支付核銷券。

取消訂單還券:訂單取消,返還用戶券,券可再次使用。

券快過期提醒:推送提醒用戶使用。

結(jié)算:生成優(yōu)惠券,平臺與商家承擔(dān)比例,執(zhí)行結(jié)算補(bǔ)貼。

2.2優(yōu)惠券系統(tǒng)設(shè)計(jì)思維導(dǎo)圖

圖片

圖 2-3

2.3優(yōu)惠券系統(tǒng)基本流程圖示

 組件創(chuàng)建 >> 裝配模板 >> 裝配批次 >> 裝配活動 >> 發(fā)券 >> 核銷券 >> 結(jié)算

圖片

圖 2-4

2.4優(yōu)惠券系統(tǒng)架構(gòu)圖示

圖片

圖 2-5

3. 核心功能

3.1創(chuàng)建自定義組件

 自定義組件:創(chuàng)建優(yōu)惠券組件,生成優(yōu)惠券模板必要條件,因?yàn)槟0迳蓵r(shí),需要加載裝配相關(guān)的表單組件。 

創(chuàng)建組件所需元素信息為:組件表單名稱,Placeholder文本信息,JS驗(yàn)證功能,數(shù)據(jù)源,組件類型(包含文本框,數(shù)值框,下拉列表框,多選列表框控件,聯(lián)選日期控件,滿減金額控件,數(shù)據(jù)列表模態(tài)選擇框等常用組件),表達(dá)式關(guān)鍵詞等。其中配置Js驗(yàn)證功能,需要預(yù)先開發(fā)JS驗(yàn)證插件,集成常用的驗(yàn)證插件庫中,用于模板生成時(shí)自動檢查表單中元素。其中配置表達(dá)式關(guān)鍵詞,用于生成規(guī)則條件表達(dá)式。其中設(shè)置數(shù)據(jù)源,用于初始化組件下拉列表,數(shù)據(jù)可選模態(tài)框等。組件生成后,保存到組件庫表中,提供給模板創(chuàng)建使用。

解決的問題:

自定義組件的實(shí)現(xiàn),存入組件庫中,提高了代碼復(fù)用性,常用的組件,任何業(yè)務(wù)券都可以復(fù)用,避免多次開發(fā),增加了業(yè)務(wù)的靈活性,對系統(tǒng)進(jìn)行解耦,也可以分組開發(fā),部署。后臺優(yōu)惠券模板可以自由組合,根據(jù)運(yùn)營需求,快速自行裝配。提高運(yùn)營工作效率,支持多業(yè)務(wù)券場景配置。

優(yōu)惠券自定義組件生成,方便快速構(gòu)建業(yè)務(wù)優(yōu)惠券模板,需求靈活實(shí)現(xiàn)。不管是優(yōu)惠類型,還是業(yè)務(wù)需求方可變的條件,我們都能從設(shè)計(jì)層面去實(shí)現(xiàn)它。來節(jié)約開發(fā)運(yùn)營成本。并且生成可配置的多規(guī)則條件表達(dá)式。下單使用時(shí),一次驗(yàn)證,所有的條件是否可達(dá),滿足優(yōu)惠券下單使用。使優(yōu)惠券系統(tǒng)結(jié)構(gòu)簡潔清晰,同時(shí)將可變的部分,完全開放給使用者,提供了非常大的靈活性。

創(chuàng)建組件頁面圖示如下:

圖片

圖:3-1-1

組件創(chuàng)建流程圖示如下:

圖片

圖 3-1-2

3.2創(chuàng)建自定義模板

自定義模板創(chuàng)建:由3.1中創(chuàng)建的組件,按業(yè)務(wù)需求,進(jìn)行動態(tài)裝配。優(yōu)惠券模板可設(shè)置3種類型,分別為商家券模板,平臺券模板,公共模板。用于批次生成時(shí),對運(yùn)營進(jìn)行不同角色權(quán)限隔離使用。其中配置業(yè)務(wù)類型,用于客戶端拉券時(shí)按業(yè)務(wù)隔離展示使用。配置滿減券,立減券,折扣券,用于區(qū)分券的使用條件。模板可選組件分為兩部分,固定區(qū)域,可變區(qū)域。固定區(qū)域?yàn)閮?yōu)惠券中的常用組件區(qū)域,系統(tǒng)自動加載固定類型組件信息,見圖3-2-1所示,固定類型組件是每張優(yōu)惠券共有的屬性。比如:優(yōu)惠券標(biāo)題,面額,庫存數(shù)量,使用時(shí)間,平臺與商家承擔(dān)比例,折扣,最高金額,使用跳轉(zhuǎn)Url等。可變區(qū)域?yàn)檫\(yùn)營活動用券時(shí)需要驗(yàn)證的組件區(qū)域,比如限制的商家,門店,滿減條件等組件。若組件庫中組件元素為非固定類型,系統(tǒng)會區(qū)分當(dāng)前組件為可變組件,展示在選擇組件區(qū)域,提供運(yùn)營人員按業(yè)務(wù)券的需求,可從組件庫中進(jìn)行拖拉組件到指定可變區(qū)域中。最后模板生成,系統(tǒng)會保存模板庫中,以供批次創(chuàng)建生成使用。至此,模板再次加載或編輯時(shí),其中的業(yè)務(wù)部分,基礎(chǔ)屬性部分,可變部分,系統(tǒng)會根據(jù)所存的模板信息,關(guān)聯(lián)到批次中,同時(shí)相應(yīng)的加載出元素組件。

解決的問題:

運(yùn)營人員可根據(jù)業(yè)務(wù)券需求,自定義裝配優(yōu)惠券模板。通過界面,進(jìn)行拖拉組件,支持組件元素拖拉排序,快速生成優(yōu)惠券模板,簡潔快捷,動態(tài)裝配。存入模板庫中。提供運(yùn)營創(chuàng)建批次時(shí),多次復(fù)用,減少開發(fā)成本,提高工作效率。

創(chuàng)建模板頁面圖示如下:

圖片

 圖 3-2-1

模板流程圖示:

圖片

圖 3-2-2 

3.3創(chuàng)建自定義批次券包

  •  自定義批次:設(shè)定批次的通用屬性,動態(tài)加載優(yōu)惠券模板,自動校驗(yàn)表單控件三部分組成。
  • 通用屬性配置:發(fā)券的形式,包含直接領(lǐng)取券與兌換券碼形式。限制領(lǐng)取次數(shù),可限當(dāng)天每人領(lǐng)取次數(shù),或者批次總領(lǐng)取次數(shù)。領(lǐng)取人群的配置限制,包含業(yè)務(wù)新老用戶限制,注冊新老用戶的限制。短信釘釘提醒功能配置,過期券預(yù)提配置,運(yùn)營庫存提醒配置。商家單位配置,財(cái)務(wù)PR單號配置等。預(yù)提醒功能技術(shù)實(shí)現(xiàn),通過延遲隊(duì)列,定時(shí)任務(wù)執(zhí)行實(shí)現(xiàn)。
  • 動態(tài)優(yōu)惠券模板:
  • 優(yōu)惠券批次創(chuàng)建,加載可用的優(yōu)惠券模板。運(yùn)營可根據(jù)需求,在下拉列表中選擇優(yōu)惠券模板。此處優(yōu)惠券模板,是根據(jù)可視化組件,分布式控件動態(tài)加載渲染呈現(xiàn),去除了冗余的模板組件。可以無限制的加載需要配置的優(yōu)惠券。比如:加油,充電,洗車。
  • 自動校驗(yàn)證表單:
  • 由于模板是動態(tài)加載的組件,多個(gè)優(yōu)惠券模板,會有很多組件,組件類型不同,一個(gè)個(gè)寫表單校驗(yàn),會顯得很繁瑣,代碼臃腫,維護(hù)復(fù)雜 。現(xiàn)對所有的元素組件,進(jìn)行動態(tài)提取組件配置的JS,然后根據(jù)JS校驗(yàn)類庫,自動加載表單驗(yàn)證,維護(hù)簡單,代碼簡潔。

解決問題:

批次可以多張券模板組合,最終生成一個(gè)券包。支持不同業(yè)務(wù)券組合,相同業(yè)務(wù)券組合。支持批次復(fù)制,模板復(fù)用。發(fā)券可以按券包形式發(fā),也可以按單張券針對性發(fā)放。批次創(chuàng)建,是由模板動態(tài)加載自定義組件完成。多個(gè)券模板,如果按傳統(tǒng)模式開發(fā),會很多組件元素要書寫,js功能也要逐個(gè)書寫,每當(dāng)有新券需求,或者券限制條件升級變動,都會需要大量的控件開發(fā),費(fèi)時(shí)費(fèi)力。本批次的設(shè)置,代碼簡潔,界面明了,所見即所得,無須過度開發(fā),一勞永逸。

批次創(chuàng)建圖示如下:

圖片

圖 3-3-1

模板加載圖示如下:

圖片

圖 3-3-2

批次創(chuàng)建流程圖:

圖片

圖 3-3-3

3.4創(chuàng)建自定義活動

創(chuàng)建活動,可以配置整個(gè)業(yè)務(wù)的領(lǐng)券中心。聚合所有待領(lǐng)取的券,券包展示,同時(shí)提供對外輸出領(lǐng)券接口關(guān)鍵配置,需要設(shè)置活動名稱,活動的起始時(shí)間,活動KEY,互斥KEY,活動限制數(shù)量,活動的跳轉(zhuǎn)鏈接,活動所投放平臺渠道。可選擇關(guān)聯(lián)不同的券批次模板,通過活動KEY的領(lǐng)取維度,鎖定不同的批次券包,鎖定整個(gè)活動領(lǐng)取量,進(jìn)行發(fā)券。通過互斥KEY的維度,鎖定不同的活動,用戶在活動A中可以領(lǐng)取哪些券,在活動B可以領(lǐng)取哪些券。通過活動中啟動,停止進(jìn)行領(lǐng)取功能的控制,將活動中配置信息進(jìn)行保存,存入活動領(lǐng)取中心庫中。

解決的問題:

適應(yīng)于一個(gè)或多個(gè)活動場景,比如領(lǐng)券中心,領(lǐng)單張券,券包,一鍵批量領(lǐng)券,新老用戶領(lǐng)券。通過活動Key,關(guān)聯(lián)出整個(gè)活動配置的券包。通過活動控制券上線下線功能。對外輸出領(lǐng)券接口,提供領(lǐng)券的活動標(biāo)識隨機(jī)碼Key,保證業(yè)務(wù)的保密性、可控性、復(fù)用性。

活動創(chuàng)建圖示3-4如下:

圖片

圖 3-4-1

      活動配置流程圖示:

圖片

圖 3-4-2

4. 技術(shù)難點(diǎn)

4.1技術(shù)如何實(shí)現(xiàn)自定義組件

圖片

圖 4-1-1

創(chuàng)建模板時(shí),是由多個(gè)組件裝配完成。新創(chuàng)建模板時(shí),如何動態(tài)渲染加載多個(gè)組件?編輯模板如何對組件進(jìn)行賦值?模板組件從技術(shù)層面是由多個(gè)Freemark模板視圖文件組合而成,比如圖 4-1-1 中propType_text.ftl 文件,propType_List.ftl文件,propType_Select.ftl文件等,在創(chuàng)建模板中頁面中,會根據(jù)組件池中,根據(jù)組件類型,通過<#include>進(jìn)行文件加載傳遞數(shù)據(jù)完成。如下圖 4-1-2所示。 

圖片

圖 4-1-2

模板視圖文件需要Html+Freemark+Jquery 預(yù)先開發(fā)創(chuàng)建好。其中表單控件中name為組件生成時(shí)配置的name屬性,文件中所有的${}語法屬性,均對應(yīng)組件生成時(shí)配置屬性。比如4-1-3中:${prop.placeholder} 文本框描述提示信息,${prop.flagword} 是使用條件占位符,${prop.jsfunction} js自定義驗(yàn)證功能方法名,${prop.id} 組件Id,${prop.type} 組件類型,${prop.formnameExt} 模板Id+組件名稱,${prop.datasource}等不再一一列舉。

動態(tài)組件插件示例:舉個(gè)文本框組件propType_Text.ftl 示例:后端讀取模板中文本框?qū)傩灾祩鬟f賦值。

圖片

圖4-1-3

模板視圖文件中 ${prop}是整個(gè)頁面渲染控件主要引擎對象。又是后端模板通用對象模型,對應(yīng)的后端開發(fā)類名為:CouponTempPropView ,如下面代碼所示。后端接口通過模板Id,關(guān)聯(lián)所有模板中的組件屬性信息。然后封裝成CouponTempPropView數(shù)據(jù)對象,進(jìn)行初始化值賦值。若模板頁面首次新頁面加載,后端接口HandlAdapter處理適配器響應(yīng)CouponTempPropView對象數(shù)據(jù),通過ViewResolver視圖解析器初始化組件頁面表單,進(jìn)行渲染呈現(xiàn)。若模板頁面編輯時(shí),需要對組件表單input元素進(jìn)行賦值。由${prop}對象取CouponTempPropView對象數(shù)據(jù)中的${prop.formvalue},然后jquery查找當(dāng)前prop.formvalue的input隱藏域控件的value值,該value是由多個(gè)屬性值組合而成,根據(jù)當(dāng)前組件,需要進(jìn)行拆解,然后將值傳遞給name=${prop.formnameExt}的input控件,進(jìn)行傳遞賦值。到此組件技術(shù)裝配屬性完成。創(chuàng)建批次時(shí),選擇優(yōu)惠券模板,動態(tài)加載標(biāo)簽自定義組件呈現(xiàn)后臺UI,如何加載模板的相關(guān)的組件信息呢,同樣是引用模板視圖文件完成的。技術(shù)運(yùn)用了動靜分離技術(shù)手段及組件化模板插件響應(yīng),運(yùn)營人員選擇優(yōu)惠券業(yè)務(wù)模板,后端數(shù)據(jù)根據(jù)運(yùn)營的選擇模板,程序進(jìn)行準(zhǔn)備模板及控件所需數(shù)據(jù)。通過模板數(shù)據(jù)裝載,初始化需要加載的模板中關(guān)聯(lián)組件,前端頁面不需要堆積實(shí)現(xiàn)未知的組件,僅根據(jù)后端數(shù)據(jù),注入到模板關(guān)聯(lián)組件的插件中,傳遞數(shù)據(jù),需要呈現(xiàn)哪一塊插件,就會渲染所關(guān)聯(lián)的組件,完全數(shù)據(jù)來驅(qū)動實(shí)現(xiàn)組件的呈現(xiàn),實(shí)現(xiàn)方式和現(xiàn)在的Vue想法一致。完全數(shù)據(jù)初始化控件,數(shù)據(jù)傳遞控件的實(shí)現(xiàn)。

編輯批次時(shí),關(guān)聯(lián)多個(gè)模板信息,后端如何進(jìn)行動態(tài)傳值:由批次信息,找到批次所關(guān)聯(lián)的一個(gè)或多個(gè)模板信息,再由模板查找,加載出模板對應(yīng)的組件信息,組件信息包含表單元素,通過批次信息表中的存儲的字段值,轉(zhuǎn)化成Key-value,key為表單元素,value為對應(yīng)值。對模板組件屬性結(jié)構(gòu)類型進(jìn)行一一映射,通過Action傳遞前端頁面進(jìn)行渲染優(yōu)惠券模板組件視圖。最終實(shí)現(xiàn)和創(chuàng)建模板時(shí)的加載視圖文件一致,不再詳細(xì)贅述。

4.2技術(shù)如何動態(tài)生成條件表達(dá)式

由于優(yōu)惠券批次包含多個(gè)優(yōu)惠券模板,每個(gè)優(yōu)惠券模板的使用條件是隨業(yè)務(wù)需求變化,所以我們?nèi)绻鎯@樣動態(tài)可變的值,數(shù)據(jù)表中每次需升級擴(kuò)展字段,同時(shí)又要升級系統(tǒng)的數(shù)據(jù)讀取Mybatis文件,以及優(yōu)惠券模板文件中限制條件規(guī)則等。顯然這種方式比較笨拙,粗曠,又不利于優(yōu)惠券系統(tǒng)的維護(hù)。我們自定義的規(guī)則條件表達(dá)式,應(yīng)運(yùn)而生。

? 什么是規(guī)則條件表達(dá)式:

它是多個(gè)模板組件使用限制內(nèi)容組合一起,生成一種可變的自定義表達(dá)式。參考借鑒逆波蘭表達(dá)式生成規(guī)則而設(shè)置。

? 如何生成:

創(chuàng)建優(yōu)惠券批次時(shí),通過模板Id關(guān)聯(lián)出多個(gè)組件信息,封裝到數(shù)據(jù)模型中ListpropDtoList,然后根據(jù)條件表達(dá)式方法,篩選出組件prop.getType()類型,比如數(shù)值類型,獲取prop.getFlagword條件表達(dá)式關(guān)鍵字為coupon_cityid,prop.getFlagdesc=10010。拼裝生成條件表達(dá)式為:(coupon_cityid=10010)。生成使用描述為:限城市為北京使用。其他類型視條件生成表達(dá)式。示例如下:

 ? 舉車品券生成示例:

在創(chuàng)建優(yōu)惠券時(shí),業(yè)務(wù)限定多條件表達(dá)式隨批次動態(tài)生成,舉例:車品券表達(dá)式:[coupon_city]_in(111010,120000)&&(coupon_[order]>10&&coupon_[order]<100)&&[coupon_tag]in(123),表達(dá)式條件翻譯為:優(yōu)惠券滿足城市北京或天津,訂單金額滿10元小于1000元,且優(yōu)惠券品類標(biāo)簽為123的商品使用,提交保存,生成優(yōu)惠券批次相關(guān)信息,生成驗(yàn)證優(yōu)惠券表達(dá)式,存儲數(shù)據(jù)表中,及緩存中。

驗(yàn)證券表達(dá)式條件,解析表達(dá)式代碼如下:

用戶下單使用券,系統(tǒng)校驗(yàn)券的使用條件,由條件表達(dá)式多條件驗(yàn)證,從用券接口取出訂單號,訂單金額,訂單商品,商家信息,運(yùn)費(fèi)服務(wù)費(fèi)等作為檢驗(yàn)條件,將請求參數(shù)存入Map字典中,驗(yàn)證用戶優(yōu)惠券時(shí),通過Map中對應(yīng)名稱,正則匹配組件中標(biāo)簽名、標(biāo)簽參數(shù)、操作符、操作數(shù)值進(jìn)行標(biāo)簽名的替換,執(zhí)行commonBLL.EvalExpr表達(dá)條件運(yùn)算,結(jié)果滿足條件,當(dāng)前券可進(jìn)行下單結(jié)算使用。否則,將不能使用。

舉例,車品券表達(dá)式:

([coupon_city]in(10110)&&(coupon_[order]>10&&coupon_[order]<100)&&[coupon_tag]in(123)),[coupon_city]:10110, coupon_[order]:20 , [coupon_tag]:123,最終替換為(10110=10110)&& 20>10 && 20<100 && 123 =123)。

表達(dá)式執(zhí)行完成后,生成訂單,省去傳統(tǒng)多個(gè)字段,循環(huán)迭代的邏輯驗(yàn)證,有些字段關(guān)聯(lián)的屬性可能比較多,驗(yàn)證的時(shí)候加載的時(shí)間會加長。有條件表達(dá)式,我們不用再做上面的多次驗(yàn)證。只需要根據(jù)訂單參數(shù),替換可變參數(shù),執(zhí)行表達(dá)式規(guī)則計(jì)算,完成所需要的條件驗(yàn)證。

4.3技術(shù)如何實(shí)現(xiàn)發(fā)券,限制超發(fā)并發(fā)

運(yùn)營活動配置券包,客戶端進(jìn)行活動發(fā)券。用戶登錄領(lǐng)券,領(lǐng)券接口驗(yàn)證當(dāng)前請求參數(shù),首先請求攔截進(jìn)行簽名校驗(yàn),網(wǎng)關(guān)授權(quán)認(rèn)證,并發(fā)管控請求限流桶,分布式Redis鎖。然后進(jìn)行登錄用戶及風(fēng)控校驗(yàn),校驗(yàn)通過,讀取活動關(guān)聯(lián)的批次券包,讀取用戶領(lǐng)券信息存入Redis中HashTable,通過領(lǐng)券信息HashMap集合進(jìn)行批次限制校驗(yàn),包含新老用戶,批次是否停止使用,批次每天領(lǐng)取量,總的領(lǐng)取限制量,活動是否停止校驗(yàn),校驗(yàn)通過后,組合領(lǐng)券基本信息,存入jetcache+redis 二級緩存中,然后異步發(fā)送MQ。MQ消費(fèi)者讀取信息入庫,同時(shí)創(chuàng)建多線程進(jìn)行同步通知第三方券入庫,領(lǐng)券完成。

解決的問題:

領(lǐng)取接口整個(gè)流程,增加分布式Redis鎖+請求限流桶,比如秒殺券活動,短時(shí)間會增加百萬+的流量,由于服務(wù)器數(shù)據(jù)承載響應(yīng)能力,帶寬流量有限,加入切面攔截請求,做容錯(cuò)處理,同時(shí)加入分布式Redis原子鎖,進(jìn)行并發(fā)控制,防止券因并發(fā)而超發(fā)的現(xiàn)象發(fā)生。同時(shí)驗(yàn)證領(lǐng)取限制條件,解決了并發(fā)領(lǐng)取,權(quán)限領(lǐng)取,異步領(lǐng)取,攔截了一些風(fēng)險(xiǎn)用戶,實(shí)時(shí)反饋給用戶領(lǐng)取結(jié)果信息。整個(gè)過程,從1級,2級緩存中讀取更新數(shù)據(jù),根據(jù)后臺配置分層進(jìn)行校驗(yàn),極大提高了請求的響應(yīng)速度,代碼更加簡潔,安全性、可擴(kuò)展性、可維護(hù)性增強(qiáng)。

領(lǐng)券流程圖示如下:

圖片

圖 4-3-1

? 如何互斥?

一般在秒殺商品,直降商品,下單用券時(shí),會進(jìn)行拉取可用券列表時(shí),對優(yōu)惠券列表先進(jìn)行按金額排序 ,輪循驗(yàn)證當(dāng)前券金額,與秒殺金額,直降金額進(jìn)行比較,取最優(yōu)惠的價(jià)格給用戶展示使用。節(jié)省運(yùn)營投入成本。

有時(shí)平臺券與商家券,如果都是平臺采購券的運(yùn)營場景,也需要用互斥規(guī)則。分別拉取平臺券,與商家券可用券列表,再進(jìn)行取最大的券進(jìn)行比對。擇取優(yōu)惠力度最大券提供給用戶使用。

? 如何疊加?

平臺券與商家券,通常下單時(shí),可以共同疊加使用。下單時(shí),需要同時(shí)關(guān)聯(lián)兩張券的權(quán)益碼。兩張券同時(shí)變成核銷狀態(tài)。需要同時(shí)驗(yàn)證訂單的總金額是否滿足券使用條件,一般用在滿減或湊單時(shí)使用。

? 如何平臺券轉(zhuǎn)發(fā)多家商家券?

車服務(wù)加油業(yè)務(wù),油站屬于不同供應(yīng)商,運(yùn)營采購多家供應(yīng)商的券,由于采購庫存有限。如何讓用戶在選擇油站用券時(shí),僅能給用戶發(fā)一張商家券使用,不浪費(fèi)采購庫存,又能促進(jìn)業(yè)務(wù)拉新。我們在系統(tǒng)引用了平臺券關(guān)聯(lián)多商家券的模式,最終落地使用商家券。

比如:加油優(yōu)惠券模板,新增供應(yīng)商選擇組件,在運(yùn)營后臺創(chuàng)建加油券時(shí)候,選擇關(guān)聯(lián)三家供應(yīng)商。用戶通過領(lǐng)券活動得到一張平臺券,這張平臺券使用條件限制了三家供應(yīng)商,用戶下單用這張券時(shí),根據(jù)油站所屬供應(yīng)商,平臺券校驗(yàn)當(dāng)前供應(yīng)商可用條件,校驗(yàn)通過調(diào)用商家發(fā)券接口發(fā)對應(yīng)供應(yīng)商商家券,商家券核銷完成后,更新當(dāng)前平臺券。到此完成平臺券轉(zhuǎn)發(fā)商家券的邏輯。配置如圖所示:

圖片

圖 4-3-2

4.4技術(shù)如何實(shí)現(xiàn)用券驗(yàn)券

 用戶請求下單,拉取用戶可用券,從緩存中取出用戶所有券,根據(jù)業(yè)務(wù)規(guī)則動態(tài)加載請求參數(shù),比如加油券,驗(yàn)證訂單金額,油品類型,供應(yīng)商,油站等條件,利用鍵值對key-value的形式,存儲請求參數(shù),然后讀取每一張券的規(guī)則條件表達(dá)式。比如(coupon_seller in(12,23)) &&([order]>=50)&&(oil_product=3),通過正則表達(dá)式,取表達(dá)式中標(biāo)簽占位符,由鍵值對中獲取key值替換占位符,然后執(zhí)行表達(dá)式檢驗(yàn),完成驗(yàn)券拉券過程。

用戶選擇券,進(jìn)行創(chuàng)建訂單時(shí),再次請求驗(yàn)證當(dāng)前券,判斷表達(dá)式條件是否滿足,券是否過期,是否被停用,檢驗(yàn)領(lǐng)券賬戶,防止被篡改。然后訂單表中鎖定當(dāng)前券碼。

用戶支付時(shí),支付成功回調(diào),再次驗(yàn)證當(dāng)前券碼是否可用,核銷當(dāng)前券碼,券碼表中同時(shí)更新訂單號,使用時(shí)間,用券金額,券變更為核銷狀態(tài)。當(dāng)支付失敗,視訂單未完成,訂單將定時(shí)自動取消,券被歸還。

解決的問題:

接口中根據(jù)業(yè)務(wù)不同,用券的場景不同,傳遞的參數(shù)通過鍵值對形式動態(tài)傳遞。用于替代券條件表達(dá)式占位符,快速驗(yàn)券。不用關(guān)心哪個(gè)業(yè)務(wù),哪個(gè)條件進(jìn)行固定判斷。完全依賴Key-value中請求參數(shù),動態(tài)驗(yàn)證,實(shí)現(xiàn)接口裝配。核銷的時(shí)候,訂單與券進(jìn)行雙向綁定,增加安全性,可靠性。

用券流程圖示如下:

圖片

圖 4-4-1

5. 總結(jié) 

本系統(tǒng)將優(yōu)惠券業(yè)務(wù)進(jìn)行了高度的提煉和抽象,將系統(tǒng)中的變與不變進(jìn)行了完全隔離。

通過不斷的開發(fā)積累組件化控件,使得運(yùn)營可以更靈活的設(shè)計(jì)營銷方案,極大的提高了代碼復(fù)用和系統(tǒng)靈活性和效率,優(yōu)惠券模板只需拖拽即可完成人機(jī)交互功能。

通過對優(yōu)惠券系統(tǒng)模板的高度提煉抽象,使其與業(yè)務(wù)系統(tǒng)完全解耦,從上面的介紹中我們可以看到,業(yè)務(wù)系統(tǒng)只有一個(gè)動作,整理配置屬性參數(shù),獲取結(jié)果,除此之外,業(yè)務(wù)系統(tǒng)不需要知道優(yōu)惠券系統(tǒng)的任何其他細(xì)節(jié),這就保證了兩個(gè)系統(tǒng)完全分離,分開開發(fā)、獨(dú)立部署,互不影響,提高開發(fā)效率和系統(tǒng)穩(wěn)定性。

本系統(tǒng)具有明顯的降低開發(fā)成本、提高開發(fā)效率、提升系統(tǒng)穩(wěn)定性的優(yōu)點(diǎn)。更重要的是提供完全開放的優(yōu)惠券可定義的控件,自由可變優(yōu)惠券模板生成,即使后期業(yè)務(wù)需求變更,也不會重新回歸測試開發(fā)。只需要修改模板條件。即可0開發(fā)成本新增優(yōu)惠券玩法,極大的滿足了運(yùn)營頻繁多變的優(yōu)惠券營銷需求。

作者簡介

圖片

吳彥斌

■ 曾任職于服務(wù)端研發(fā)部-服務(wù)端買用技術(shù)團(tuán)隊(duì)-用車組。

■  高級研發(fā)工程師,2015年加入公司,主要從事優(yōu)惠券系統(tǒng)的研發(fā),訂單系統(tǒng)的研發(fā),物流管理系統(tǒng)的研發(fā)。

圖片

張東生

■ 服務(wù)端研發(fā)部-服務(wù)端買用技術(shù)團(tuán)隊(duì)-用車組。

■ 服務(wù)端買用技術(shù)團(tuán)隊(duì)用車組組長,負(fù)責(zé)之家用戶用車場景的各用車服務(wù)權(quán)益產(chǎn)品及用車工具產(chǎn)品的研發(fā)和架構(gòu)工作。

責(zé)任編輯:武曉燕 來源: 之家技術(shù)
相關(guān)推薦

2017-12-15 17:37:23

sd

2012-07-16 09:48:49

手機(jī)優(yōu)惠券優(yōu)惠券

2023-06-07 08:25:41

2022-04-18 10:54:49

券系統(tǒng)緩存 RedisMySQL

2012-04-25 17:11:52

優(yōu)惠券

2021-11-24 10:31:39

人工智能AI深度學(xué)習(xí)

2021-11-30 22:35:23

人工智能零售業(yè)自動化

2012-03-20 09:37:27

手機(jī)優(yōu)惠券NFC

2013-04-07 10:11:26

O2O優(yōu)惠券

2011-11-24 09:04:26

靈客風(fēng)優(yōu)惠券

2021-12-03 10:10:16

價(jià)格歧視用戶分級開發(fā)

2018-07-06 11:47:31

高德地圖

2025-08-28 02:12:00

2015-12-11 15:51:18

榮耀

2022-02-21 16:41:32

設(shè)計(jì)解決方案UI

2018-08-24 19:42:00

商派
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

亚洲午夜久久久久久久久红桃| 秋霞午夜av一区二区三区| 在线电影一区| 亚洲免费观看在线视频| 亚洲一区二区黄| 18性欧美xxxⅹ性满足| 日韩不卡视频一区二区| 欧美黑人猛猛猛| 国产黄色小视频在线| 91丨精品丨国产| 久久超级碰视频| 欧美日韩国产综合久久| 国产精品夜色7777狼人| 91精品无人成人www| 一级黄色片免费| 成人综合日日夜夜| 国产不卡免费视频| 精品成人免费观看| 欧美性天天影院| 成人在线手机视频| 免费在线观看av| 久久在线播放| 亚洲另类色综合网站| 91精品综合久久久久久| 国产精品视频免费在线观看| 日韩爱爱小视频| 免费在线一级视频| 成人在线亚洲| 亚洲女爱视频在线| 成人亚洲欧美一区二区三区| 在线播放国产视频| 天天干视频在线| 郴州新闻综合频道在线直播| 色视频一区二区| 国产欧美一区二区三区视频 | 国产二区视频在线观看| 黑人操亚洲人| 亚洲欧美一区二区在线观看| 欧美大片网站在线观看| 国内外成人激情视频| 中文字字幕在线观看| 亚洲图色一区二区三区| 久久久久久久综合日本| 久久久精品一区二区| 欧美激情 国产精品| 亚洲天堂2021av| 国产成人高清精品免费5388| 国产精品免费看片| 国模精品系列视频| www午夜视频| 日本免费一区视频| 奇米狠狠一区二区三区| 亚洲精品网站在线观看| 国产啪精品视频| 国产97免费视频| 午夜日韩成人影院| 国产v综合v亚洲欧| 欧美富婆性猛交| 亚洲一区二区乱码| а√天堂资源地址在线下载| 国产精品12区| 中文字幕亚洲欧美在线| 波多野结衣乳巨码无在线| 一本一道人人妻人人妻αv | 中文字幕一区二区三区乱码| 国产精品免费av一区二区| crdy在线观看欧美| 亚洲福中文字幕伊人影院| 成人h片在线播放免费网站| 三级影片在线看| 色爱综合av| 亚洲一区二区三区国产| 91日韩久久| 小向美奈子av| 精品久久在线| 国产性天天综合网| 欧美专区中文字幕| 内射中出日韩无国产剧情| 亚洲va欧美va天堂v国产综合| 亚洲精品一区在线观看香蕉| 青青视频免费在线观看| 天堂在线视频观看| 免费人成精品欧美精品| 亚洲精品理论电影| 日日摸日日碰夜夜爽无码| 国产在线观看精品一区| 新67194成人永久网站| 精品国产凹凸成av人网站| 免费av网址在线| 欧洲综合视频| 亚洲综合不卡| 欧美精品情趣视频| 免费网站在线观看黄| 国产福利在线| 国产成人午夜精品影院观看视频 | 日本猛少妇色xxxxx免费网站| 一区二区三区欧洲区| 欧美系列一区二区| 日韩激情视频| 无码视频一区二区三区| 国产精品任我爽爆在线播放| 欧美日韩亚洲综合在线| 亚洲最大免费| 国产视频www| 欧美在线网站| 亚洲成avwww人| 日韩 欧美 自拍| www.蜜臀av.com| 最新成人av网站| 国产丝袜一区二区三区| 欧美色图校园春色| 高清精品久久| 欧美日本乱大交xxxxx| 午夜视频在线瓜伦| caoporn国产精品免费视频| 蜜臀av在线播放一区二区三区| 18久久久久久| 久久黄色精品视频| 成人3d动漫在线观看| 亚洲人成电影在线播放| 亚洲欧美在线精品| 美女写真久久影院| 亚洲三级电影网站| 国产在线欧美日韩| 国产字幕在线观看| 香蕉精品999视频一区二区| 97免费中文视频在线观看| 亚洲女优在线观看| 在线成人免费| 欧美精品在线一区二区三区| 国产精品无码免费专区午夜| 全色精品综合影院| 久久综合九色综合97婷婷女人| 国产精品普通话| 久久久999久久久| 午夜精品毛片| 亚洲免费一级电影| 福利视频999| 在线视频成人| 日韩欧美国产一区在线观看| 国产精品少妇在线视频| 高清全集视频免费在线| 亚洲人午夜精品天堂一二香蕉| 天天综合中文字幕| 久草在线视频资源| 国产精品天美传媒| 国产精品一区而去| 国产又黄又粗又猛又爽| 亚洲三级网站| 欧美亚洲激情在线| 免费一级suv好看的国产网站| 亚洲小说春色综合另类电影| 精品少妇一区二区三区免费观看| 欧美自拍小视频| 啊啊啊久久久| 亚洲三级电影网站| 丰满少妇久久久| 高清不卡亚洲| 亚欧色一区w666天堂| 男人天堂1024| 国产精品xxx| 天涯成人国产亚洲精品一区av| 亚洲欧洲日本国产| 欧美日韩国产综合视频| 国产精品久久久久一区二区三区 | 国产精品一区二区久久精品| 精品国产伦一区二区三| 2019国产精品| 亚洲啊啊啊啊啊| 韩日精品一区二区| 日韩欧美色综合网站| 熟女少妇一区二区三区| 91精品婷婷色在线观看| 欧美一级高清免费播放| 国产免费的av| 国产亚洲综合av| 久久精品无码中文字幕| 在线观看二区| 成人免费毛片片v| 成人自拍性视频| 在线视频 中文字幕| 盗摄精品av一区二区三区| 日韩欧美在线一区二区| 亚洲性图自拍| 亚洲另类中文字| 三年中国国语在线播放免费| 加勒比色老久久爱综合网| 欧美变态tickle挠乳网站| 少妇无套高潮一二三区| 黄色成人在线网站| 国内精品美女av在线播放| 91福利免费视频| 久久久久久久久久久黄色| av动漫在线播放| 男女免费观看在线爽爽爽视频| 在线一区二区三区做爰视频网站| 麻豆av免费在线| 中文字幕视频精品一区二区三区| 日韩中文字幕免费看| 你懂得在线观看| 久久亚洲视频| 国产精品爽爽爽爽爽爽在线观看| 午夜av免费观看| 久久综合视频网| 欧美精品久久久久久久久久久| 岛国在线视频网站| 精品久久久久久无| 欧美日韩综合一区二区| 精品中文字幕一区二区小辣椒| 欧美日韩最好看的视频| 涩涩涩视频在线观看| 精品久久久久久国产| 韩国av中国字幕| 日韩有码一区| 91福利视频网| 天天操天天射天天| 欧美日韩免费网站| 在线观看免费黄网站| 妖精一区二区三区精品视频| 在线激情影院一区| 欧美精品成人久久| 国产午夜久久| 国产欧美日韩综合精品| 番号集在线观看| 欧美色视频在线| 青青青视频在线免费观看| 欧美日韩第一区| 人人做人人澡人人爽欧美| 熟妇高潮一区二区三区| 婷婷中文字幕一区三区| 亚洲av无码一区二区三区观看| 亚洲免费网站| 天堂精品一区二区三区| 欧美韩日亚洲| 亚洲精品美女久久久| 狠狠人妻久久久久久| 国产专区欧美精品| 精品免费视频123区| 日本高清视频在线播放| 欧美精品aⅴ在线视频| 紧身裙女教师波多野结衣| 国产精品1区2区| 欧美a在线视频| 四虎成人av| 成人欧美一区二区三区在线观看| 国产一级免费在线观看| 欧美视频一区二区三区| 潘金莲一级黄色片| 成人动漫在线一区| 天天干天天色天天爽| 欧美大片高清| 日韩在线国产精品| 亚洲GV成人无码久久精品| 国产欧美综合在线观看第十页 | 中文精品电影| 国产成人精品午夜| 黄色片网站免费在线观看| 国产精品人妖ts系列视频| 99999精品| 成人av二区| 99精品99久久久久久宅男| 日本在线免费中文字幕| 精品日韩欧美在线| 五月婷婷激情视频| 亚洲女人****多毛耸耸8| 醉酒壮男gay强迫野外xx| 麻豆精品精品国产自在97香蕉| 精品日产一区2区三区黄免费 | 国产欧美一区二区三区在线看| av网址在线免费观看| 欧美性猛交视频| 日本美女视频网站| 国产精品99在线观看| 国产精品99久久久久久人| 欧美私人网站| 国产视频精品自拍| www.97av.com| 欧美色综合影院| 中国一级特黄毛片| 亚洲美女淫视频| 免费视频91蜜桃| av色综合久久天堂av综合| 日韩精品视频在线观看视频| 成人精品亚洲| 久久精品日产第一区二区三区乱码 | 韩国欧美一区二区| 日韩欧美视频一区二区| 久久伦理中文字幕| 欧美老少配视频| 精品人妻伦一二三区久久| 色丁香久综合在线久综合在线观看| 久久久久久久久久久网| 成人亚洲精品久久久久软件| 五月婷婷六月丁香激情| 亚洲影音一区| av网站大全免费| 亚洲国产精品成人| 亚洲一卡二卡三卡| 激情综合网站| 免费看污久久久| 懂色aⅴ精品一区二区三区| 欧美一级片在线播放| 黄网av在线| 亚洲美女av在线播放| 三级小视频在线观看| 日韩欧美一级特黄在线播放| 在线观看亚洲国产| 欧美日韩在线不卡| 国产99久久久久久免费看| 色综合色狠狠天天综合色| аⅴ天堂中文在线网| www成人在线观看| 亚洲精品手机在线观看| 综合久久亚洲| 三年中国中文在线观看免费播放| 欧美一级淫片| 五月天婷亚洲天综合网鲁鲁鲁| 国产精品免费99久久久| 欧美午夜精品久久久久久蜜| 综合国产视频| 欧美伦理一区二区| 国产精品密蕾丝视频下载 | 五月婷婷免费视频| 日韩成人黄色av| 日韩在线免费播放| 亚洲人成电影网站色xx| 成人高清网站| 日韩亚洲欧美中文高清在线| 久久久久久国产精品免费无遮挡| 日韩欧美国产成人一区二区| 国产美女精品视频国产| 日韩一区二区在线看| 6080午夜伦理| 欧美日韩在线免费视频| 国产精品一级视频| 日韩你懂的在线观看| 欧洲成人一区二区三区| 精品亚洲夜色av98在线观看 | 久久精品青青大伊人av| 性欧美ⅴideo另类hd| 午夜精品www| 欧美成a人片在线观看久| 成人h视频在线观看播放| 一区二区三区自拍视频| 六十路精品视频| 日韩成人综合| 国产在线视频欧美一区二区三区| 亚洲资源网站| 椎名由奈jux491在线播放| 亚洲婷婷免费| 免费观看成人在线视频| 精品一区二区三区欧美| 中文字幕99页| 国产视频一区二区在线观看| 亚洲国产精品一区二区久久hs| 一区二区三区产品免费精品久久75| 老头老太做爰xxx视频| 国产精品不卡在线| 久久亚洲无码视频| 亚洲男人的天堂一区二区| 中文字幕在线观看免费视频| 欧美在线一二三| 黄色av中文字幕| 中文字幕日韩高清| cao在线视频| 欧美极品第一页| 91福利国产在线观看菠萝蜜| 6080yy精品一区二区三区| 欧美性aaa| 国产精品久久久久久久久久久久久| 丰乳肥臀在线| 国产精品免费久久久久影院| 亚洲国产中文在线二区三区免| 欧美在线一二三区| 免费一区二区三区视频导航| 国产树林野战在线播放| 麻豆精品网站| 丝袜老师办公室里做好紧好爽| 老色鬼精品视频在线观看播放| 亚洲天堂美女视频| 99精品热视频| 久久人妻少妇嫩草av无码专区| 国产女人18毛片水真多成人如厕| 久草免费新视频| 欧美美女bb生活片| 可以在线观看的黄色| 久久久久国产精品一区| 日本国产一区| 日本午夜精品一区二区三区| 亚洲黄色精品| 欧美性猛交xx| 亚洲色图欧美偷拍| 中文字幕乱码在线观看| 国产视频自拍一区| 多野结衣av一区| 成人黄动漫网站免费| 色喇叭免费久久综合网| 日本成人黄色网| 91蜜桃视频在线| 国产又大又黄视频|