張馨中,秦立靜,蔡文樂,趙蕓帆,李美萱,關(guān)文杰,寇東云
摘要:高校頻繁出現(xiàn)丟件、漏件和錯件的現(xiàn)象。為滿足用戶對隨時隨地進行預(yù)約取件,預(yù)約寄件及查詢預(yù)約情況的需求,實現(xiàn)了一種基于微信小程序的快遞取寄系統(tǒng)。系統(tǒng)以云開發(fā)低代碼和云函數(shù)為載體,由后臺的云數(shù)據(jù)管理系統(tǒng)和前端面向用戶的小程序組成,便于廣大師生在保證個人信息安全的同時,使用小程序?qū)崿F(xiàn)一系列快遞服務(wù)需求。系統(tǒng)可以提高快遞站點的服務(wù)效率,節(jié)省人力物力財力,且成本低,易于維護管理,具有一定的實用價值。
關(guān)鍵詞:微信小程序;快遞服務(wù);云開發(fā);系統(tǒng)設(shè)計;管理系統(tǒng)
中圖分類號:TP311.56? ? ? 文獻標識碼:A
文章編號:1009-3044(2022)33-0051-04
1 引言
隨著我國數(shù)據(jù)物流領(lǐng)域的快速發(fā)展,大部分高校享受到了其帶來的智能與便利[1]。然而,中國大部分高校的快遞站點空間有限,人群流量大,容易出現(xiàn)漏件、錯件及丟件的現(xiàn)象,“如何解決人群擁堵”和“如何在最低成本的前提下提高取件效率”早已成為熱議的話題[2]。如何在保證服務(wù)質(zhì)量的前提下,高效地進行取件寄件也成為必須解決的問題之一,此時開發(fā)一款服務(wù)于師生的智能快遞系統(tǒng)便顯得尤為重要。大數(shù)據(jù)時代,萬物互聯(lián)與數(shù)字化已成為現(xiàn)實,取件服務(wù)也必將朝著智能化、數(shù)字化的方向進步,這對于快遞行業(yè)發(fā)展有著重要意義[3]。
2 系統(tǒng)設(shè)計概述
2.1 系統(tǒng)介紹
系統(tǒng)名為“遞幫幫快遞取寄系統(tǒng)”,由小程序部分和云數(shù)據(jù)管理系統(tǒng)(Cloud Data Management System,CDMS)組成。遞幫幫微信小程序含義為:讓廣大師生通過使用便捷的小程序功能便可以隨時隨地實現(xiàn)自助預(yù)約取件、預(yù)約寄件、查詢預(yù)約數(shù)據(jù)、管理預(yù)約記錄等功能。有助于填補“面向高校師生的快遞取寄系統(tǒng)”這一服務(wù)類小程序的空缺。
系統(tǒng)將與校內(nèi)菜鳥裹裹等快遞站點合作,通過云開發(fā)平臺為管理人員提供CDMS便于校內(nèi)快遞的統(tǒng)一管理,為師生提供微信小程序用于實現(xiàn)一系列快遞預(yù)約服務(wù)。
2.2 數(shù)據(jù)模型設(shè)計
系統(tǒng)數(shù)據(jù)庫所使用的關(guān)系模型如表1所示。
2.3 系統(tǒng)結(jié)構(gòu)設(shè)計
通過對系統(tǒng)的功能需求分析,得出遞幫幫小程序的系統(tǒng)結(jié)構(gòu)圖,如圖1所示。
1)登錄功能
無須設(shè)置賬號密碼,用戶點擊“使用微信登錄”完成登錄過程,后臺通過獲取專屬openid完成與CDMS的綁定,通過獲取用戶微信頭像與昵稱完成個性化設(shè)置。
2)預(yù)約功能
用戶可以通過主頁選擇取件或寄件,在詳情頁填寫并提交表單即可完成預(yù)約,后臺會收到信息,隨后安排快遞工作人員通過小程序方式及短信方式通知用戶,也可以自行查詢預(yù)約記錄。
取件記錄和寄件記錄分開存儲,用戶可以點擊相應(yīng)TAB欄切換以查詢訂單詳情。
3)個人中心及工具服務(wù)
除了主打的預(yù)約功能外,小程序內(nèi)置了使用手冊、數(shù)據(jù)分析、滿意調(diào)研、通知公告、我的位置、常用信息、文檔中心等工具服務(wù)版塊,用戶可以點擊底部TAB欄切換到個人中心查看使用。
2.4 具體功能設(shè)計
1)預(yù)約與查詢功能
提交表單后系統(tǒng)將通過核對數(shù)據(jù)類型、長度、枚舉等指標進行表單驗證。若核對未通過則無法提交。當(dāng)數(shù)據(jù)與約束條件核對無誤后,允許提交表單,系統(tǒng)彈出提示,并將訂單信息錄入CDMS。
提交查詢記錄請求后系統(tǒng)將查詢CDMS中與用戶openid一致的訂單數(shù)據(jù)。若未查詢到訂單,則顯示空白頁,用戶需要先提交訂單。當(dāng)查詢到訂單后,系統(tǒng)將通過用戶提交的查詢條件是“取件”或“寄件”將數(shù)據(jù)分開展示。小程序預(yù)約寄件及預(yù)約記錄頁如圖2~圖3所示。
2)工具與服務(wù)功能
系統(tǒng)內(nèi)置了十個用于提升用戶使用體驗的版塊,涉及表單驗證、記錄存在驗證及權(quán)限認證。
3)CDMS
系統(tǒng)內(nèi)置了CDMS用于后臺管理。快遞站點工作人員和客服人員通過使用賬號密碼登入CDMS,可對系統(tǒng)運行情況、預(yù)約訂單、滿意調(diào)研記錄和常用信息頁面進行數(shù)據(jù)查詢、修改等操作。超級管理員登入CDMS后,除了上述操作,還可對數(shù)據(jù)展示、通知公告、文檔中心等頁面進行數(shù)據(jù)修改、新建等操作。
管理員使用CDMS可以便捷管理訂單信息、更新信息等,在小程序端展示,保證信息的即時性和穩(wěn)定性。
2.5 系統(tǒng)創(chuàng)新設(shè)計
交互設(shè)計方面,登錄頁布局簡約,方便用戶直接登錄。主頁和個人中心頁呈網(wǎng)格狀排版,整齊排列,獨立圖標,美觀UI設(shè)計,指引明確,操作便捷,方便用戶尋找功能。功能頁設(shè)計簡約,內(nèi)容清晰,易于使用。小程序主頁面如圖4所示。
系統(tǒng)可以一鍵生成訂單信息,相較于傳統(tǒng)的手動數(shù)據(jù)庫模式錄入更加智能便捷。通過綁定openid的方式,用戶可以安全地訪問個人數(shù)據(jù),不會出現(xiàn)信息泄露的情況。
數(shù)據(jù)展示頁面使用可視化的方式內(nèi)置了26個數(shù)據(jù)窗口用于詳細且有價值的數(shù)據(jù)展示,用戶可以選擇相應(yīng)類別查看,也可以對可視化圖表進行點擊,提高互動感。數(shù)據(jù)展示頁面結(jié)構(gòu)圖如圖5所示。
3 重點功能實現(xiàn)
3.1 低代碼
系統(tǒng)使用騰訊云微搭低代碼進行開發(fā),低代碼是一種通過可視化進行應(yīng)用程序開發(fā)的方法,使用拖拽組件和模型驅(qū)動的邏輯來創(chuàng)建頁面和搭建應(yīng)用。低代碼開發(fā)平臺允許多名開發(fā)人員同步創(chuàng)建、編輯和操作應(yīng)用程序,花費的時間比傳統(tǒng)方式更少。
低代碼具有一定的靈活性,能夠解決開發(fā)周期較長這一問題,使用低代碼可以減少設(shè)計人員和開發(fā)人員間的溝通成本,降低出錯的概率,當(dāng)應(yīng)用程序出現(xiàn)錯誤時能夠快速地找到問題并解決。其次,低代碼能夠大幅度降低開發(fā)成本,具有跨平臺性,可以有效提高軟件開發(fā)的效率,并保證其邏輯質(zhì)量[4]。
3.2 云開發(fā)與云函數(shù)
系統(tǒng)使用了云開發(fā)和云函數(shù)服務(wù),用于進一步減輕開發(fā)難度,降低開發(fā)成本。
云開發(fā)采用Serverless架構(gòu),免去了小程序應(yīng)用構(gòu)建中煩瑣的服務(wù)器搭建和運維,使用靜態(tài)托管、命令行工具(Command Line Interface,CLI)、Flutter SDK等能力可以有效降低應(yīng)用開發(fā)的門檻[5]?;谠崎_發(fā)構(gòu)建的小程序,能夠彌補傳統(tǒng)開發(fā)模式的“效率低、耗時多、依賴后臺、不夠靈活”等問題,并更快響應(yīng)業(yè)務(wù)需求[6]。
云函數(shù)通過托管用戶代碼使用用戶配置的觸發(fā)器,根據(jù)觸發(fā)器的觸發(fā)事件自動執(zhí)行用戶應(yīng)用,提供Function as a Service類型服務(wù),用戶只需使用JS腳本語言編寫核心代碼并設(shè)置代碼運行的條件,即可彈性、安全地運行。騰訊云完全管理底層計算資源,包括服務(wù)器CPU、內(nèi)存、網(wǎng)絡(luò)和其他配置,且代碼按需運行,空閑時不收費。云函數(shù)起到邏輯編寫的重要作用,具體功能如下。
1)實現(xiàn)一鍵登錄功能
系統(tǒng)通過調(diào)用云函數(shù)前端API的app.utils函數(shù)內(nèi)的getWXContext方法獲取用戶的openid信息,用于存入CDMS進行后期身份核對。關(guān)鍵代碼如下:
CONST cloud = require('wx-server-sdk');
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV,}) //初始化環(huán)境
module.exports = ASYNC FUNCTION (params, context) {
CONST wxContext = cloud.getWXContext() //獲取openid
RETURN {
openid: wxContext.OPENID}
}
2)實現(xiàn)個性化昵稱與頭像展示功能
系統(tǒng)通過調(diào)用云函數(shù)前端API的wx.getUserProfile函數(shù)獲取用戶的微信昵稱和頭像,并賦值給全局變量,隨后通過對展示組件進行數(shù)據(jù)綁定實現(xiàn)個性化展示。關(guān)鍵代碼如下:
export default function ({event, data}) {
wx.getUserProfile({
desc: '用于完善用戶信息',
success: (res) => {
app.dataset.state.username = res.userInfo.nickName; //微信名稱賦值給全局變量
app.dataset.state.usericon = res.userInfo.avatarUrl; //用戶頭像賦值給全局變量
}})
}
3)實現(xiàn)表單信息驗證功能
系統(tǒng)通過使用微搭平臺提供的表單驗證方法,通過判斷約束條件核對信息,以實現(xiàn)表單信息驗證功能。關(guān)鍵代碼如下:
{
"eventName": "submit",
"type": "dataSource",
"handler": {
"name": "dataSource",
"module": "dataSource",
"params": {
"dataSourceName": "CP_89bhnri",
"methodName": "wedaCreate",
"options": {
"showToast": FALSE,
"showLoading": FALSE
},":params": "'create' === 'edit' ? event.detail : event.detail "
}
4)實現(xiàn)定位功能展示
系統(tǒng)通過調(diào)用騰訊地圖WebService API提供的一系列服務(wù)接口,使用getApiKey、coord2label、ipLocation等方法實現(xiàn)騰訊地圖服務(wù)接入[7]。根據(jù)微信小程序開發(fā)要求,系統(tǒng)還調(diào)取了wx.getLocation接口以獲取當(dāng)前的地理位置、速度。關(guān)鍵代碼如下:
{
"fit": "cover",
"home": true,
"iconTheme": "black",
"imgPreview": "",
"label": "",
"layout": "vertical",
"lazyLoad": "",
"locationRange": 100,
"locationType": 2,
"maskClosable": true,
"mode": "scaleToFill",
"requiredFlag": "",
"showMap": true,
"showMenuByLongpress": "",
"value": {
"address": "",
"geopoint": {
"type": "Point",
"coordinates": [,]}}
}
3.3 企業(yè)工作臺
系統(tǒng)內(nèi)置了基于企業(yè)工作臺,由數(shù)據(jù)模型搭建而成的遞幫幫_CDMS用于后臺數(shù)據(jù)訂單的管理,支持多角色、多用戶登錄。UI對多種登錄環(huán)境如電腦端和H5端進行適配,以保證頁面的完整性。功能設(shè)計明確,方便進行導(dǎo)出、修改、刪除等一系列操作,不需要額外的配置就能保證功能的正常使用,開發(fā)效率高,易維護,成本低廉[8]。H5端頁面如圖6所示。
4 結(jié)束語
基于微信小程序的快遞取寄系統(tǒng)利用低代碼完成了數(shù)據(jù)模型設(shè)計、邏輯設(shè)計和整體的UI設(shè)計。系統(tǒng)從實際需求出發(fā),幫助廣大師生提供快遞預(yù)約服務(wù)及各類輔助工具。區(qū)別于傳統(tǒng)的開發(fā)模式,系統(tǒng)使用云環(huán)境進行開發(fā),專注于系統(tǒng)本身的邏輯和UI創(chuàng)新,無須手動搭建服務(wù)器,具有更高效、更穩(wěn)定、易維護的特性。小程序和CDMS目前已成功上線,能夠穩(wěn)定、長時間的運行。
參考文獻:
[1] 齊晗.對高校快遞中心運營中若干問題優(yōu)化研究[J].物流工程與管理,2019,41(8):86,127-128.
[2] 劉海燕.高??爝f末端配送的問題與對策探究[J].營銷界,2021(33):54-55.
[3] 任曉翠.面向快遞終端的物流配送服務(wù)系統(tǒng)設(shè)計[J].自動化與儀器儀表,2020(1):101-104.
[4] Woo M.無/低代碼軟件開發(fā)的興起——無需經(jīng)驗?[J].工程(英文),2020(9):1083-1085.
[5] 黎雪,王芳.基于亞馬遜云的云開發(fā)課程設(shè)計[J].計算機與網(wǎng)絡(luò),2021,47(13):42-43.
[6] 陳健,羅曉云.通信云平臺系統(tǒng)研究與應(yīng)用[J].機電信息,2019(2):38-39.
[7] 宋鶯,謝小玲,余文婷,等.智慧校園微信小程序云服務(wù)開發(fā)與構(gòu)建[J].長江信息通信,2022,35(4):174-176.
[8] 徐宇帆,余秋明,柴政.基于微信小程序的校園參賽平臺的設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2022,18(7):63-66.
【通聯(lián)編輯:謝媛媛】