目 ?錄
摘要
1 緒論
1.1 研究背景
1.2?研究意義
1.3研究方法
1.4開發技術
1.4.1 微信開發者工具
1.4.2 Node.JS框架
1.4.3 MySQL數據庫
1.5論文結構與章節安排
2系統分析
2.1 可行性分析
2.2 系統流程分析
2.2.1 用戶登錄流程
2.2.2?數據刪除流程
2.3?系統功能分析
2.3.1 功能性分析
2.3.2 非功能性分析
2.4用例分析
2.5本章小結
3?系統總體設計
3.1系統功能模塊設計
3.1.1整體功能模塊設計
3.1.2系統用戶模塊設計
3.1.3配送信管理模塊設計
3.2?數據庫設計
3.2.1 數據庫概念結構設計
3.2.2 數據庫邏輯結構設計
3.3本章小結
4?系統詳細設計與實現
4.1用戶端物流公司功能模塊
4.1.1 用戶注冊界面
4.1.2?用戶登錄界面
4.1.3?用戶端首頁界面
4.1.4我的界面
4.2 用戶端普通用戶功能模塊
4.2.1首頁界面
4.2.2物流資訊界面
4.2.3我的界面
4.3 管理端管理員功能模塊
4.3.1公共管理界面
4.3.2用戶管理界面
4.3.3資訊管理界面
4.3.4物流訂單管理界面
4.3.5物流信息管理界面
4.3.6配送信息管理界面
4.3.7評價反饋管理界面
5系統測試
5.1?系統測試目的
5.2系統測試用例
5.3?系統測試結果
6 結論
參考文獻
致 ?謝
隨著全球經濟一體化和信息技術的快速發展,物流業已經成為全球經濟發展的重要支柱和基礎設施。然而,傳統的物流模式在信息不對稱、流程不透明、效率低下以及成本高昂等方面存在諸多問題。為此,本文提出了一種基于微信小程序的智慧物流平臺。
本系統選擇Node.JS作為后端開發框架,微信小程序作為前端展示界面。Node.JS具有高性能、輕量級、易于擴展等特點,非常適合用于開發輕量級的、基于Web的應用程序。因此,Node.JS成為了開發智慧物流平臺的首選技術。微信小程序是一種無需下載安裝即可使用的新型應用形式,它通過微信這一廣大的社交平臺進行傳播和推廣。設計開發基于微信小程序的智慧物流平臺利用物聯網、云計算、大數據等先進技術,實現了物流全流程的信息化和智能化,從而能夠實時掌握物流信息,提高物流效率。
關鍵詞:智慧物流平臺;微信小程序;Node.JS
Abstract
With the rapid development of global economic integration and information technology, the logistics industry has become an important pillar and infrastructure for global economic development. However, traditional logistics models have many problems in terms of information asymmetry, opaque processes, low efficiency, and high costs. Therefore, this article proposes a smart logistics platform based on We?Chat mini programs.
This system selects Node JS serves as the backend development framework, and We?Chat mini programs serve as the frontend display interface. Node JS has the characteristics of high performance, lightweight, and easy scalability, making it very suitable for developing lightweight, web-based applications. Therefore, Node JS has become the preferred technology for developing smart logistics platforms. We?Chat mini program is a new form of application that can be used without downloading or installing. It is disseminated and promoted through We?Chat, a vast social platform. The design and development of a smart logistics platform based on We?Chat mini programs utilize advanced technologies such as the Internet of Things, cloud computing, and big data to achieve informationization and intelligence of the entire logistics process, enabling real-time grasp of logistics information and improving logistics efficiency.
Keywords:Smart logistics platform; We?Chat Mini Program; Node JS
1 緒論
其次,微信小程序作為一種基于微信的應用,因其輕量級、便捷性、用戶流量大、用戶粘性強等特點,受到了廣泛的關注和熱捧。微信小程序無需用戶下載安裝,可直接通過微信進入使用,具有節省流量、快速打開和使用、實現線上線下場景深度融合等優勢。這些特點使得微信小程序在物流行業中的應用具有極大的潛力和價值。
此外,Node.JS作為一個開源、跨平臺的JavaScript運行時環境,具有高效性、輕量級和事件驅動的特點,使得它在Web開發、后端服務開發等方面有著廣泛的應用。利用Node.JS開發智慧物流管理平臺,可以充分利用其強大的功能和性能,為物流企業提供一個高效、便捷的管理平臺。
隨著互聯網技術的飛速發展,物流行業在我國經濟體系中的地位日益凸顯。然而,傳統物流行業在服務效率、成本控制和用戶體驗方面存在諸多問題。研究基于微信小程序的智慧物流平臺具有重要的意義,其研究意義主要體現在以下幾個方面:
首先,微信小程序作為一種輕量級的應用形式,具有即用即走、無需下載安裝的特點,這使得用戶可以方便快捷地訪問和使用智慧物流平臺。通過微信小程序,用戶可以實時查詢物流信息、追蹤訂單狀態、管理收貨地址等,極大地提升了用戶體驗。
其次,可以提升物流行業的信息化和智能化水平。通過微信小程序構建智慧物流平臺,可以將物聯網、大數據、云計算等先進技術引入物流領域,實現物流信息的實時采集、處理與共享。這有助于打破物流信息壁壘,提升物流行業的透明度和可追溯性,推動物流行業的信息化和智能化進程。
再者,基于微信小程序的智慧物流平臺還具有廣泛的推廣和應用價值。微信小程序作為微信生態系統的一部分,擁有龐大的用戶基礎和社交屬性,這使得平臺能夠迅速擴大用戶覆蓋范圍,吸引更多的用戶參與和使用。此外,平臺還可以與其他微信功能和服務進行深度整合,為用戶提供更加便捷、高效的物流服務體驗。
最后,研究基于微信小程序的智慧物流平臺也有助于推動物流行業的創新和發展。通過深入研究平臺的設計、開發、運營等方面的問題和挑戰,可以為物流行業的數字化轉型和智能化升級提供有益的參考和借鑒。
- 需求分析:首先需要明確小程序的主要功能,例如用戶注冊與登錄、用戶管理、物流訂單管理、物流信息管理、配送信息管理等。
- 技術選型:選擇Node.JS作為后端框架,利用它的快速開發、易于維護的特性。前端則可以選擇微信小程序框架,利用它的跨平臺、易上手的特點。數據庫選擇MySQL來存儲和管理系統數據。
- 設計系統架構:根據需求分析,設計系統的整體架構,包括前后端交互方式、數據庫設計等。
- 開發環境搭建:安裝并配置Java開發環境,創建Node.JS項目,安裝并配置微信小程序開發工具。
- 編碼實現:后端開發使用Node.JS實現用戶管理、數據存儲、業務邏輯等功能。前端開發使用微信小程序開發框架,實現用戶界面和交互邏輯。
- 測試與調試:在開發過程中進行測試和調試,確保程序的正確性和穩定性。這包括單元測試、集成測試和用戶測試等。
本系統分為用戶端和管理端兩部分,用戶端采用微信小程序開發,實現用戶界面和功能。管理端采用Node.JS框架進行開發,處理客戶端請求,實現數據存儲和業務邏輯。采用MySQL數據可以存儲和管理系統數據。
微信開發者工具是一款由騰訊公司推出的集成開發環境(IDE),專門用于開發和調試微信小程序和公眾號。該工具提供了豐富的功能和工具,旨在簡化和加速開發過程。
微信開發者工具支持多種開發語言,包括HTML、CSS和JavaScript,使開發人員能夠輕松創建小程序或公眾號的前端界面和邏輯。它還提供了強大的代碼編輯器和調試工具,方便開發人員編寫、調試和測試代碼。
除了基本的開發功能,微信開發者工具還提供了一些高級功能,如實時預覽、真機調試、性能分析、代碼壓縮和發布等。開發人員可以在工具中即時查看小程序或公眾號的效果,并在真機上進行調試,以確保應用程序在不同平臺上的兼容性和穩定性。
此外,微信開發者工具還提供了豐富的插件和擴展,開發人員可以根據自己的需求選擇和安裝相應的插件,增強開發體驗和效率。微信開發者工具是一款功能強大的開發工具,為開發者提供了全面的開發和調試功能,幫助他們快速、高效地開發微信小程序和公眾號。通過使用微信開發者工具,開發人員可以更好地實現自己的創意,并為用戶提供優質的微信應用體驗。微信開發者工具已經成為了開發過程中不可或缺的一部分,并且正在不斷地改進和完善。
Node.JS是一個強大的服務器端JavaScript運行環境,它允許開發者使用JavaScript來編寫服務器端的代碼。它的主要特點是異步I/O、事件驅動和單線程,使得它在處理高并發、實時性要求高的應用以及構建可伸縮的網絡應用方面表現出色。
Node.JS的基本架構主要由Node Standard?Library、Node Bindings、V8和Libuv四部分組成。Node Standard Library是Node專門提供給開發人員使用的標準庫,包含諸如Http等模塊。Node Bindings則是溝通JavaScript和C++的橋梁,封裝了V8引擎和Libuv的細節,向上層提供基礎API服務。V8是Google開發的JavaScript引擎,為Node.JS提供了JavaScript運行環境。而Libuv則是專門為Node.JS開發的一個封裝庫,提供跨平臺的異步I/O能力。
Node.JS的特點使其非常適合構建實時應用程序,如聊天應用、協作工具、實時博客等。同時,Node.JS也適用于構建輕量級、高性能的Web應用程序,并提供了豐富的庫和框架,如Express.JS,可以快速開發Web服務器和API。此外,Node.JS還提供了強大的命令行工具開發能力,使開發者能夠創建自定義命令行工具和腳本,用于自動化任務、數據處理、工作流程等。
總的來說,Node.JS框架是一個高效、輕量級且高度可伸縮的服務器端JavaScript運行環境,為開發者提供了強大的工具和豐富的資源,使其能夠構建出各種類型的高性能應用。
MySQL?經過多次的更新,功能層面已經非常的豐富和完善了,從MySQL4版本到5版本進行了比較大的更新,在商業的實際使用中取得了很好的實際應用效果。最新版本的MySQL支持對信息的壓縮,同時還能進行加密能更好的滿足對信息安全性的需求。同時經過系統的多次更新,數據庫自身的鏡像功能也得到了很大的增強,運行的流暢度和易用性方面有了不小的進步,驅動的使用和創建也更加的高效快捷。最大的變動還是進行了空間信息的顯示優化,能更加方便的在應用地圖上進行坐標的標注和運算。強大的備份功能也保證了用戶使用的過程會更加安心,同時支持的Office特性還支持用戶的自行安裝和使用。在信息的顯示形式上也進行了不小的更新,增加了兩個非常使用的顯示區,一個是信息區,對表格和文字進行了分類處理,界面的顯示更加清爽和具體。第二是儀表的信息控件,能在儀表信息區進行信息的顯示,同時還能進行多個信息的比對,為用戶的實際使用帶來了很大的便捷。
論文將分層次進行編排,除去論文摘要致謝文獻參考部分,論文主要架構如下:
第一章:緒論。緒論,此章節對所設計和實現的系統的研究背景、研究意義、研究方法及開發技術進行詳細的論述以及說明,同時進行了論文整體框架的結構的簡要介紹。
第二章:系統分析。此章節所做的主要的工作是對系統進行了技術、經濟等方面可行性的分析;對系統實行了總體功能的需求、用例分析。
第三章:系統總體設計。主要是對系統功能結構進行設計,并對系統數據庫的概念結構設計進行了分析。
第四章:系統詳細設計與實現。根據系統功能的劃分,分別的對系統所需要實現的用戶端功能和管理端功能進行了分析和說明。
第五章:系統測試。主要介紹了系統測試目的和對系統的部分功能界面進行測試并對測試結果作出總結。
第六章:總結。主要對系統的設計工作進行總結。
2系統分析
系統分析是開發一個項目的先決條件,通過系統分析可以很好的了解系統的主體用戶的基本需求情況,同時這也是項目的開發的原因。進而對系統開發進行可行性分析,通常包括技術可行性、經濟可行性等,可行性分析同時也是從項目整體角度進行的分析。然后就是對項目的具體需求進行分析,分析的手段一般都是通過用戶的用例圖來實現。下面是詳細的介紹。
Node.JS以其高效的異步I/O處理、輕量級的特性和廣泛的支持,在服務器端開發中被廣泛使用。它與微信小程序之間的數據交互流暢,能夠通過API進行高效的數據傳遞和處理。此外,微信小程序本身具備便捷的用戶交互體驗和良好的用戶基礎。因此,從技術層面分析是可行的。
2. 經濟可行性
基于微信小程序的智慧物流平臺相比傳統的管理方式,可以大大減少人力和開發成本。首先,微信小程序的開發和運營成本相對較低,不需要額外的安裝和維護費用。其次,Node.JS作為開源技術,可以免費使用,而且社區支持廣泛,可以降低技術門檻和成本。因此,從經濟角度分析是可行的。
3. 操作可行性
微信小程序易于推廣和使用,用戶無需額外下載安裝,只需通過微信即可使用。同時系統界面設計簡潔明了,易于操作。此外,系統支持多種設備訪問,包括手機、平板等,方便用戶隨時隨地使用。因此,從操作角度分析是可行的。
4. 社會可行性
智慧物流平臺能夠提高物流效率、降低物流成本,為社會帶來經濟效益。同時,通過優化物流服務,提升用戶體驗,也有助于提高社會整體滿意度。因此,從社會角度分析是可行的。
用戶通過登錄才能訪問系統及權限以內的功能,對此將實現各種應用及管理等功能,用戶登錄流程圖如下圖2-1所示。
圖2-1 ?用戶登錄流程圖
如果系統里面存在一些沒用的數據,相關的管理人員還可以對這些數據進行刪除,數據刪除時流程圖如下圖2-2所示。
圖2-2??數據刪除流程圖
按照基于微信小程序的智慧物流平臺的功能模塊,主要包括用戶端(物流公司、普通用戶)和管理端(管理員)這兩大功能模塊。
- 用戶端物流公司功能
- 注冊登錄:物流公司可以通過注冊成為系統用戶,注冊后可以用賬號密碼登錄系統。
- 首頁:小程序首頁界面是用戶訪問系統的入口頁面,用戶可以查看首頁展示的輪播圖、網站公告、物流資訊等信息。
- 物流資訊:用戶點擊首頁下方的“物流資訊”進入頁面可以查看物流資訊列表中某個資訊詳情并可以進行點贊、收藏和發表評論操作。
- 我的:用戶點擊首頁右下角“我的”進入頁面可以查看和管理基本信息、物流訂單、物流信息、配送信息、評價反饋和收藏信息。用戶可以查詢和重置物流訂單、配送信息、評價反饋信息;可以對物流信息進行增刪改查操作;可以查看或刪除收藏列表信息。點擊“退出登錄”即可退出系統。
- 用戶端普通用戶功能
- 注冊登錄:新用戶可以通過注冊成為系統用戶,注冊后可以用賬號密碼登錄。
- 首頁:小程序首頁界面是用戶訪問系統的入口頁面,用戶可以查看首頁展示的輪播圖、網站公告、物流訂單和物流資訊等信息。用戶點擊“物流訂單”進入頁面填寫物品名稱、物品數量、物品體積等信息后點擊“提交”即可完成物流訂單信息的提交。
- 物流資訊:用戶點擊首頁下方的“物流資訊”進入頁面可以查看物流資訊列表中某個資訊詳情并可以進行點贊、收藏和發表評論操作。
- 我的:用戶點擊首頁右下角“我的”進入頁面可以查看和管理基本信息、物流訂單、物流信息、配送信息、評價反饋和收藏信息。用戶可以查詢和重置物流訂單、物流信息、配送信息;可以對評價反饋信息進行增刪改查操作;可以查看或刪除收藏列表信息;點擊“退出”即可退出系統的登錄。
- 管理端管理員功能
- 登錄:管理員的賬號和密碼是事先在數據庫中設定好的,管理員可以通過在后臺輸入正確的賬號和密碼進行登錄。
- 主頁:管理員可以查看主頁展示的物流訂單統計圖信息。
- 公共管理:在“公共管理”菜單管理員對輪播圖和公告進行管控,可以對輪播圖、公告信息進行增刪改查操作。
- 用戶管理:管理員可以查看系統用戶(管理員、普通用戶、物流公司)列表中某個用戶的詳情,可以對用戶信息進行增刪改查操作。
- 資訊管理:在“資訊管理”菜單管理員對物流資訊和資訊分類進行管控,可以對物流資訊、資訊分類信息進行增刪改查操作。
- 物流訂單:管理員可以查看物流訂單列表中某個訂單的詳情和并可以提交物流跟蹤信息,可以對物流訂單信息進行增刪改查操作。
- 物流信息:管理員可以查看物流信息列表中某個訂單的物流信息詳情并可以提交配送信息,可以對物流訂單信息進行增刪改查操作。
- 配送信息:管理員可以查看配送信息列表中某個訂單的配送信息詳情和評價反饋信息,可以對配送信息進行增刪改查操作。
- 評價反饋:管理員可以查看評價反饋列表中某個訂單的評價反饋詳情,可以對評價反饋信息進行增刪改查操作。
- 個人信息:管理員點擊系統右上角的“個人信息”可以修改個人頭像、昵稱等基本信息。
- 修改密碼:管理員點擊系統右上角的“修改密碼”可以修改登錄密碼,修改后可以用新密碼登錄系統。
- 退出:管理員點擊“退出”即可退出系統的登錄。
基于微信小程序的智慧物流平臺的非功能性需求比如系統的安全性怎么樣,可靠性怎么樣,性能怎么樣,可拓展性怎么樣等。具體可以表示在如下3-1表格中:
表2-1基于微信小程序的智慧物流平臺非功能需求表
安全性 | 主要指基于微信小程序的智慧物流平臺數據庫的安裝,數據庫的使用和密碼的設定必須合乎規范。 |
可靠性 | 可靠性是指基于微信小程序的智慧物流平臺能夠安裝用戶的指示進行操作,經過測試,可靠性90%以上。 |
性能 | 性能是影響基于微信小程序的智慧物流平臺占據市場的必要條件,所以性能最好要佳才好。 |
可擴展性 | 比如數據庫預留多個屬性,比如接口的使用等確保了系統的非功能性需求。 |
易用性 | 用戶只要跟著基于微信小程序的智慧物流平臺的頁面展示內容進行操作,就可以了。 |
可維護性 | 基于微信小程序的智慧物流平臺開發的可維護性是非常重要的,經過測試,可維護性沒有問題 |
通過2.3功能的分析,得出了基于微信小程序的智慧物流平臺的用例圖:
用戶端物流公用例圖如下圖2-3所示。
圖2-3?物流公司用例圖
用戶端普通用戶用例圖如下圖2-4所示。
圖2-4?普通用戶用例圖
管理端管理員用例圖如下圖2-5所示。
本章主要通過對基于微信小程序的智慧物流平臺的可行性分析、流程分析、功能需求分析、系統用例分析,確定整個系統要實現的功能。同時也為系統的代碼實現和測試提供了標準。
本章主要討論的內容包括基于微信小程序的智慧物流平臺的功能模塊設計、數據庫系統設計。
在上一章節中主要對系統的功能性需求和非功能性需求進行分析,并且根據需求分析了本系統中的用例。那么接下來就要開始對本系統的主要功能和數據庫開始進行設計。根據前面章節的需求分析得出,其總體設計模塊圖如圖3-1所示。
圖3-1?系統功能模塊圖
用戶模塊是系統中一個重要的功能模塊,它涉及用戶的注冊、登錄、個人信息管理等操作。在用戶模塊設計中,我們將定義用戶數據的結構和屬性,包括用戶名、密碼、郵箱等。同時,還需要實現用戶注冊、登錄、修改密碼等功能,并對用戶輸入進行驗證和處理。用戶模塊的結構圖如下圖3-2所示:
圖3-2用戶模塊結構圖
配送信息管理模塊是本系統中的重要功能之一。該模塊的設計旨在提供對物流訂單的配送信息的發布、編輯、刪除和查看等管理功能,以便及時、準確地向系統用戶發布相關物流訂單的配送信息。其模塊功能結構,具體的結構圖如下3-3所示:
圖3-3配送信息管理模塊結構圖
數據庫設計一般包括需求分析、概念模型設計、數據庫表建立三大過程,其中需求分析前面章節已經闡述,概念模型設計有概念模型和邏輯結構設計兩部分。
數據庫概念結構設計主要涉及數據庫的實體和實體之間的關系。通過實體關系模型或者其他適當的模型,我們將定義系統中涉及的各個實體以及它們之間的聯系。下面是整個基于微信小程序的智慧物流平臺中主要的數據庫表總E-R實體關系圖。
圖3-4?系統總E-R關系圖
通過上一小節中基于微信小程序的智慧物流平臺中總E-R關系圖上得出一共需要創建很多個數據表。在此主要羅列幾個主要的數據庫表結構設計。
表access_token (登陸訪問時長)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | token_id | int | 10 | 0 | N | Y | 臨時訪問牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 臨時訪問牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大壽命:默認2小時 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用戶編號: |
表article (文章:用于內容管理系統的文章)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 標題:[0,125]用于文章和html的title標簽中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分類:[0,1000]用來搜索指定類型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 點擊數:[0,1000000000]訪問這篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 點贊數 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
8 | source | varchar | 255 | 0 | Y | N | 來源:[0,255]文章的出處 | |
9 | url | varchar | 255 | 0 | Y | N | 來源地址:[0,255]用于跳轉到發布該文章的網站 | |
10 | tag | varchar | 255 | 0 | Y | N | 標簽:[0,255]用于標注文章所屬相關內容,多個標簽用空格隔開 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主體內容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面圖 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
表article_type (文章分類)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分類ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 顯示順序:[0,1000]決定分類顯示的先后順序 |
3 | name | varchar | 16 | 0 | N | N | 分類名稱:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上級分類ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述該分類的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分類圖標: | |
7 | url | varchar | 255 | 0 | Y | N | 外鏈地址:[0,255]如果該分類是跳轉到其他網站的情況下,就在該URL上設置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
表auth (用戶權限管理)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | auth_id | int | 10 | 0 | N | Y | 授權ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用戶組: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模塊名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 頁面標題: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路徑: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳轉方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可刪除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查詢字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表導航名稱: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表導航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
表collect (收藏)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 來源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 來源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 來源ID: |
6 | title | varchar | 255 | 0 | Y | N | 標題: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
表comment (評論)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | comment_id | int | 10 | 0 | N | Y | 評論ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 評論人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回復評論ID:空為0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 內容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵稱: | |
6 | avatar | varchar | 255 | 0 | Y | N | 頭像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
9 | source_table | varchar | 255 | 0 | Y | N | 來源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 來源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 來源ID: |
表delivery_information (配送信息)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | delivery_information_id | int | 10 | 0 | N | Y | 配送信息ID | |
2 | ordering_users | int | 10 | 0 | Y | N | 0 | 下單用戶 |
3 | order_number | varchar | 64 | 0 | Y | N | 訂單編號 | |
4 | item_name | varchar | 64 | 0 | Y | N | 物品名稱 | |
5 | quantity_of_items | varchar | 64 | 0 | Y | N | 物品數量 | |
6 | item_volume | varchar | 64 | 0 | Y | N | 物品體積 | |
7 | name_of_sender | varchar | 64 | 0 | Y | N | 寄件人姓名 | |
8 | sending_phone_number | varchar | 64 | 0 | Y | N | 寄件電話 | |
9 | consignee_name | varchar | 64 | 0 | Y | N | 收貨人姓名 | |
10 | delivery_phone_number | varchar | 64 | 0 | Y | N | 收貨電話 | |
11 | receiving_address | varchar | 64 | 0 | Y | N | 收貨地址 | |
12 | logistics_company | int | 10 | 0 | Y | N | 0 | 物流公司 |
13 | logistics_tracking_number | varchar | 64 | 0 | Y | N | 物流單號 | |
14 | delivery_personnel | varchar | 64 | 0 | Y | N | 配送人員 | |
15 | delivery_date | date | 10 | 0 | Y | N | 配送日期 | |
16 | delivery_progress | varchar | 64 | 0 | Y | N | 配送進度 | |
17 | delivery_location | varchar | 64 | 0 | Y | N | 配送位置 | |
18 | delivery_time | datetime | 19 | 0 | Y | N | 送達時間 | |
19 | delivery_situation | text | 65535 | 0 | Y | N | 配送情況 | |
20 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間 |
21 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表evaluation_feedback (評價反饋)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | evaluation_feedback_id | int | 10 | 0 | N | Y | 評價反饋ID | |
2 | ordering_users | int | 10 | 0 | Y | N | 0 | 下單用戶 |
3 | order_number | varchar | 64 | 0 | Y | N | 訂單編號 | |
4 | item_name | varchar | 64 | 0 | Y | N | 物品名稱 | |
5 | quantity_of_items | varchar | 64 | 0 | Y | N | 物品數量 | |
6 | item_volume | varchar | 64 | 0 | Y | N | 物品體積 | |
7 | name_of_sender | varchar | 64 | 0 | Y | N | 寄件人姓名 | |
8 | sending_phone_number | varchar | 64 | 0 | Y | N | 寄件電話 | |
9 | consignee_name | varchar | 64 | 0 | Y | N | 收貨人姓名 | |
10 | delivery_phone_number | varchar | 64 | 0 | Y | N | 收貨電話 | |
11 | receiving_address | varchar | 64 | 0 | Y | N | 收貨地址 | |
12 | logistics_company | int | 10 | 0 | Y | N | 0 | 物流公司 |
13 | logistics_tracking_number | varchar | 64 | 0 | Y | N | 物流單號 | |
14 | delivery_personnel | varchar | 64 | 0 | Y | N | 配送人員 | |
15 | delivery_time | datetime | 19 | 0 | Y | N | 送達時間 | |
16 | evaluation_score | varchar | 64 | 0 | Y | N | 評價分數 | |
17 | evaluation_content | text | 65535 | 0 | Y | N | 評價內容 | |
18 | feedback_content | text | 65535 | 0 | Y | N | 反饋內容 | |
19 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間 |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表hits (用戶點擊)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | hits_id | int | 10 | 0 | N | Y | 點贊ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 點贊人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
5 | source_table | varchar | 255 | 0 | Y | N | 來源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 來源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 來源ID: |
表logistics_company (物流公司)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | logistics_company_id | int | 10 | 0 | N | Y | 物流公司ID | |
2 | company_name | varchar | 64 | 0 | Y | N | 公司名稱 | |
3 | company_number | varchar | 64 | 0 | N | N | 公司編號 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通過 | 審核狀態 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用戶ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表logistics_information (物流信息)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | logistics_information_id | int | 10 | 0 | N | Y | 物流信息ID | |
2 | ordering_users | int | 10 | 0 | Y | N | 0 | 下單用戶 |
3 | order_number | varchar | 64 | 0 | Y | N | 訂單編號 | |
4 | item_name | varchar | 64 | 0 | Y | N | 物品名稱 | |
5 | quantity_of_items | varchar | 64 | 0 | Y | N | 物品數量 | |
6 | item_volume | varchar | 64 | 0 | Y | N | 物品體積 | |
7 | name_of_sender | varchar | 64 | 0 | Y | N | 寄件人姓名 | |
8 | sending_phone_number | varchar | 64 | 0 | Y | N | 寄件電話 | |
9 | consignee_name | varchar | 64 | 0 | Y | N | 收貨人姓名 | |
10 | delivery_phone_number | varchar | 64 | 0 | Y | N | 收貨電話 | |
11 | receiving_address | varchar | 64 | 0 | Y | N | 收貨地址 | |
12 | logistics_company | int | 10 | 0 | Y | N | 0 | 物流公司 |
13 | order_date | date | 10 | 0 | Y | N | 下單日期 | |
14 | transport_date | date | 10 | 0 | Y | N | 運輸日期 | |
15 | logistics_tracking_number | varchar | 64 | 0 | Y | N | 物流單號 | |
16 | current_location | varchar | 64 | 0 | Y | N | 當前位置 | |
17 | transportation_situation | text | 65535 | 0 | Y | N | 運輸情況 | |
18 | transportation_trajectory | text | 65535 | 0 | Y | N | 運輸軌跡 | |
19 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間 |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表logistics_orders (物流訂單)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | logistics_orders_id | int | 10 | 0 | N | Y | 物流訂單ID | |
2 | ordering_users | int | 10 | 0 | Y | N | 0 | 下單用戶 |
3 | order_number | varchar | 64 | 0 | Y | N | 訂單編號 | |
4 | item_name | varchar | 64 | 0 | Y | N | 物品名稱 | |
5 | quantity_of_items | varchar | 64 | 0 | Y | N | 物品數量 | |
6 | item_volume | varchar | 64 | 0 | Y | N | 物品體積 | |
7 | name_of_sender | varchar | 64 | 0 | Y | N | 寄件人姓名 | |
8 | sending_phone_number | varchar | 64 | 0 | Y | N | 寄件電話 | |
9 | consignee_name | varchar | 64 | 0 | Y | N | 收貨人姓名 | |
10 | delivery_phone_number | varchar | 64 | 0 | Y | N | 收貨電話 | |
11 | receiving_address | varchar | 64 | 0 | Y | N | 收貨地址 | |
12 | logistics_company | int | 10 | 0 | Y | N | 0 | 物流公司 |
13 | order_date | date | 10 | 0 | Y | N | 下單日期 | |
14 | order_remarks | text | 65535 | 0 | Y | N | 訂單備注 | |
15 | order_status | varchar | 64 | 0 | Y | N | 訂單狀態 | |
16 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間 |
17 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表praise (點贊)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | praise_id | int | 10 | 0 | N | Y | 點贊ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 點贊人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間: |
5 | source_table | varchar | 255 | 0 | Y | N | 來源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 來源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 來源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 點贊狀態:1為點贊,0已取消 |
表regular_users (普通用戶)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | regular_users_id | int | 10 | 0 | N | Y | 普通用戶ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用戶姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用戶性別 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通過 | 審核狀態 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用戶ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 創建時間 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新時間 |
表upload (文件上傳)
編號 | 名稱 | 數據類型 | 長度 | 小數位 | 允許空值 | 主鍵 | 默認值 | 說明 |
1 | upload_id | int | 10 | 0 | N | Y | 上傳ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 訪問路徑 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路徑 | |
5 | display | varchar | 255 | 0 | Y | N | 顯示順序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父級ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夾 | |
8 | type | varchar | 32 | 0 | Y | N | 文件類型 |
整個基于微信小程序的智慧物流平臺的需求分析主要對系統功能模塊的設計進行分析,通過建立E-R模型和數據庫邏輯系統設計完成了數據庫系統設計。
4?系統詳細設計與實現
圖4-1?用戶注冊界面圖
注冊的代碼如下:
Register.prototype.index = async function(ctx) {
var group_list = await $.services["user_group"].get_list({}, Object.assign({}, this.config));
return await ctx.render(this.config.tpl + "index.html", {
group_list
});
};
Register.prototype.api = async function(ctx) {
var user = $.services.user;
var body = ctx.request.body;
var username = body.username;
var obj = await user.get_obj({
username
});
if (obj) {
return {
error: {
code: 70000,
message: "賬戶名已存在",
},
};
} else {
var password = md5(body.password);
var nickname = body.nickname;
var user_group = body.user_group;
var email = body.email;
var email_state= body.hasOwnProperty('email_state') ? body.email_state : 0;
var phone = body.phone;
var phone_state= body.hasOwnProperty('phone_state') ? body.phone_state : 0;
var avatar = body.avatar;
var bl_reg = await user.add({
username,
password,
nickname,
user_group,
email,
email_state,
phone,
phone_state,
avatar
});
if (bl_reg) {
return {
result: "注冊成功"
};
} else {
return {
error: {
code: 70000,
message: "注冊失敗",
},
};
}
}
};
用戶登錄界面用于已注冊用戶進行賬號登錄,用戶需要輸入正確的用戶名和密碼才能成功登錄系統。登錄界面應對用戶的輸入進行驗證,并提供密碼找回或重新注冊的選項。其界面圖如下圖4-2所示。
圖4-2?用戶登錄界面圖
登錄的代碼如下:
const md5 = require("md5");
var Controller = require("../core/controller.js");
class Login extends Controller {
constructor(config) {
super(
Object.assign({
tpl: "./login/",
service: "user",
},
config
)
);
}
}
Login.prototype.api = async function(ctx) {
var body = ctx.request.body;
var obj = await $.services["user"].get_obj({
username: body.username
},{like:false});
if (obj) {
var group = await $.services["user_group"].get_obj({
name:obj.user_group
})
if (group){
if (group.name!=="管理員"){
var sql = "select examine_state from "+ group.source_table +" WHERE user_id = " + obj.user_id;
var userExamine = await $.mysql.run(sql);
if (userExamine && userExamine.length > 0 && userExamine[0].examine_state!=="已通過"){
return {
error: {
code: 70000,
message: "該用戶審核未通過"
},
};
}
}
if (obj.state!==1){
return {
error: {
code: 70000,
message: "用戶非可用狀態,不能登錄"
},
};
}
var password = md5(body.password);
if (password === obj.password) {
ctx.session.user = obj;
var date = Date.parse(new Date());
var token = md5(obj.user_id + "_" + date);
await $.services["access_token"].add({
token,
info: JSON.stringify(obj),
user_id:obj.user_id
});
obj.token = token;
return {
result: {obj}
};
} else {
return {
error: {
code: 70000,
message: "密碼錯誤"
},
};
}
}else {
return {
error: {
code: 70000,
message: "用戶組不存在"
},
};
}
} else {
return {
error: {
code: 70000,
message: "賬戶不存在"
}
};
}
};
??
小程序首頁界面是用戶訪問系統的入口頁面,它展示系統的主要功能和特色。用戶可以查看首頁展示的輪播圖、網站公告、物流資訊等信息。用戶可以左右滑動查看輪播圖信息;點擊“網站公告”進入頁面可以查看列表中某個網站公告的詳細信息。其界面展示如下圖4-3所示。
圖4-3?用戶端首頁界面圖
用戶點擊首頁右下角“我的”進入頁面可以查看和管理基本信息、物流訂單、物流信息、配送信息、評價反饋和收藏信息。點擊“基本信息”可進入頁面可以修改個人資料和登錄密碼,密碼修改后可以用新密碼登錄。點擊“物流訂單”進入頁面可以查看物流訂單列表中某個訂單的物流信息詳情并提交物流跟蹤信息。可以查詢和重置物流訂單、配送信息、評價反饋信息;可以對物流信息進行增刪改查操作;可以查看或刪除收藏列表信息。其界面展示如下圖4-4所示。
圖4-4我的界面圖
添加的代碼如下:
Controller.prototype.add = async function(ctx) {
var result = await this.service.add(ctx.request.body, this.config);
if (this.service.error) {
return {
error: this.service.error,
};
}
return {
result,
};
};
小程序首頁界面是用戶訪問系統的入口頁面,它展示系統的主要功能和特色。用戶可以查看首頁展示的輪播圖、網站公告、物流訂單和物流資訊等信息。用戶可以左右滑動查看輪播圖信息;點擊“物流訂單”進入頁面填寫物品名稱、物品數量、物品體積等信息后點擊“提交”即可完成物流訂單信息的提交。其界面展示如下圖4-5所示。
圖4-5首頁界面圖
用戶點擊首頁下方的“物流資訊”進入頁面可以查看物流資訊列表中某個資訊詳情并可以進行點贊、收藏和發表評論操作。其界面展示如下圖4-6所示。
圖4-6物流資訊界面圖
用戶點擊首頁右下角“我的”進入頁面可以查看和管理基本信息、物流訂單、物流信息、配送信息、評價反饋和收藏信息。點擊“基本信息”可進入頁面可以修改個人資料和登錄密碼,密碼修改后可以用新密碼登錄。點擊“物流訂單”進入頁面可以查看物流訂單列表中某個訂單的物流信息詳情。點擊“配送信息”進入頁面可以查看配送信息列表中某個訂單的配送信息的詳情,完成配送后可以對訂單進行評價反饋。可以查詢和重置物流訂單、物流信息、配送信息;可以對評價反饋信息進行增刪改查操作;可以查看或刪除收藏列表信息。其界面展示如下圖4-7所示。
圖4-7我的界面圖
刪除的代碼如下:
Controller.prototype.del = async function(ctx) {
if (!Object.keys(ctx.query).length) {
return {
code: 30000,
message: "刪除條件不能為空!",
};
}
var result = await this.service.del(ctx.request.query, this.config);
if (this.service.error) {
return {
error: this.service.error,
};
}
return {
result,
};
在“公共管理”菜單管理員對輪播圖和公告進行管控,可以查看輪播圖/公告列表中某個輪播圖/公告的詳情,可以對輪播圖、公告信息進行增刪改查操作。其界面如下圖4-8所示。
圖4-8公共管理界面圖
上傳圖片/文件的代碼:
Controller.prototype.upload = async function(ctx) {
var req = ctx.request;
var query = req.query;
var url = "";
if (req.files && req.files.file) {
var f = req.files.file;
const render = fs.createReadStream(f.path);
var name = f.name;
var dir = f.dir || "";
var file = _dir + dir + name;
try {
if (fs.existsSync(file)) {
var arr = name.split(".");
name = arr[0];
var extension = arr[arr.length - 1];
var num = 10000;
for (var i = 0; i < num; i++) {
var na = name + "_" + (i + 1) + "." + extension;
file = path.join(_dir, na);
if (!fs.existsSync(file)) {
name = na;
break;
}
}
}
const upStream = fs.createWriteStream(file);
render.pipe(upStream);
url = _path + name;
} catch (e) {
console.log("上傳失敗:", e);
}
return {
result: {
url
}
};
} else {
return {
code: 10000,
message: "上傳的文件(file)不能為空!",
};
}
};
管理員可以查看系統用戶(管理員、普通用戶、物流公司)列表中某個用戶的詳情,可以對用戶信息進行增刪改查操作。其界面如下圖4-9所示。
圖4-9用戶管理界面圖
在“資訊管理”菜單管理員對物流資訊和資訊分類進行管控。管理員可以查看物流資訊列表中某個資訊的詳情和評論,可以對物流資訊、資訊分類信息進行增刪改查操作。其界面如下圖4-10所示。
圖4-10資訊管理界面圖
管理員可以查看物流訂單列表中某個訂單的詳情和并可以提交物流跟蹤信息,可以對物流訂單信息進行增刪改查操作。其界面如下圖4-11所示。
圖4-11物流訂單管理界面圖
管理員可以查看物流信息列表中某個訂單的物流信息詳情并可以提交配送信息,可以對物流訂單信息進行增刪改查操作。其界面如下圖4-12所示。
圖4-12物流信息管理界面圖
管理員可以查看配送信息列表中某個訂單的配送信息詳情和評價反饋信息,可以對配送信息進行增刪改查操作。其界面如下圖4-13所示。
圖4-13配送信息管理界面圖
管理員可以查看評價反饋列表中某個訂單的評價反饋詳情,可以對評價反饋信息進行增刪改查操作。其界面如下圖4-14所示。
5系統測試
無論什么樣的系統,測試都至關重要,通過測試可以檢查出潛藏的缺陷,從而確保系統的性能和穩定性,避免Bug的出現,并確保系統的功能和性價比達到預期的要求。
系統測試包括:用戶登錄功能測試、物流資訊查看功能、公告信息添加功能、密碼修改功能測試,如表5-1、5-2、5-3、5-4所示:
表5-1?用戶登錄功能測試表
用例名稱 | 用戶登錄系統 |
目的 | 測試用戶通過正確的用戶名和密碼可否登錄功能 |
前提 | 未登錄的情況下 |
測試流程 | 1) 進入登錄頁面 2) 輸入正確的用戶名和密碼 |
預期結果 | 用戶名和密碼正確的時候,跳轉到登錄成功界面,反之則顯示錯誤信息,提示重新輸入 |
實際結果 | 實際結果與預期結果一致 |
物流資訊查看功能測試:
表5-2?物流資訊查看功能測試表
用例名稱 | 物流資訊查看 |
目的 | 測試物流資訊查看功能 |
前提 | 普通用戶登錄 |
測試流程 | 點擊首頁下方的“物流資訊” |
預期結果 | 可以查看到所有物流資訊信息 |
實際結果 | 實際結果與預期結果一致 |
公告信息添加界面測試:
表5-3?公告信息添加界面測試表
用例名稱 | 公告信息添加測試用例 |
目的 | 測試公告信息添加功能 |
前提 | 管理員用戶正常登錄情況下 |
測試流程 | 1)管理員點擊公共管理下方的“公告”,然后點擊添加進入頁填寫相關信息。 2)填寫完畢后點擊“提交”。 |
預期結果 | 提交以后,公告列表會顯示新增的公告信息 |
實際結果 | 實際結果與預期結果一致 |
密碼修改功能測試:
表5-4 密碼修改功能測試表
用例名稱 | 密碼修改測試用例 |
目的 | 測試普通用戶密碼修改功能 |
前提 | 普通用戶正常登錄情況下 |
測試流程 | 1)點擊“我的”進入頁面點擊基本信息,點擊“修改密碼”。 2)修改后點擊提交。 |
預期結果 | 使用新的密碼可以登錄 |
實際結果 | 實際結果與預期結果一致 |
通過編寫基于微信小程序的智慧物流平臺的測試用例,已經檢測完畢用戶登錄功能測試、物流資訊查看功能、公告信息添加功能、密碼修改功能測試,通過這四大模塊的測試為基于微信小程序的智慧物流平臺的后期推廣運營提供了強力的技術支撐。
在基于微信小程序的智慧物流平臺開發之前,需要先對用戶的具體需求進行分析。包括系統的可行性分析、功能需求分析以及其他需求等。在可行性分析過程中,對系統實現的技術性、經濟性等方面進行了分析。總體上證明了系統實施的可行性。
本文總結了基于微信小程序的智慧物流平臺開發背景與意義,然后闡述了系統的具體業務需求,并根據系統需求對系統結構以及功能模塊等進行了詳細地設計,將整個系統劃分為用戶端功能模塊和后臺管理端功能模塊。在分析系統功能需求時,對整個系統的總體架構以及功能模塊等進行了分析,并選擇合適的系統開發技術完成了對各個模塊的開發工作。系統開發完成之后進行了部署,同時進行了系統的測試過程,通過測試證明了系統在功能以及性能等方面都達到了預期的要求,具有較高的穩定性與可靠性。
[1]高敏欽.基于微信小程序的智慧校園平臺設計[J].河北軟件職業技術學院學報,2024,26(01):12-15.
[2]陳佳樂.基于微信小程序的圖書館座位預約系統[J].電腦編程技巧與維護,2024,(03):63-65+75.
[3]戴峰.基于微信小程序的多選題題庫設計與開發[J].現代信息科技,2024,8(05):45-48+53.
[4]陳淼,羊開云.基于微信小程序的校園報修管理系統設計[J].網絡安全技術與應用,2024,(01):57-60.
[5]楊麗均,廖惠瑛,李一林.智慧物流平臺在國際貿易中的應用[J].中國物流與采購,2023,(21):101-102.
[6]李金常,倪敬陶,劉尚果,等.智慧物流平臺開發與應用[J].國企管理,2023,(06):115-118.
[7]史官清,戴俊,杜鑫可.基于頂層設計理念的城市智慧物流平臺系統架構研究[J].物流科技,2023,46(11):6-11.
[8]袁瀟.智慧物流平臺綜述[J].中國儲運,2023,(05):189-191.
[9]Roman G .Intelligent logistics systems in E-commerce and transportation.[J].Mathematical biosciences and engineering : MBE,2023,20(2):2348-2363.
[10]Wang M .Design and supply chain management of intelligent logistics system using cloud computing under internet of things[J].International Journal of Grid and Utility Computing,2023,14(2-3):216-228.
[11]顧威,劉彬斌.宿遷市智慧物流平臺發展現狀調查[J].合作經濟與科技,2023,(02):78-80.
[12]劉曉蕓,毛薇.數字化背景下智慧物流研究文獻綜述[J].物流科技,2021,44(11):38-40.
[13]翁啟偉.智慧物流平臺商業模式及創新機制[J].商業經濟研究,2021,(13):93-97.
[14]何慧,李英,白月飛.蘇州智慧物流發展的優勢、問題及對策分析[J].安徽商貿職業技術學院學報(社會科學版),2021,20(01):25-28.
[15]張曼婕.新零售背景下我國智慧物流的特征、現狀及策略[J].商業經濟研究,2021,(04):43-45.
[16]Heller M .What is Node.JS? The JavaScript runtime explained[J].InfoWorld.com,2022,
[17]閔亮,薛格格,張玉欣,等.基于Node.JS博客系統的設計與實現[J].電子設計工程,2022,30(07):37-41.
[18]李勝男.基于微信的課堂測試小程序設計[D].西安電子科技大學,2022.
[19]顏娟.基于Node.js的英語口語考試平臺[J].微型電腦應用,2021,37(08):173-175.
[20]楊華,徐揚.MySQL數據庫對中文編碼支持的探討[J].網絡安全和信息化,2023,(10):157-160.
首先,我要感謝我的論文指導老師。在論文完成的整個過程中,指導老師始終給予我無微不至的關愛與指導。在論文寫作的過程中,導師那耐心細致的指導,以及提出的具有建設性的意見,都給予了我極大的幫助,讓我受益匪淺。導師嚴謹的治學態度、敬業精神以及高水平的教學能力,都給我樹立了追求卓越的典范,這對我以后的人生道路和學業成就都產生了極大的積極影響。
此外,我還要感謝我班的同學們,他們既是我的同窗好友,又是我的良師益友。正是由于你們的支持和關懷,使得我在大學期間的學習和生活都變得異常充實。感謝那些在大學期間給予我幫助的所有老師和同學們,是你們給予了我在學業道路上的前進動力。
當然,我也不能忘記我的父母,是他們用無私的愛撫養我成人。你們的養育之恩我將永生難忘,將來我一定會用我的成績回報你們。在成長的道路上,我會不斷努力,不負眾望,用實際行動來回報你們對我的期望。
免費領取項目源碼,請關注?點贊收藏并私信博主,謝謝~