溫 號(hào),王 萍,徐萌萌,莊亞軍
(河海大學(xué)物聯(lián)網(wǎng)工程學(xué)院,常州213022)
·微機(jī)應(yīng)用·
基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng)設(shè)計(jì)
溫 號(hào),王 萍,徐萌萌,莊亞軍
(河海大學(xué)物聯(lián)網(wǎng)工程學(xué)院,常州213022)
為改變目前食品團(tuán)購(gòu)管理系統(tǒng)繁雜、低效的現(xiàn)狀,提出基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng),實(shí)現(xiàn)企業(yè)通過(guò)微信客戶(hù)端對(duì)團(tuán)購(gòu)用戶(hù)、訂單、貨運(yùn)以及回款的實(shí)時(shí)管理。設(shè)計(jì)包括微信公眾平臺(tái),食品團(tuán)購(gòu)管理系統(tǒng)設(shè)計(jì)和基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng)運(yùn)行與實(shí)現(xiàn)三部分。微信公眾平臺(tái)部分介紹微信公眾平臺(tái)優(yōu)勢(shì)及其服務(wù)模式,食品團(tuán)購(gòu)管理系統(tǒng)設(shè)計(jì)包括系統(tǒng)工作流程設(shè)計(jì)、功能設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)和軟件設(shè)計(jì)?;谖⑿殴娖脚_(tái)的食品團(tuán)購(gòu)管理系統(tǒng)運(yùn)行與實(shí)現(xiàn)展示系統(tǒng)的相關(guān)運(yùn)行界面。該系統(tǒng)有效提高了企業(yè)資源利用率,降低運(yùn)營(yíng)成本,增加市場(chǎng)競(jìng)爭(zhēng)力。經(jīng)過(guò)實(shí)際使用測(cè)試,證明該食品團(tuán)購(gòu)管理系統(tǒng)穩(wěn)定可靠。
微信公眾平臺(tái);客戶(hù)端;服務(wù)模式;數(shù)據(jù)庫(kù);食品團(tuán)購(gòu)管理系統(tǒng);實(shí)時(shí)管理
團(tuán)購(gòu)正逐步成為消費(fèi)者優(yōu)先選擇的消費(fèi)方式,伴隨著團(tuán)購(gòu)數(shù)量的不斷增加,對(duì)于團(tuán)購(gòu)管理公司而言,如何簡(jiǎn)單高效地管理團(tuán)購(gòu)用戶(hù)、訂單、貨運(yùn)以及回款成為急需解決的問(wèn)題[1]。筆者提出一種基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng)設(shè)計(jì),有效解決了食品團(tuán)購(gòu)管理復(fù)雜、低效的問(wèn)題,經(jīng)過(guò)實(shí)際應(yīng)用證明該系統(tǒng)是穩(wěn)定可靠的。筆者將從微信公眾平臺(tái)和系統(tǒng)設(shè)計(jì)兩方面展開(kāi)論述。
2.1 微信公眾平臺(tái)優(yōu)勢(shì)
微信公眾平臺(tái)是由騰訊公司在微信基礎(chǔ)上新增的功能模塊,為智能終端提供即時(shí)通信服務(wù)。通過(guò)微信公眾平臺(tái),企業(yè)能打造屬于自己的微信公眾賬號(hào),實(shí)現(xiàn)不同群體跨通信運(yùn)行商,跨操作系統(tǒng)溝通與互動(dòng)。微信公眾賬號(hào)分為服務(wù)號(hào),訂閱號(hào)和企業(yè)號(hào),本系統(tǒng)設(shè)計(jì)采用微信企業(yè)號(hào),更方便企業(yè)管理。
微信公眾平臺(tái)相較于其他開(kāi)發(fā)方式具有方便快捷,構(gòu)建成本低,功能靈活和多平臺(tái)工作等優(yōu)勢(shì)[2]。方便快捷體現(xiàn)在只要借助移動(dòng)通信設(shè)備就可以方便快捷地使用。傳統(tǒng)客戶(hù)端開(kāi)發(fā)成本高,周期長(zhǎng)且維護(hù)困難,微信公眾平臺(tái)很好地解決了這些問(wèn)題,大大減小了構(gòu)建成本。微信公眾平臺(tái)具備查詢(xún)、預(yù)定、訊息瀏覽和服務(wù)定制等幾大功能,功能靈活,這是傳統(tǒng)客戶(hù)端開(kāi)發(fā)所不具備的優(yōu)勢(shì)。最后微信公眾平臺(tái)可以實(shí)現(xiàn)多平臺(tái)工作,支持IOS,Android,Windows Phone等主流移動(dòng)設(shè)備操作系統(tǒng),相比于傳統(tǒng)客戶(hù)端分多系統(tǒng)進(jìn)行開(kāi)發(fā)優(yōu)勢(shì)明顯。
基于以上,選用微信公眾平臺(tái)作為服務(wù)平臺(tái)進(jìn)行食品團(tuán)購(gòu)管理系統(tǒng)的設(shè)計(jì)與研究。
2.2 微信公眾平臺(tái)服務(wù)模式
在搭建食品團(tuán)購(gòu)管理系統(tǒng)前需要到騰訊公眾平臺(tái)申請(qǐng)企業(yè)號(hào),在完成申請(qǐng)審核各步驟,了解微信公眾平臺(tái)服務(wù)模式后就可通過(guò)公眾平臺(tái)開(kāi)放的接口實(shí)現(xiàn)二次性開(kāi)發(fā)和個(gè)性化服務(wù)制定[3]。
微信公眾平臺(tái)的服務(wù)模式是當(dāng)普通賬號(hào)向公眾賬號(hào)發(fā)送消息時(shí),微信公眾平臺(tái)將用戶(hù)輸入內(nèi)容通過(guò)數(shù)據(jù)接口發(fā)送到第三方業(yè)務(wù)處理服務(wù)器,服務(wù)器經(jīng)過(guò)處理后將結(jié)果以特定的數(shù)據(jù)結(jié)構(gòu)返還給微信公眾平臺(tái)服務(wù)器,最終由微信公眾平臺(tái)服務(wù)器將結(jié)果發(fā)送至普通用戶(hù)微信客戶(hù)端。主要包括網(wǎng)址接入,接收消息和發(fā)送消息三個(gè)方面。
(1)網(wǎng)址接入
進(jìn)入微信公眾平臺(tái)開(kāi)發(fā)者模式,在開(kāi)發(fā)者中心服務(wù)器配置項(xiàng)中填寫(xiě)URL和Token,其中URL是用來(lái)接收微信服務(wù)器消息和事件的服務(wù)器地址,Token是令牌。當(dāng)用戶(hù)發(fā)送請(qǐng)求消息后,微信公眾平臺(tái)服務(wù)器將發(fā)送GET請(qǐng)求到所填寫(xiě)的URL服務(wù)器上,并且附帶Signature(微信加密簽名),Timestamp(時(shí)間戳),nonce(隨機(jī)數(shù))和echostr(隨機(jī)字符串)。
(2)接收消息
用戶(hù)向公眾平臺(tái)服務(wù)器發(fā)送請(qǐng)求消息時(shí),微信公眾平臺(tái)服務(wù)器將消息以XML[4]數(shù)據(jù)包的形式推送到第三方服務(wù)器上,開(kāi)發(fā)者通過(guò)對(duì)Signature簽名的校驗(yàn),來(lái)判斷用戶(hù)發(fā)送請(qǐng)求消息的真實(shí)性。以發(fā)送文本消息為例,其XML數(shù)據(jù)包節(jié)點(diǎn)結(jié)構(gòu)如下所示,參數(shù)說(shuō)明如表1所示。
表1 接收文本消息元素說(shuō)明
(3)發(fā)送消息
對(duì)于用戶(hù)發(fā)送的每個(gè)請(qǐng)求,第三方服務(wù)器都將返回特定結(jié)構(gòu)的XML數(shù)據(jù)包進(jìn)行響應(yīng)(現(xiàn)支持文本,圖片,圖文,語(yǔ)音,視頻,音樂(lè))。若微信公眾平臺(tái)服務(wù)器五秒鐘內(nèi)不收到響應(yīng)就會(huì)斷掉鏈接,并且重新發(fā)送請(qǐng)求,總共重試三次。若第三方服務(wù)器沒(méi)有對(duì)請(qǐng)求進(jìn)行處理,則必須回復(fù)空串。
各響應(yīng)的XML數(shù)據(jù)包節(jié)點(diǎn)因響應(yīng)消息類(lèi)型不同而不同。以文本消息為例,其XML數(shù)據(jù)包節(jié)點(diǎn)結(jié)構(gòu)如下所示,其參數(shù)說(shuō)明如表2所示。
表2 發(fā)送文本消息元素說(shuō)明
3.1 食品團(tuán)購(gòu)管理系統(tǒng)工作流程
基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng)工作流程如圖1所示。微信客戶(hù)端首先向微信公眾平臺(tái)服務(wù)器發(fā)送請(qǐng)求,微信公眾平臺(tái)服務(wù)器收到請(qǐng)求后將用戶(hù)請(qǐng)求以XML結(jié)構(gòu)體的形式向食品團(tuán)購(gòu)管理系統(tǒng)服務(wù)器推送。食品團(tuán)購(gòu)管理系統(tǒng)服務(wù)器收到請(qǐng)求后,經(jīng)過(guò)相應(yīng)處理將用戶(hù)所需的數(shù)據(jù)以XML結(jié)構(gòu)體形式發(fā)送到微信公眾平臺(tái)服務(wù)器。最后微信公眾平臺(tái)服務(wù)器將數(shù)據(jù)反饋給微信客戶(hù)端。用戶(hù)發(fā)送請(qǐng)求經(jīng)過(guò)微信公眾平臺(tái)服務(wù)器到食品團(tuán)購(gòu)管理服務(wù)系統(tǒng)服務(wù)器的數(shù)據(jù)稱(chēng)為上行數(shù)據(jù),食品團(tuán)購(gòu)管理服務(wù)系統(tǒng)服務(wù)器經(jīng)過(guò)微信公眾平臺(tái)服務(wù)器將信息反饋給微信客戶(hù)端的數(shù)據(jù)稱(chēng)為下行數(shù)據(jù)。
圖1 基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng)工作流程圖
3.2 食品團(tuán)購(gòu)管理系統(tǒng)功能設(shè)計(jì)
基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng)主要包括賬號(hào)管理、業(yè)務(wù)操作和系統(tǒng)幫助三個(gè)模塊。賬號(hào)管理模塊主要包括人員注冊(cè)、帳號(hào)綁定、解除綁定和修改密碼。業(yè)務(wù)操作模塊包括商品操作、客戶(hù)管理、訂單管理、儲(chǔ)運(yùn)管理和送貨回款。系統(tǒng)幫助模塊主要包括操作說(shuō)明和系統(tǒng)模塊。其功能結(jié)構(gòu)如圖2所示。
圖2 基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng)功能結(jié)構(gòu)
對(duì)于這些功能模塊及其子模塊,本系統(tǒng)提供了兩種方式進(jìn)行操作。一種是根據(jù)用戶(hù)角色所返還的功能模塊鏈接,通過(guò)鏈接到相關(guān)功能模塊頁(yè)面進(jìn)行操作。另一種是通過(guò)微信公眾平臺(tái)所特有的功能進(jìn)行操作,如發(fā)送圖片,掃信息碼和提交位置等。通過(guò)用戶(hù)所提供的文本、圖片、語(yǔ)音、二維碼、條形碼、GPS坐標(biāo)等信息,食品團(tuán)購(gòu)管理系統(tǒng)服務(wù)器將相關(guān)信息和功能模塊發(fā)送給用戶(hù),讓用戶(hù)更有針對(duì)性地獲取信息和進(jìn)行相關(guān)模塊的操作。
3.3 食品團(tuán)購(gòu)管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)按照數(shù)據(jù)結(jié)構(gòu)來(lái)組織、存儲(chǔ)和管理數(shù)據(jù),基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)采用Microsoft SQL Server 2008 R2[5]。數(shù)據(jù)庫(kù)采用一庫(kù)多表的方式,主要包括用戶(hù)(T_Users),角色權(quán)限(T_Role),部門(mén)(T_Department),顧客(T_Customer),訂單(T_Order),商品(T_Goods)等表。由于表目眾多,筆者以用戶(hù)和權(quán)限、菜單關(guān)系為例介紹,圖3為其數(shù)據(jù)庫(kù)關(guān)系圖。
3.4 食品團(tuán)購(gòu)管理系統(tǒng)軟件設(shè)計(jì)
食品團(tuán)購(gòu)管理系統(tǒng)軟件設(shè)計(jì)主要包括食品團(tuán)購(gòu)管理系統(tǒng)功能模塊設(shè)計(jì)和食品團(tuán)購(gòu)管理系統(tǒng)服務(wù)器設(shè)計(jì)。微信客戶(hù)端界面一級(jí)菜單為團(tuán)購(gòu)系統(tǒng),二級(jí)菜單為進(jìn)入系統(tǒng),發(fā)送圖片,掃信息碼和提交位置。
3.4.1 食品團(tuán)購(gòu)管理系統(tǒng)功能模塊設(shè)計(jì)
食品團(tuán)購(gòu)管理系統(tǒng)功能模塊設(shè)計(jì)采用HTML[6]+JavaScript[7]+CSS+BaiduTemplate技術(shù)來(lái)實(shí)現(xiàn)。HTML用于設(shè)計(jì)功能模塊頁(yè)面,CSS負(fù)責(zé)頁(yè)面樣式設(shè)計(jì)。JavaScript用于功能模塊邏輯業(yè)務(wù)設(shè)計(jì),數(shù)據(jù)交換采用JavaScript下的AJAX[8]技術(shù)(Asynchronous JavaScript And XML:異步JavaScript和XML)。BaiduTemplate技術(shù)則是將所獲取的業(yè)務(wù)邏輯數(shù)據(jù)和功能模塊頁(yè)面進(jìn)行綁定。
傳統(tǒng)的ASP.NET和JSP網(wǎng)頁(yè)設(shè)計(jì)技術(shù),將業(yè)務(wù)處理和數(shù)據(jù)獲取、融合均置于服務(wù)器端,采用HTML+JavaScript+CSS+BaiduTemplate技術(shù)可以實(shí)現(xiàn)業(yè)務(wù)處理和數(shù)據(jù)獲取的分離,并將數(shù)據(jù)融合置于客戶(hù)端。另外,本系統(tǒng)獲取數(shù)據(jù)采用AJAX技術(shù),實(shí)現(xiàn)了頁(yè)面局部刷新,避免無(wú)用數(shù)據(jù)的重復(fù)獲取。這兩點(diǎn)有效減小了服務(wù)器的工作壓力,減小了網(wǎng)絡(luò)帶寬的占用,降低了服務(wù)器的運(yùn)行維護(hù)成本。
圖3 用戶(hù),權(quán)限和菜單的數(shù)據(jù)庫(kù)關(guān)系圖
3.4.2 食品團(tuán)購(gòu)管理系統(tǒng)服務(wù)器設(shè)計(jì)
食品團(tuán)購(gòu)管理系統(tǒng)服務(wù)器設(shè)計(jì)包括兩個(gè)部分,一部分是針對(duì)微信公眾平臺(tái)請(qǐng)求的處理模塊設(shè)計(jì),另一部分是針對(duì)食品團(tuán)購(gòu)管理系統(tǒng)功能模塊的處理模塊設(shè)計(jì)。系統(tǒng)服務(wù)器設(shè)計(jì)采用Microsoft Visual Studio 2010。
針對(duì)微信公眾平臺(tái)請(qǐng)求的處理模塊設(shè)計(jì)主要包括TwxUpMsg.cs,TwxProcess.cs,TwxDownMsg.cs三個(gè)類(lèi),其中TwxUpMsg.cs負(fù)責(zé)對(duì)微信公眾平臺(tái)發(fā)出的上行數(shù)據(jù)解析處理,并進(jìn)行存儲(chǔ)。TwxProcess.cs負(fù)責(zé)對(duì)進(jìn)入系統(tǒng),發(fā)送圖片,掃信息碼和提交位置四個(gè)二級(jí)菜單按鈕的處理。TwxDownMsg.cs負(fù)責(zé)將請(qǐng)求返回的數(shù)據(jù)轉(zhuǎn)換成微信公眾平臺(tái)可以接收的數(shù)據(jù)結(jié)構(gòu)。
針對(duì)食品團(tuán)購(gòu)管理系統(tǒng)功能模塊的處理模塊設(shè)計(jì)主要包括數(shù)據(jù)集查詢(xún),HTTP文件下載,資源文件下載和SQL操作執(zhí)行等。
通過(guò)微信客戶(hù)端的添加朋友或者微信掃一掃,關(guān)注食品團(tuán)購(gòu)管理系統(tǒng)企業(yè)號(hào)。關(guān)注成功并綁定賬號(hào)后即可進(jìn)入食品團(tuán)購(gòu)管理系統(tǒng),圖4為基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng)運(yùn)行界面。圖片(a)為系統(tǒng)菜單界面;圖片(b)為單擊進(jìn)入系統(tǒng)按鈕后的運(yùn)行界面,單擊列表可進(jìn)入系統(tǒng)相關(guān)模塊;圖片(c)為單擊發(fā)送位置按鈕后的運(yùn)行界面,單擊列表可獲取相關(guān)位置信息。
圖4 基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng)運(yùn)行界面
針對(duì)食品團(tuán)購(gòu)管理系統(tǒng)的特點(diǎn),設(shè)計(jì)出基于微信公眾平臺(tái)的食品團(tuán)購(gòu)管理系統(tǒng),是遠(yuǎn)程移動(dòng)辦公服務(wù)和Web端服務(wù)的綜合管理系統(tǒng)。本系統(tǒng)經(jīng)過(guò)實(shí)際應(yīng)用證明操作簡(jiǎn)單,運(yùn)行穩(wěn)定可靠,無(wú)數(shù)據(jù)丟失,達(dá)到了系統(tǒng)設(shè)計(jì)的目的和使用需求,切實(shí)提高了食品團(tuán)購(gòu)管理效率,降低了企業(yè)運(yùn)營(yíng)成本,增加了市場(chǎng)競(jìng)爭(zhēng)力。
[1] 張曉孿.基于SSH的團(tuán)購(gòu)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,2012(21):122-125.
ZHANG Xiao-luan.Design and Realization of Group Purchase Website Based on SSH[J].Electronic design engineering,2012(21):122-125.
[2] 江波,覃燕梅.基于微信的移動(dòng)圖書(shū)館APP服務(wù)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代情報(bào),2013(6):41-44.
JIANG Bo,Qin Yan-mei.Design and Implementation of Mobile Library APP Service System Based on WeChat
[J].Journal of Modern information,2013(6):41-44.
[3] 薛君志,黃岳嶸,閔新力.基于微信的物流配送人員外勤管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2014(8):70-72.
XUE Jun-zhi,HUANG Yue-rong,MIN Xin-li.Design and Implementation of Logistics Officer Field Service Management System Based on Wechat[J].Electronic Technology&Software Engineering,2014(8):70-72.
[4] 郭荷清,王增勛.XML數(shù)據(jù)綁定及對(duì)象序列化的應(yīng)用研究[J].計(jì)算機(jī)應(yīng)用與軟件,2006,23(5):65-66.
GUO He-qing,WANG Zeng-xun.Research of XML Data Binding and Object Serialization[J].Computer Applications and Software,2006,23(5):65-66.
[5] 于風(fēng)山,趙衛(wèi)東,田剛.SQL Server數(shù)據(jù)庫(kù)設(shè)計(jì)優(yōu)化技術(shù)[J].福建電腦,2006(2):132-133.
YU Feng-shan,ZHAO Wei-dong,TIAN Gang.SQL Server Database Design Optimization Techniques[J].Fujian Computer,2006(2):132-133.
[6] 王慶,楊文暉.基于HTML5的移動(dòng)Web技術(shù)[J].軟件導(dǎo)刊,2013(12):145-147.
WANG Qing,YANGWen-h(huán)ui.Mobile Web Technology Based on HTML5[J].Software Guide,2013(12):145-147.
[7] 郭珂.用JavaScript腳本語(yǔ)言編寫(xiě)試題網(wǎng)頁(yè)[J].電腦編程技巧與維護(hù),2014(6):65-67.
GUO Ke.Written in JavaScript Scripting Language Test Page[J].Computer Programming Skills&Maintenance,2014(6):65-67.
[8] 范煒,趙政文,鄧正宏.AJAX及AJAX.NET應(yīng)用研究[J].科學(xué)技術(shù)與工程,2007(8):1748-1751.
FAN Wei,ZHAO Zheng-wen,DENG Zheng-h(huán)ong.AJAX and AJAX.NET Application Research[J].Science Technology and Engineering,2007(8):1748-1751.
Design of Food Group Purchase Management System Based on Wechat
Wen Hao,Wang Ping,Xu Mengmeng,Zhuang Yajun
(College of Internet of Things Engineering,Hohai University,Changzhou 213022,China)
In order to change the complex and inefficient situation of present food group purchase management system,a new system based on Wechat is proposed to implement the real timemanagement for users,orders,shipping and collection of payment by the client of Wechat,including Wechat,the design,the operation and implementation of the system based on Wechat.The Wechat introduces the edge ofWechat and servicemode and the design of the system includes the work flow design,functional design,database design and application design.The operation and implementation of the system shows the running interface of application.As it effectively improves the efficiency of enterprise resources,reduces operating costs and increasesmarket competitiveness,the test result shows that it is reliable and stable.
Wechat;Client;Service Mode;Database;Food Group purchasemanagement system;Real timemanagement
10.3969/j.issn.1002-2279.2015.06.018
TP319
A
1002-2279(2015)06-0065-05
溫號(hào)(1991-),男,江蘇省鹽城市人,碩士研究生,主研方向:智能信息處理理論與技術(shù)。
2015-02-06