張鼎仁 任 娟 韓英夫
(61287 部隊,四川 成都 610036)
在新冠疫情影響下,口罩成為人們?nèi)粘I钪斜夭豢扇钡娜沼闷?,如何分配和調(diào)度口罩成為人們面臨的一項難題,即使是同一地區(qū),不同社區(qū)和鄉(xiāng)鎮(zhèn)也存在需求不均衡的現(xiàn)象,手動通過填報表格匯總統(tǒng)計,這項工作本身耗時耗力,不同地區(qū)的表格格式還可能不盡相同,更會影響發(fā)放口罩的效率。因此,亟需開發(fā)一個能快速適應(yīng)各種需求、能夠快速構(gòu)建的口罩預(yù)約與配送系統(tǒng),引入的華為appcube開發(fā)平臺可安裝行業(yè)服務(wù),平臺自身擁有豐富的工具集,它是支持在云上開發(fā)、測試、部署、運維的aPaaS 平臺,針對不同水平的開發(fā)者,可采用對應(yīng)程度的開發(fā)模式,促進(jìn)了開發(fā)的高效應(yīng)用和實現(xiàn),降低了開發(fā)門檻。
第一步,注冊登錄。開發(fā)者通過注冊華為開發(fā)者中心進(jìn)入應(yīng)用開發(fā);第二步,創(chuàng)建應(yīng)用。首先定義命名空間,創(chuàng)建APP 及目錄并定義業(yè)務(wù)對象,之后組裝前端頁面,定義市政報表管理頁面,配置物業(yè)人員無需登錄即可預(yù)約和市政人員使用的菜單最后編譯發(fā)布應(yīng)用,其中組裝前端頁面包括定義市政人員管理頁面、定義市政人員修改頁面、定義物業(yè)人員預(yù)約頁面、定義“根據(jù)ID 查詢”邏輯和定義“新增與編輯”邏輯;第三步,應(yīng)用獨立部署并對外開放。獨立部署后的應(yīng)用包括三個方面,分別是物業(yè)人員掃碼預(yù)約、市政人員管理信息和市政人員報表統(tǒng)計。
通過Appcube 創(chuàng)建App 以及相應(yīng)目錄,App 名稱為MaskMgtApp,開發(fā)者支持多種數(shù)據(jù)格式的字段,這樣就能靈活應(yīng)對各種用戶需求,同時平臺可以通過增刪改自定義對象,同時每個字段需要定義是否需要索引、是否必需、創(chuàng)建人、最后修改人、最后修改時間。
對應(yīng)口罩預(yù)約的申請信息,我們同時需要自定義一個對象以表示預(yù)約信息,對象名稱為MaskMgtInfo,華為Appcube 會自動將這些信息寫入數(shù)據(jù)庫表結(jié)構(gòu),開發(fā)者無需再寫相關(guān)的數(shù)據(jù)庫增刪查改的接口,省去了大量數(shù)據(jù)交互的工作量,這種可視化建立表結(jié)構(gòu)的方法也為用戶更快的了解項目提供了基礎(chǔ)(口罩預(yù)約信息屬性表如表1 所示)。
表1 口罩預(yù)約信息屬性表
3.2.1 定義“新增與編輯”邏輯
針對業(yè)務(wù)場景的復(fù)雜內(nèi)容,Appcube 平臺提供了腳本Script,Appcube的腳本支持Javascript。加入腳本的具體方法是通過頁面的Logic 目錄添加腳本,創(chuàng)建一個名稱為EditMaskMgtInfo的腳本名稱。對于新創(chuàng)建的腳本默認(rèn)是鎖定的狀態(tài),如果要編譯并執(zhí)行該腳本,需要解鎖并輸入測試對應(yīng)的腳本。腳本代碼如下所示:
Appcube 平臺同時支持腳本驗證功能,可以通過編輯器測試新增邏輯能否正常執(zhí)行,測試的結(jié)果以json 字符串格式顯示。同理,可以采用同樣的方法定義“根據(jù)Id 查詢”邏輯,腳本名稱定義為queryMaskMgtDetail。
腳本代碼如下所示:
3.2.2 組裝頁面
Appcube 中的UI 構(gòu)建器支持對所需前端頁面進(jìn)行組合編排,并為相關(guān)的組件屬性,觸發(fā)器進(jìn)行配置,滿足用戶的業(yè)務(wù)需求,這種可視化的前端開發(fā)工具大大縮短了開發(fā)進(jìn)程,開發(fā)者無需掌握太多的Html、Css、Javascript 知識,只需進(jìn)行必要的屬性、事件配置,就可以快速生成所需要的前端頁面。
Appcube 報表關(guān)聯(lián)的對象需要設(shè)置為“允許報表使用”,定義的報表分為按預(yù)約日統(tǒng)計各小區(qū)預(yù)約量報表和按期望到貨日統(tǒng)計各小區(qū)待配發(fā)量報表。同時,為了方便物業(yè)人員的使用,能夠?qū)⑷藗兊目谡中枨髷?shù)量及時快速統(tǒng)計,我們將申請設(shè)置為通過二維碼掃碼預(yù)約的形式免登陸登記。
項目開發(fā)成功后,我們還可以導(dǎo)入對應(yīng)的資產(chǎn)包給其他用戶,以便其他用戶直接使用和測試該項目。這種軟件包式的管理方式大大提高了項目部署效率,免去了部署開發(fā)環(huán)境的重復(fù)操作,同時云端部署還省去了運維成本,提高了項目運行的穩(wěn)定性。
本文主要介紹了基于華為Appcube 平臺開發(fā)的口罩預(yù)約與配送系統(tǒng),它可以滿足新冠疫情防控期間口罩需求的統(tǒng)計匯總的現(xiàn)實需求,解決了基層繁雜的表格填報難題,對其他行業(yè)的數(shù)據(jù)統(tǒng)計和匯總同樣具有借鑒意義,更加值得學(xué)習(xí)的地方是該aPaaS 平臺云開發(fā)、云測試、云部署、云運維的特點。它不再依賴于復(fù)雜的現(xiàn)場網(wǎng)絡(luò)環(huán)境和硬件局限性,同時大大縮短了項目開發(fā)周期,提高了工作效率。同時在Appcube 平臺開發(fā)過程中也發(fā)現(xiàn)了一些問題,比如開發(fā)的舊模塊無法適配新版本的問題。在后續(xù)的學(xué)習(xí)和工作中,我將不斷充電學(xué)習(xí),開發(fā)具有高適配性、高安全性的口罩預(yù)約與配送系統(tǒng)。