李瑞 崔亞碩 婁亞雄
摘? 要:為了解決智慧農業(yè)中農業(yè)機械、車載終端在安裝與維護過程中派工流程復雜、消息傳達不及時、不便于對安裝維護記錄進行追溯等問題,文章基于Java語言開發(fā)出一款實用的派工單系統(tǒng),實現了派工任務創(chuàng)建,工單推送、記錄追蹤等功能。實驗證明,本文設計的派工單系統(tǒng)可有效地解決智慧農業(yè)中的派工問題,極大提升了農業(yè)機械、車載終端安裝與維護效率,為企業(yè)的派工系統(tǒng)提供了參考。
關鍵詞:Java;uni-app;智慧農業(yè);派工單
中圖分類號:TP311.1? 文獻標識碼:A? 文章編號:2096-4706(2023)12-0028-05
A Smart Agricultural Dispatch List System Based on JAVA and UNI-APP
LI Rui, CUI Yashuo, LOU Yaxiong
(CETC Satellite Navigation Operation Service Co., Ltd., Shijiazhuang? 050200, China)
Abstract: In order to solve the problems of complex dispatching process, untimely message transmission and inconvenient tracing of installation and maintenance records in the installation and maintenance process of agricultural machinery and vehicle-mounted terminals in smart agriculture, this paper develops a practical dispatch list system based on Java language, which realizes the functions of dispatching task creation, dispatch list push, record tracking and so on. The experiment shows that the dispatch list system designed in this paper can effectively solve the dispatch problems in smart agriculture, greatly improve the efficiency of installation and maintenance of agricultural machinery and vehicle-mounted terminals, and provide a reference for the dispatch system of enterprises.
Keywords: Java; uni-app; smart agriculture; dispatch list
0? 引? 言
近年來,計算機技術的飛速發(fā)展給各個行業(yè)帶來了福音,信息化的普及極大的解放了人們的雙手,極大的提升了人工效率,達到降本增效的目的[1-3]。智慧農業(yè)領域有太多的農業(yè)機械、機器設備、車載終端的安裝與維護操作,傳統(tǒng)的派工單由管理員填寫紙質派工單[4],并提交相關部門審批后才能將任務下發(fā),不僅耗費了極大的人力成本和時間成本,而且派工任務往往不能第一時間到達相應的班組和人員,缺乏實時性[5,6]。當安裝與維護過程出現問題時,無法及時對派工記錄、人員、具體情況進行追溯,嚴重影響著班組的工作效率[7]。本文基于Java與uni-app開發(fā)出一款適用于智慧農業(yè)領域的派工單系統(tǒng),管理員登錄Web平臺創(chuàng)建任務、添加工單,選擇相應的班組或人員即可完成任務派發(fā),任務會通過極光消息推送至相應人員,相應班組或人員接收任務后可在第一時間對任務和工單詳情進行查看,完成工單后可提交工單的相應完成情況和電子手簽信息,系統(tǒng)通過定時任務自動審核工單完成情況,并完整保存派工單相關完成記錄,真正實現了任務的一鍵派發(fā)、及時處理、事后追溯,極大程度減少了相關人員的工作量,提高了工作效率。
1? 派工流程
通過對智慧農業(yè)領域的派工流程進行實地走訪、考察,整體派工流程如下:首先確定農戶的農機類型、作業(yè)類型、行政區(qū)劃、具體位置、派工類型以及農戶的聯系方式等信息,隨后由管理員登錄Web派工系統(tǒng)對相應人員信息、任務信息、工單信息等進行錄入,鑒于區(qū)域中的工單實際工作場景,每個任務中需要包含多個工單。工單與農戶進行綁定,完成工單后需要將該工單的實際安裝情況,包含若干張安裝效果圖與2張電子手簽通過APP進行上傳。任務可整體派發(fā)至相應地區(qū)的班組或安裝人員,相應地區(qū)的班組人員登錄派工APP后可在第一時間收到平臺發(fā)送的派工信息,點擊極光消息可跳轉至相應的工單界面,通過工單界面可查看該工單具體的派工信息,其中包含工單對應的農戶聯系方式、需要安裝的終端或器械類型、農機具體地址,農戶聯系方式等,班組安裝人員完成工單后提交相應派工信息至平臺,平臺會通過定時任務對工單情況進行初步審核,審核內容包含工單安裝效果圖、電子手簽信息,安裝器械類型、工單對應農戶信息等,審核完成后會自動將該工單狀態(tài)修改為已審核,并通過極光消息推送至相應的班組安裝人員。為了方便管理員與班組安裝人員查看相應的派工信息,管理員的派工信息中包含已分派任務,待審核任務、已完成任務,班組安裝人員的派工信息中需包含未完成工單,待審核工單以及已完成工單,點擊工單會通過事件軸的方式對工單的完整生命周期進行展示,包含工單初始創(chuàng)建、工單下發(fā)情況、工單完成情況,以及工單審核情況,如遇到審核失敗的情況,則會將將其提交給管理員再一次進行人工審核、確認,由管理員對問題工單進行描述,以便重新派發(fā),派工單整體業(yè)務流程圖如圖1所示。
2? 系統(tǒng)設計
2.1? 架構設計
派工單整體架構采用Model-View-Controller分層架構設計,由上到下分別為用戶層、系統(tǒng)層、訪問層、服務層和資源層,用戶層包含平臺管理員和代理商,管理員通過訪問Element UI派工平臺進行任務派發(fā),代理商通過uni-app UI進行派工任務接收,完成任務后對工單完成的效果圖和電子手簽等信息進行上傳,訪問層為Web平臺和APP提供接口數據訪問,服務層將實時派工信息存放至Redis緩存中,通過SpringBoot與mybatis-plus進行對數據庫數據進行操作后返回值訪問層的VO視圖模型與Entity實體中,最終封裝為JSON傳輸對象傳送至Web平臺與APP相關界面,資源層包含Postgresql集群服務器與靜態(tài)資源服務器,其中pg數據庫中存放派工相關業(yè)務信息,用戶信息,靜態(tài)資源存放相應的派工記錄,包含安裝效果圖、電子手簽等信息,為了方便后續(xù)擴展,數據庫中對安裝效果圖僅存儲其相對路徑,并且采用年、月、日、農戶手機號創(chuàng)建樹形文件夾,采用base64字符串對電子手簽信息進行存儲,方便派工單的追溯,為了提升工單接收效率,平臺接入了極光服務消息服務器,各服務間采用RabbitMQ中間件進行通信,極大的降低了系統(tǒng)的耦合性,系統(tǒng)整體架構如圖2所示。
2.2? 數據庫設計
根據派工單流程,設計4張表,分別為管理員表、班組與人員表、派工任務表、工單表,管理員表t_admin主要屬性為管理員用戶名、所屬區(qū)域、聯系方式、角色、權限等,管理員可創(chuàng)建派工任務,派工任務表t_dispatch_task主要屬性包含任務編碼(為了保證編碼的唯一性,采用系統(tǒng)當前時間yyyy-MM-dd作為前綴,表示任務創(chuàng)建日期,并用連接符連接6位隨機生成的大小寫字母與數字的組合)、任務名稱、任務需派發(fā)人員ID、派發(fā)時間、任務中包含的工單個數,任務狀態(tài)(初始派發(fā)、已提交、已完成),派工單任務表t_dispatch_task,每個派工任務可包含多個工單,工單表t_dispatch_sheet主要包含工單所屬任務ID,工單編碼(任務編號+工單序列),工單描述,安裝圖片絕對路徑(多張圖片路徑使用“,”分隔),電子手簽base64編碼,工單創(chuàng)建時間、工單更新時間、工單狀態(tài),班組與人員可以接收派工任務,班組與人員t_group_stuff表主要屬性包含人員編號、人員角色、所屬區(qū)域、聯系方式,人員狀態(tài)(是否APP在線,可優(yōu)先選擇在線人員進行派工),派工情況(反應該人員工單完成情況,包含完成單數,問題單數等信息),派工整體E-R圖如圖3所示。
2.3? 極光消息推送
為了解決班組人員接收派工消息不及時的情況,在系統(tǒng)中集成了極光消息推送,本系統(tǒng)采用的極光推送版本為3.4.3,首先在極光服務器上注冊派工APP,提交APP包名等信息,生成AppKey與AppSecret后在平臺與uni-app端同步配置相關參數,極光推送需要設置推送目標target,本系統(tǒng)中的target規(guī)則為班組人員登錄APP后使用當前手機系統(tǒng)唯一標識后12位+當前系統(tǒng)年月日時間戳組成,推送target存放在與之對應的班組與人員信息表中,當人員退出時會清空該推送target,為了解決多個班組人員采用同一賬號進行登錄的情況,target設置為疊加方式,中間采用逗號進行分隔,當任務與工單創(chuàng)建完成后,點擊任務派發(fā)時會將任務主題、任務內容等信息下發(fā)至相應登錄APP的人員手機上(支持多終端推送),相應人員通過點擊極光消息可跳轉至相應的派工界面,極光消息推送流程如圖4所示。
3? 編碼與實現
3.1? 任務派發(fā)
管理員登錄Web平臺可以新增派發(fā)任務,選擇相應的班組或人員,填寫相應的任務名稱、系統(tǒng)自動生成任務編碼并獲取相應班組人員聯系方式,點擊創(chuàng)建按鈕可完成任務創(chuàng)建,在相應任務操作欄中點擊創(chuàng)建工單,工單信息中包含農戶聯系方式、工單類型、工單具體內容、農機類型、農機照片、安裝位置照片、農機所在位置、預計完成時間等,點擊創(chuàng)建工單按鈕可完成工單創(chuàng)建,創(chuàng)建工單時任務列表如圖5所示。
3.2? 極光推送
為了解決派工單任務下達實時性問題,添加了極光推送功能,首先在后臺SpringBoot中集成了jpush-client 3.4.3相關jar包,隨后在極光服務器上對uni-app報名、應用名等進行了添加,通過配置AppKey與secret則可完成極光鏈路搭建,當uni-app相關用戶登錄時會獲取該手機的唯一標識序列,并同步設置到極光別名與數據庫中,當任務中的工單創(chuàng)建完成時由管理員在Web平臺點擊推送按鈕即可完成相關消息的推送,為了方便班組分配任務,班組接收任務后可以再次對相關的工單進行工單轉發(fā)、推送,并可設置多人推送。
3.3? 完成派工
相應班組人員完成工單后可通過uni-app進行工單信息的填報,其中包含3張安裝效果圖以及一張電子手簽,完成提交后,工單狀態(tài)更改為已提交,uni-app任務管理、電子手簽界面以及工單處理如圖6所示。
3.4? 工單審核
為了保證派工單的完成閉環(huán),設置了自動審核與人工審核兩種功能,系統(tǒng)通過定時任務自動對3張安裝圖、終端編號以及電子手簽進行審核,根據預先設定的模板審核其合法性,審核完成后會更改相應的狀態(tài)為已審核,管理員還可以審核通過系統(tǒng)自動審核過的工單,并可以對有問題的工單進行反饋,如此反復操作,實現派工單的閉環(huán)。
4? 結果分析
為了驗證該系統(tǒng)的有效性,選取了300位班組人員作為實驗對象,采用該文設計的派工系統(tǒng)進行任務接收,機械與終端安裝,并與原先使用傳統(tǒng)紙質派工的300名人員安裝情況進行了對比分析,將300位班組人員進行了分組,每組30人,共10組,任務接收時間,平均安裝時間,工單閉環(huán)時間如表1所示。
為了直觀對比原始派工與該系統(tǒng)的優(yōu)劣,使用matlab將表1中的數據進行了態(tài)勢模擬,其中圖7(a)代表原始派工系統(tǒng)與該系統(tǒng)的平均接收任務時間曲線,圖7(b)為平均安裝時間曲線,圖7(c)為整體派工任務閉環(huán)曲線,原始派工與該系統(tǒng)派工對比如圖7所示:
分析表1數據與圖7曲線可以得出,原始派工任務平均接收時間為1.799 h,使用該派工系統(tǒng)平均接收任務時間為0.079 h,原始派工任務機械與終端平均安裝時間為2.911 h,使用該派工系統(tǒng)平均安裝時間為2.048 h,原始派工任務任務平均閉環(huán)時間為4.754 h,使用該系統(tǒng)平均時間為僅為2.279 h,極大限度縮短了派工接收與閉環(huán)時間,提升了派工效率。
5? 結? 論
針對智慧農業(yè)領域中的派工流程復雜、實時性差、審核流程煩瑣等問題,該文設計出一款基于Java語言與uni-app的智慧農業(yè)派工單系統(tǒng),管理員通過Web平臺創(chuàng)建任務,添加工單完成任務下發(fā),為了提升班組人員接收派工任務的效率,系統(tǒng)接入了極光消息推送,當任務下達時,相應登錄派工APP的班組人員可以實時接收派工,完成工單時,可通過派工APP上傳相關信息以及安裝效果圖與電子手簽,平臺添加定時任務對工單完成情況進行自動審核,并可對問題工單進行識別,并提交人工審核,最后與傳統(tǒng)派工進行了對比實驗,本系統(tǒng)在智慧農業(yè)終端安裝與維護中投入使用,極大地簡化了班組人員的終端安裝工作,提升了派工效率,該文為派工系統(tǒng)提供了思路,具有一定的使用意義和參考價值。
參考文獻:
[1] 馮帆.智慧農業(yè)背景下物聯網技術在現代農業(yè)中的應用 [J].農家參謀,2022(21):25-27.
[2] 賀祚琛.智慧農業(yè)背景下農業(yè)4.0產業(yè)鏈模式及發(fā)展對策 [J].農業(yè)經濟,2022(11):20-22.
[3] 鄢靖豐,王佳樂.基于SpringBoot的微電子平臺設計與實現 [J].許昌學院學報,2022,41(5):94-98.
[4] 朱志慧,蔡潔.基于SpringBoot+Vue+Uni-app框架的校園失物招領系統(tǒng) [J].電子技術與軟件工程,2022(17):62-65.
[5] 施展,朱彥.基于Vue與SpringBoot框架的學生成績分析和弱項輔助系統(tǒng)設計 [J].信息技術與信息化,2022(8):127-131.
[6] 申琪玉,王如鈺,蘇昳.基于C#的派工單自動生成系統(tǒng)設計 [J].工程管理年刊,2019,9:15-22.
[7] 張小燕.極光集成之多樣化推送系統(tǒng)建設方案 [J].電子技術與軟件工程,2018(11):46.
作者簡介:李瑞(1990—),男,漢族,山西臨汾人,工程師,碩士,研究方向:計算機應用技術。