非全自研可視化表達引擎RuleLinK可視化之路

導讀

上一篇《非全自研可視化表達引擎-RuleLinK》介紹了RuleLink的V1.0版本,雖說一定程度上消除了一些配置相關的樣板式代碼,也肉眼可見的消除了一些研發資源的浪費;RuleLink的初衷是讓業務配置變得簡單,是面向運營同學。要真正面向運營,我們開始了真正的可視化之路,“真正”二字體驗在操作可視化,數據可視化。於是有了這篇文章。也爲它設計一個Logo。

兩個概念

表達式

這個表達式的意思是:如果 某業務線、某訂單類型,某門店類型,訂單金額5萬以的內 則 [返回最低折扣]。

data.bu == 0 
&& data.storeType == 0 
&& data.price > 0 
&& data.price < 50000 
&& data.orderType == 60

返回結果

返回結果是指輸入的事實滿足條件時,返回的內容。目前只支持返回基本類型。

如下:

1,滿足條件時返回折扣95(這是簡單文本)

最低95折

2,滿足條件時返回具體的業務數據

可用的支付主體

 

所以可視化解決兩個問題:

1,規則表達的可視化(包括選項)

2,返回結果數據的可視化

RuleLink領域模型

基於前面的分析,爲了讓表達式中的因了選項可視化以及返回結果數據項的可視化,我們本來計劃再設計一個選項數據源的對象(存儲選項,如支付方式 分支付寶,微信,招行等),這是個麻煩的工作,爲了這個小工具實在不想動用太多研發資源,霎時感覺山重水盡疑無路。

早上6點多和娃子到學校晨跑時,放空思緒,方纔記起上一個需求爲了解決商品自定義字段問題,抽出了獨立屬性管理,支持手動配置選項與動態選項。於是在上一篇文章ER模型的基礎上引入了屬性管理。有了屬性動態的支持,才能貼近業務,RuleLink才能從一個單純的通用工具升級到一個規則平臺,這纔有了靈魂。及簡的ER模型如下圖。

領域模型

 

功能演示

屬性

屬性支持配置選項或者動態選項(獲取業務系統數據)

 

規則對象

 

對象因子

對象因子
因子關聯屬性-獲取選項內容

因子關聯屬性,複用其選項內容

規則

規則部分與返回結果都是選擇業務數據,這樣的操作方是運營同學方便使用的。

未來規劃

目前的基本已經勉強可以面向運營同學使用了,但是真的要跑向生產環境,還是有諸多問題等待解決。接下來主要面向易用性&安全性方面做些工作。

  • 業務功能嵌入規則模塊
  • 操作符號擴展
  • 規則版本號-解決修改的問題。
  • 權限管理-數據權限的粒度是一個問題
  • 規則靜態解析工具-支持客戶端自助判斷
  • ...

路漫漫其修遠兮

寫在最後

今年初開始有這個想法,到今天完成一個基礎的可用版本,交付運營使用。已經是6-7個月過去了。第一個版本所有數據都是手動添加,github刨資源,再到後來刷臉調用前端資源。心中一直想着一件事兒,其實也挺充實的。

接下來就是快樂的發版聚餐了,未來希望每增加100個場景聚餐一次;

 

成爲一名優秀的程序員!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章