一直以來,都希望整合一個以客戶為中心的平台,有兩個方面的考慮:一是實現客戶數據、客戶關系 、客戶管理等方面的整合,以便更好利用好客戶的相關資源,發揮最大的營銷效益;二是整合目前我的 開發框架的所有模塊和技術,包括權限管理和控制、字典管理模塊、分頁控件、公用類庫、自動更新模 塊、附件管理模塊、郵件短信的信息通知模塊、工作流模塊,以及來電顯示記錄模塊、群發郵件營銷模 塊、日歷管理模塊等方面的內容。本隨筆系列主要介紹在開發我的CRM系統中的各種場景問題的解決思路 ,以及相關的功能實現,力求在逐步完善這個CRM系統模塊過程中,介紹我目前基於我的Winform開發框 架套件和Database2Sharp代碼生成工具的CRM系統的開發歷程和經驗總結,希望記錄下的點點滴滴,對自 己,對同行都有著一定的借鑒、參考作用,同時也希望吸納更多的批評指導意見,逐步提高自己整個 Winform開發框架體系的深度和廣度。
1)CRM系統功能的借鑒和設計
在實際開發之初很長一段時間,都很留意CRM系統的相關信息,包括從華軍、天空網站下載了一些不 錯的CRM系統,以及一些急於B/S的在線CRM系統,吸收其中的一些思路和功能,同時也在Google、Baidu 上搜索一些別人設計文檔或者介紹文檔,了解整個CRM系統可能包含的模塊和關聯的關系。
主要的功能模塊包括:客戶管理、服務管理、商品及銷售、報表數據等幾大塊。
其中客戶管理包括的內容有:客戶管理、客戶跟進、聯系人管理、客戶文檔、合同文檔、維護記錄、 售後服務、客戶投訴、客戶活動、銷售機會、產品報價、銷售記錄、客戶拜訪、客戶來電、發票記錄、 客戶分組、聯系人分組等方面的管理,基本上就是,以客戶為中心的相關數據的管理。當然,後面還可 以擴展添加,客戶往來郵件、客戶往來短信,以及和客戶相關等各方面的數據。例如下面是我設計的客 戶往來的總體界面,包括了一切和客戶相關的模塊展示,主界面源自我的《Winform開發框架》的布局效 果,整合了主體框架的內容,在主界面裡面,也整合了Winform分頁控件實現數據的合理高效的展示,並 且通過把界面拆分多個可以調整的部分,使得更加友好。
2)客戶分類管理
a、常規字典模塊的動態加載
一般情況下,我們對客戶的分類都需要動態加載,對這個客戶分類的管理,我希望能給使用者提供足 夠的方便,如下面的客戶狀態、客戶類型等節點裡面的數據來源數據字典,用戶調整對應字典模塊的數 據,這個樹形列表也應該跟著變化。
上面的節點數據來自數據字典模塊的內容,字典模塊直接利用《Winform開發框架》現成的模塊即可 ,界面如下所示。
b、客戶省份、客戶城市的動態加載
除了從數據字典中加載的節點數據,還有一種如客戶省份、客戶城市,我們知道這些數據很大,我們 如果在樹列表裡面展示全國的城市,那麼肯定是不好的用戶體驗,想想要在全國幾百個城市找一個出來 可不容易。
於是,我們應該換一種方法,試著從已有客戶所在的省份、所在的城市,把他們動態加載出來,數據 就少很多,友好很多,基本上我們看任何一個節點都會有數據,這就是貼心的設計,友好的體驗。
以下就是從客戶數據裡面提取客戶所在省份、客戶所在城市,然後再在節點中列出。
c、客戶分組的管理
除了上面兩種,還有一種來自個人的客戶組別的數據表數據,我們從其中獲取到對應的客戶分組信息 ,然後在客戶分組節點中展示出來,選擇對應的個人分組就可以獲取對應的客戶
上面的個人分組來自對客戶的個人分組表裡面,它的管理界面如下所示。
d、客戶分類的配置管理
從上面對客戶的分類,我們看到已經有很多大的類別了,每個類別展開還有好幾項,這樣就構成了一 個很大的樹,但是有時候有些客戶可能不一定對所有的分類節點都感興趣,如果能夠給客戶一個選擇配 置的機會,會顯得更加友好,因此客戶分類的功能需求也就應運而生,我們把這些預先設定一個系統節 點表,然後每個用戶存儲在另外一張用戶表裡面,這樣就可以實現了。
3)客戶管理模塊的動態加載
以客戶為中心的數據管理,就會分為很多名目, 如上面提到的客戶管理、客戶跟進、聯系人管理、 客戶文檔、合同文檔、維護記錄、售後服務、客戶投訴、客戶活動、銷售機會、產品報價、銷售記錄、 客戶拜訪、客戶來電、發票記錄。
管理這些模塊,我們在開發的時候,如果在一個TabControl集成那麼多模塊,也是可以的,不過不夠 彈性化,比較僵硬死板,而且可能不好動態調整,如果整合一起,字段控件的命名也成問題。
因此,我設計這些模塊的時候,每個業務模塊作為一個控件,然後再在統一在界面中動態整合,這樣 還可以實現本節所說的動態加載和配置管理,這裡面也用到了Winform分頁控件模塊,使用代碼生成工具 Database2Sharp實現所有子模塊的列表展示和數據編輯界面的快速開發,具體可以參考上一篇隨筆《利 用代碼生成工具Database2Sharp設計數據編輯界面》。
和上面的客戶分類一樣,我覺得不是每個人都可能關注所有的相關資料,有些可能只需要關心幾項內 容,那麼應該提供一個模塊配置的界面給客戶進行必要的調整,配置界面如下所示
查看本欄目
4)數據編輯界面的設計
處理上面的分類設計要求,對每項數據的編輯界面,我也希望能給設計符合一般用戶的使用習慣,如 下面的客戶信息的數據編輯界面和聯系人數據編輯界面效果。這裡面的界面效果,是使用代碼生成工具 Database2Sharp實現列表展示和數據編輯界面的快速開發,然後進行適當的調整,具體可以參考上一篇 隨筆《利用代碼生成工具Database2Sharp設計數據編輯界面》。
客戶聯系人數據編輯界面如下所示。
以上就是這個CRM系統模塊裡面,涉及到的一些比較典型的界面設計,本篇不設計技術代碼的研究, 後續的文章將對這些設計的細節和實現思路進行分析介紹,希望大家多多支持,提供更多的批評意見, 相互促進。
伍華聰 http://www.iqidi.com