本專案來自程式汪背後的私活小團隊,開發了一個口罩專案,給粉絲分享一下解決方案,希望給想接私活的朋友一些經驗參考
影片版本 在 B站【我是程式汪】
另一個口罩專案的案例,他是藍芽直接跟硬體對接,本專案是透過MQTT中轉對接硬體
程式汪8萬接的共享口罩專案,開發週期1個月
目錄
- 一、專案構成
- 二、開發人員
- 三、專案背景
- 四、小程式端
- 五、後端系統
- 最後 原始碼資料分享
專案構成
- 系統基本構成:APP內嵌H5+ springBoot後臺
- 阿波羅Apache Apollo (MQTT訊息中轉站)
- vue
- mysql
安裝命令
開發人員以及費用情況
- 開發週期10天
- 開發人數 1人
- 整體費用是3萬(不包含維護費)
- 走的公司合同
- 雲伺服器1臺 4核16G配置 資料盤500G
- 維護費用:專案總款的10% 一年
專案背景
疫情的原因導致口罩需求一直很旺盛,甲方爸爸打算開發一套口罩售賣機器(類似自助售賣機),這種專案其實也不新鮮了,程式汪以前就接到過這種口罩專案,別問我這個專案的意義啊,拿錢幹活(程式汪屬於幹活型),整個口罩專案,我們只做軟體部分,硬體和APP部分是另外的團隊開發的,這是一個部分外包的專案
程式汪8萬接的共享口罩專案,開發週期1個月
核心流程
APP掃自助售賣機二維碼 -> 開啟H5領取頁面 -> 如沒有領取記錄,則選擇領取商品的型別(口罩) -> 後臺接收領取請求 -> 傳送MQTT請求到服務端 -> MQTT服務端分發請求給售賣機終端 -> 對應售賣機接收請求執行指令(出貨)
APP(H5頁面)
APP甲方提供了,我們只需要把開發好的H5頁面 巢狀到APP裡即可,一期功能非常簡單,可以免費領取一隻口罩
亮點(比較複雜的)
本專案其實是基於電商專案的二開,口罩也是一種商品,下單購買一個典型的購物流程,CRUD的功能我就不廢話了,主意是和硬體介面的對接,我們採取的方案是利用Apache Apollo當MQTT的訊息中轉站
1.Apollo下載
下載地址:http://activemq.apache.org/apollo/download.html
MQTT是一個基於客戶端-伺服器的訊息釋出/訂閱傳輸協議
Apollo是一個多協議代理,支援STOMP,AMQP,MQTT,Openwire,SSL和WebSockets。就是在伺服器端建立一個唯一訂閱號,傳送者可以向這個訂閱號中發東西,然後接受者(即訂閱了這個訂閱號的人)都會收到這個訂閱號發出來的訊息。以此來完成訊息的推送。伺服器其實是一個訊息中轉站。
MQTT介面文件說明
MQ 介面說明書
注意介面訊息格式都是json
第三種:報文例子
topicName=ZHZN/869300032840849
&message={"c":2,
"f":"SZTEST001",
"t":"869300032840849",
"s":"AD1 23567",
"m":"1","mi":2}
MQTT口罩介面文件,也分享給大家學習參考下(網盤地址)
連結: https://pan.baidu.com/s/1z7H4sRS5ujCo84-j9DZejQ
密碼: fshp
硬體部分
硬體部分不是程式汪這邊負責的,硬體兄弟負責定製燒錄,其實這種自動售賣機有市面上已經很多了。
貨道式售貨機
後端系統
開源系統上新增了一些CRUD功能
基礎對功能都是現成的 比如使用者管理 許可權 商品 訂單等
- 運營管理
- 訂單管理
- 裝置管理
- 補貨記錄
- 領取記錄
- 裝置出庫明細
- 統計報表
- 商品管理
- 商品列表
- 類目管理
- 使用者管理
- 使用者管理
- 系統管理
- 系統配置
- 後臺管理使用者
- 角色管理
程式汪接的7個私活都在這裡,經驗整理
此專案參考資料:
MQTT
https://www.runoob.com/w3cnote/mqtt-intro.html阿波羅 http://activemq.apache.org/apollo/download.htmlVuehttps://cn.vuejs.org/
資源分享
MQTT口罩介面文件,也分享給大家學習參考下(網盤地址)
連結: https://pan.baidu.com/s/1z7H4sRS5ujCo84-j9DZejQ
密碼: fshp
原創文章首發 公眾號 我是程式汪
https://mp.weixin.qq.com/s/-HiiQ4CW95jFA89kM6-r-w