


摘要:設計并開發移動公司手機供應鏈PDA系統,利用PDA手持終端設備與條形碼識別等技術,實現手機出庫、運輸跟蹤、入庫、移庫、盤點等環節業務數據的實時采集。詳細介紹系統核心業務、系統組成、功能設計,闡述系統主要開發技術、開發工具、關鍵點。系統經數年使用,性能良好、運行穩定、操作便捷,極大地提高了手機供應鏈的管理效率。
關鍵詞:供應鏈;PDA;APP;批量上傳
中圖分類號:TP311
文獻標識碼:A
文章編號:1006-8228(2020)09-57-03
Design and development of PDA system for mobile phone supply chain
Dong Yifang
(Zlzejiang Technical Institute of EcononLies. Hangzhou, Zhejiang 310018. China )
Abstract: PDA system for mobile phone supply chain of mobile companies is developed. Using PDA terminal equipment andbarcode recognition technology, the real-time collection of business data in mobile phone supply chain is realized such as stock-out.transport tracking, stock-in, inventory transferring, and inventorv checking and so on. The core business, composition and functiondesign of the system are introduced in detail. The main development technologies, development tools and key points of the systemare described. After years of use. the system has good performance, runs steadily, and is easy to use, which greatly improves themanagement efficiency of the mobile phone supply chain.
Key words: supply chain; PDA; APP; batch upload
0引言
當今處移動互聯網時代,國內每年手機銷售量達數億臺,為移動公司提供大量商機。為提升移動公司手機供應鏈[1]管理效率,設計并開發了手機供應鏈PDA系統[2],采用PDA手持終端設備與條形碼掃描識別等技術,實現手機供應鏈各業務環節數據的實時采集,提高數據采集的便捷性與準確性。
1系統核心業務
系統核心業務包含供應鏈各作業環節[3],包括手機貨物的揀貨、出庫、交接、配送運輸、在途跟蹤、到貨確認、簽收入庫、上架、移庫、庫存盤點、庫存查詢、單據查洵等,如圖1所示。
2系統組成與主要功能
系統由服務端供應鏈子系統、PDA業務操作APP兩大部分組成,如圖2所示。
服務端供應鏈子系統:生成手機貨物出庫、配送、入庫等作業任務,向指定PDA發送任務,接收處理PDA實時上傳的各類業務數據,實現手機貨物與庫存數據的查詢等。
PDA業務操作APP:接收服務端發送的作業任務,進行入庫、出庫、運輸、盤點、移庫等業務操作,并向服務端發送操作結果數據,其主要功能包括:
2.1用戶登錄
啟動PDA手持設備,自動運行業務操作APP后,用戶輸入正確的登錄帳號與密碼才能進入PDA系統,以便跟蹤與審計用戶進行的各類操作。隨后服務端為不同用戶發送對應的作業任務。
2.2與服務端數據同步
PDA登錄后自動與服務端同步常用的基礎數據,包括當前時間、物流商、倉庫倉位、手機品牌、型號、顏色等數據,并更新保存到PDA本機數據庫,方便后續業務操作。比如當選擇手機品牌時可自動從PDA本機數據庫直接加載該品牌的全部手機型號、顏色等信息,無需每次從服務端讀取,腑陜業務操作速度。
2.3出庫
服務端供應鏈子系統下達出庫任務后,相應倉管員的PDA自動接收該出庫任務,出庫具體有以下環節。
(1)揀貨:根據接收到的揀貨單到指定倉位揀貨指定品牌、型號、出庫數量的手機。
(2)出庫掃描:用PDA掃描每臺出庫手機的串號,精確跟蹤每臺手機去向。
(3)出庫交接:把手機轉交給物流商之前,在PDA中為該出庫單輸入物流商編號,完成整個出庫流程。
2.4配送運輸與在途跟蹤
出庫完成后,服務端自動生成配送單,并把配送任務發送到相應物流商配送員的PDA中,配送員根據配送單的配送地址、客戶、配送到貨時間進行配送。為跟蹤配送員在途情況,PDA內置的GPS模塊不間斷采集地理位置數據并自動上傳服務端,實現配送手機實時在途跟蹤。
2.5入庫
服務端下達入庫任務后,相應倉管員的PDA自動接收該入庫任務,入庫具體有以下環節。
(1)到貨確認:根據接收到的入庫單核對確認收到的手機品牌、型號、數量。
(2)掃描簽收:用PDA掃描每臺入庫手機的串號,精確跟蹤每臺手機去向。
(3)上架:把入庫手機上架到指定倉位,用PDA掃描倉位號,完成整個入庫流程。
2.6移庫
服務端下達移庫任務后,相應倉管員的PDA自動接收該移庫任務,移庫分為兩類。
(1)整倉位移庫:用PDA掃描原倉位倉號、移入倉位倉號,完成整個倉位手機的移庫操作。
(2)零散移庫:用PDA掃描原倉位倉號、移入倉位倉號,同時還需掃描被移庫的每臺手機串號,完成零散移庫。
2.7盤點
服務端下達盤點任務后,相應倉管員的PDA自動接收該盤點任務,盤點分為兩類。
(1)數量盤點:在指定倉位盤點完手機后,在PDA中輸入實盤數量。
(2)手機串號盤點:在指定倉位使用PDA掃描盤點的手機串號,PDA自動計算實盤數量。
2.8庫存查詢
通過三種方式查詢倉位、數量等手機庫存信息。
(1)按手機產品查詢:選擇手機品牌、型號、顏色查詢手機庫存信息。
(2)按倉位查詢:選擇指定倉位查詢該倉位全部手機的庫存信息。
(3)按手機串號查詢:輸入手機串號查詢該手機所在倉位、手機品牌、型號等信息。
2.9單據查詢
根據單據類型、單據狀態、單據操作起止時間,查詢滿足條件的各類待處理單據與歷史單據。
2.10在線升級
當有新版本PDA程序發布時,PDA可自動檢測到新版本軟件并在線升級。
3系統運行平臺與主要開發技術
PDA業務操作APP通過Nginx代理服務器與服務端供應鏈子系統交互,以增加系統的安全性與靈活性。服務端應用服務器與數據庫服務器分開部署到不同的物理機,提升系統性能的同時,增加系統的可擴展性。系統運行平臺與部署如圖3所示。
服務端供應鏈子系統:服務端操作系統CentOS[4],應用服務器Tomcat[5],數據庫MySQL[6],編程語言Java[7],持久層框架MyBatis,Java Web開發框架Spring[8],表現層框架SpringMVC,集成開發工具Intellij IDEA,包管理工具Maven,源代碼管理工具Git[9],自動集成工具Jenkins[10],單元測試JUnit[11],日志Log4j。
PDA業務操作APP:PDA操作系統Android 7.0[12],集成開發工具Android Studio,編程語言Java,PDA本地數據庫SQLite,與服務端交互數據json解析庫Gson。
4PDA業務操作APP的關鍵點
4.1可用性
由于PDA手持設備屏幕小、按鍵少,業務操作APP須具備盡可能高的可用性。各操作界面確保風格一致,操作模式統一,作業任務一目了然,輸入文本框高亮顯示,光標自動跳轉與定位,必錄數據項醒目提示,手機品牌、型號、顏色等關聯數據聯動顯示,數量自動實時計算,操作結果友好提示,數據輸入錯誤時準確提示錯誤原因,與服務端長時間批量交換數據時顯示進度條,從而提高人機交互性,方便用戶操作。
4.2可靠性與性能
業務操作APP與服務端通過無線網絡交換數據,在網絡信號不佳的戶外或運輸途中可能發生無法聯網情況。為確保可靠性,應最大程度確保PDA仍能正常進行業務操作,并把操作結果暫存在本機數據庫中,待信號恢復后再自動把操作結果上傳到服務端。
經過一段時間的斷網操作,暫存在PDA端的操作結果數據可能達數十條甚至上百條。我們采用批量上傳數據的方式,以減少與服務端的交互次數。并確保上傳數據的格式盡可能精簡,去除冗余信息。
PDA批量上傳數據過程中,可能發生網絡信號中斷、PDA電池耗盡而自動關機、服務端宕機等情況,導致部分數據上傳成功而部分數據上傳失敗。為確保數據的完整性,服務端與PDA雙方協同控制,實現數據上傳的原子性,即當前批次有部分數據上傳失敗時,服務端則清空該批次成功上傳的數據,PDA端則重新上傳全部數據。只有當全部數據上傳成功后,服務端才把數據寫入后臺數據庫,PDA端把數據標記為已上傳,避免數據的重復上傳與漏傳。
5結束語
本文詳細介紹了手機出庫、運輸跟蹤、入庫、移庫、盤點等系統核心業務,系統組成與功能設計,闡述了系統的主要開發技術、工具與關鍵點。系統已投入使用數年,運行穩定、性能良好、操作便捷,極大提高了手機供應鏈業務數據采集的準確性與實時性,確保企業準確及時掌握手機庫存、物流、運輸等信息,節省了大量人力物力,提升了企業經濟效益。
參考文獻(References):
[1]娜達·桑德斯,大數據供應鏈:構建工業4.0時代智能物流新模式[M].中國人民大學出版社,2015.
[2]董一方.基于PDA的倉存數據采集系統的設計與實現[J].制造業自動化,2012.34(12):122-124
[3]羅鴻.ERP原理設計實施(第3版)[M],電子工業出版社,2005.
[4]Evi Nemeth. Garth Snyder.UNIX and Linux SystemAdminiStration Handbook[M].4nded.NeW Jersey:PrenticeHall.2010.
[5]Jason Brittain.Ian F.Darwin.Tomcat權威指南(第2版)[M].中國電力出版社,2009.
[6]Baron Schwartz,Peter Zaitsev著,寧海無譯,高性能MySQL(第3版)[M].電子工業出版社,2013.
[7]Joshua Bloch.EffectiveJava[M]2nded.Boston:Addison—Wesley Professional,2008.
[8]沃爾斯著.耿淵譯.Spring實戰(第4版)[M].人民郵電出版社,2016.
[9] Mike McQuaid. Git in Practice[M]. Greenwich: ManningPublications,2014.
[10] John Ferguson Smart. Jenkins: The Definitive Guide:Continuous Integration for the Masses[M].Sebastopol: O'Reilly Media,2011.
[11] Lasse Koskela. Effective Unit Testing: A guide for Javadevelopers[M]. Greenwich: Manning Publications,2013.
[12]郭霖. 第一行代碼 Android(第2版)[M].人民郵電出版社,2016.
收稿日期:2020-05-06
基金項目:浙江省教育廳2016年度科研項目“移動公司手機供應鏈PDA采集系統設計與開發”(Y201635762)
作者簡介:董一方(1977-),男,浙江紹興人,碩士,講師,主要研究方向:軟件工程、信息系統設計與開發。