首先,不管針對任何元素進(jìn)行可配置最終效果還是體現在界面上,主要包括兩個(gè)方面:一方面是功能菜單,另外一方面是功能頁(yè)面。
功能菜單作為原子功能的承載體,其包含的上下級及依賴(lài)關(guān)系直接反應了功能可配置,而功能頁(yè)面的可定制化可有效的體現租戶(hù)的特性數據。對于常用SaaS設計,功能菜單定制化可通過(guò)系統菜單框架來(lái)實(shí)現,功能頁(yè)面定制化可通過(guò)功能頁(yè)面容器來(lái)實(shí)現。
其次,針對流程、數據、功能的可配置需通過(guò)三類(lèi)主流的工作引擎來(lái)實(shí)現。流程可配置對應的是工作流引擎,拓展數據的查詢(xún)、使用、提交及相應的檢查可通過(guò)拓展數據引擎。最后,設計單獨的功能引擎,負責系統內功能的調度和租戶(hù)功能的使用。
所以,可配置系統的運行,需要包括系統菜單框架、功能頁(yè)面容器、工作流引擎、拓展數據引擎、功能引擎的配合。
下面將對其進(jìn)行一一的講解,需要說(shuō)明的,下面只是簡(jiǎn)單的介紹基本概念,至于具體詳細設計,筆者將會(huì )在后續的文章中做進(jìn)一步說(shuō)明。
系統菜單框架
系統菜單框架主要負責系統功能菜單的展示,其主要目的在于滿(mǎn)足租戶(hù)對功能菜單定制化的需求,依托功能菜單框架系統可根據租戶(hù)所配置的菜單進(jìn)行裝載。
需要注意是的,系統菜單框架需要依托功能引擎。因為在實(shí)際產(chǎn)品設計過(guò)程中,功能菜單背后所體現的是具體的原子功能。因此,需要結合功能引擎,在系統運行過(guò)程中,功能引擎負責為對應的功能菜單裝載功能。同時(shí),在菜單被點(diǎn)擊時(shí),由功能引擎負責對具體原子功能的調度和使用。
如上圖所示,功能菜單可直接展示給租戶(hù)查看并操作,但底層具體裝載和調度還是有功能引擎實(shí)現,系統菜單框架只提供功能菜單的配置。
功能頁(yè)面容器
功能頁(yè)面容器主要解決的問(wèn)題包含:頁(yè)面要素展示、頁(yè)面功能可用性、可配置數據展示、可配置數據提交。
頁(yè)面要素展示:頁(yè)面要素展示就是根據頁(yè)面的設計或租戶(hù)的配置,展示頁(yè)面的各種要素,在實(shí)際生產(chǎn)過(guò)程中租戶(hù)來(lái)源于各行各業(yè),不同的行業(yè)或公司有不同的設計要求,都需要在頁(yè)面要素展示中通過(guò)配置實(shí)現。 頁(yè)面功能可用性:根據租戶(hù)的購買(mǎi)行為,確定對應的原子功能是否可用。針對不可使用功能,系統可設置為不可用或直接隱藏。 可配置數據展示:根據租戶(hù)針對頁(yè)面實(shí)現定義可配置數據列表,在頁(yè)面自動(dòng)展示。前面在《SaaS可配置化:數據可配置》中提及,用戶(hù)根據實(shí)際需要,會(huì )產(chǎn)生添加拓展數據的需求,在系統實(shí)際運行過(guò)程中需要通過(guò)功能頁(yè)面容器對拓展數據實(shí)現特性化展示。 可配置數據提交:租戶(hù)針對頁(yè)面實(shí)體設計的可配置數據項,當頁(yè)面提交時(shí),從頁(yè)面實(shí)體中收集可配置的數據內容,和頁(yè)面實(shí)體一并提交。針對需要進(jìn)行提交驗證的數據,采用正則表達式進(jìn)行驗證。 拓展數據引擎
拓展數據引擎主要負責拓展數據的展示,拓展數據的提交,拓展數據的校驗與保存。在實(shí)際生產(chǎn)過(guò)程中,拓展數據引擎需要依賴(lài)功能頁(yè)面容器來(lái)實(shí)現,其主要工作方式為負責對應拓展數據的轉換。例如:拓展數據展示時(shí),系統從后臺獲取對應的數據,交由拓展引擎負責對其進(jìn)行相應的類(lèi)型轉換,進(jìn)而完美的顯示到頁(yè)面。
功能引擎
功能引擎的實(shí)現最終還是需要依賴(lài)系統菜單框架及功能頁(yè)面容器兩方面的配合,功能引擎主要作用是依據租戶(hù)所購買(mǎi)的功能包為其分配對應原子功能,而原子功能依托系統功能框架體現到用戶(hù)端。
在實(shí)際使用過(guò)程中,功能引擎會(huì )確定對應的租戶(hù)是否可執行相應的功能或操作。
上述對可配置系統運行的核心模塊做了簡(jiǎn)單的介紹,后續將會(huì )根據實(shí)際工作需要,對其逐一進(jìn)行詳細說(shuō)明。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站