1. 程式人生 > >Java產品設計-微信開發設計5《微商城saas系統之新版架構設計》

Java產品設計-微信開發設計5《微商城saas系統之新版架構設計》

由於前面的專案架構讓我們感覺到,我們維護成本比較大,並且專案之間的業務需求太過於緊密,我們開始對專案進行架構重組,開始規劃這個新版的設計!

新版 的設計,結構很清晰。

主專案:

子模組plugin

一、專案框架:
1、採用Spring3.X+SpringMVC3.X+Mybatis+Bootstrap3.X+MySQL,Spring採用3.X版本,使用註解方式管理bean關係,基於SpringMVC進行封裝公共的controller,Spring 自動掃描專案包管理、mybatis Mapper自動掃描等特性;模板採用Bootstrap3.X進行整合的,介面UI優美,並且對於bootstrap模板封裝成元件化。
2、專案採用Maven管理,專案分模組化開發,每個業務都是一個plugin,應用專案依賴plugin進行組裝打包整合出不同的專案。
3、專案出發點是SAAS理論,因此表的設計與業務設計都是SAAS架構的,資料庫表設計都是根據商戶ID進行獨立儲存,業務增刪改查都也都是根據商戶ID獨立管理。
4、許可權控制,採用自定義封裝許可權標籤進行管理。
5、CDN儲存設計,有微商城、微門店是滿足於SAAS架構的,考慮到未來SAAS商戶量一大會導致伺服器壓力大,圖片訪問資源慢的問題,因此專案設計上所有的圖片儲存都是採用CDN儲存設計,將圖片儲存到了雲端,由雲端回源到自己專案域名,以提升專案中圖片的儲存問題與訪問圖片資源緊張跟效能的問題。

每一個plugin都是獨立的,他跟其他的plugin之間沒有耦合關係,我們這樣設計的目的就是為了解耦合,同時又希望這些plugin之間可以進行組合成產品,這樣一個個的升級plugin,就會有不同的產品組合出來!

下面舉例一下其中的一個plugin:

這是微信公眾號管理的plugin模組結構,他擁有獨立的controller,mapper,service,util這些,這個模組被打包有,會被編譯到web專案中的lib目錄下,web專案依賴這些plugin模組!

二、專案介紹:

1、重整微信公眾平臺自帶的自定義選單功能,設計了一套屬於自己的更靈活更強大的自定義選單功能。

2、解決公眾平臺管理服務功能,如微信公眾號管理、微信支付管理、微信自動回覆、微信圖文管理、自定義選單功能,模板管理與選擇,模板新增等

3、解決許可權管理功能,如選單管理,角色管理,管理員管理等系統功能。

4、解決圖片空間管理功能,支援使用者自定義建立資料夾,上傳圖片,右鍵自定義刪除,複製連結,資料夾郵件刪除、重新命名等功能。

5、解決雲服務中心,提供幫助文件說明、人工服務,工單系統等

6、解決店鋪管理,如:店鋪設定、我的店招,店鋪宣傳等功能

7、解決商品管理,支援所有行業的商品管理,採用靈活自建屬性、規格的方式進行商品建立。商品管理核心功能:支援商品宣傳管理,支援官方分類管理(即B2C分類,分一級、二級、三級分類),支援使用者自定義建立商品分類並管理分類,分類同樣支援三級分類,支援商品釋出,選擇使用預設的B2C分類,或者自定義建立的分類,可以為分類指定banner跟圖示。

8、解決訂單管理,支援多狀態訂單,支援發貨等核心訂單管理功能。

9、解決使用者管理功能,支援使用者管理(可指定店長,贈送積分等功能),地址管理,積分管理,餘額記錄管理等功能

10、解決分銷管理功能,支援三級分銷中心管理,三級分銷報表管理,三級分銷使用者管理,三級分銷訂單管理,三級分銷提現管理。

11、解決營銷管理功能,如,限時特賣,明日預告,主推商品,奪寶管理、砍價管理等功能,後續還在升級中。

三、詳細功能介紹:

最近開源了自己的開發標準即框架:

相關推薦

no