大家好,我是 Java陳序員
。
今天,給大家介紹一套開源的跑腿下單接單系統!
關注微信公眾號:【Java陳序員】,獲取開源專案分享、AI副業分享、超200本經典計算機電子書籍等。
專案介紹
ddrun
—— 一套後端基於 Midway3.0、後臺採用 Nuxt2.x、小程式採用 Uniapp 實現的跑腿下單接單系統。
系統實現了幫送服務、幫買服務、騎手註冊、騎手接單、使用者下單、提現、訂單分配系統、優惠券、物品重量計算、距離計算等功能。
系統截圖
後臺管理介面
小程式介面
快速上手
開發環境和開發工具
開發環境:
- Nodejs:16.x.x
- Redis:5.x
- MySQL: 8.x 或 5.7 以上版本
- Git
開發工具:
- Visual Studio Code
- HBuilderX
- 微信開發者工具(微信小程式)
原始碼下載
- 克隆專案程式碼
git clone https://gitee.com/landalfyao/ddrun.git
- 專案目錄結構
ddrun
├── admin # 後臺管理員端 Nuxt
├── cert # 微信商戶證書檔案清單
├── doc # 文件說明
├── miniapp # 小程式端 Uniapp
├── server # 服務端 Midway
├── buildconfig.js # 專案構建指令碼
├── config.json.bak # 配置檔案
├── init.js # 初始化指令碼
├── init.sh # 安裝指令碼
└── nginx.conf.bak # Nginx 配置指令碼
服務端
1、用 VS Code 開啟 server
目錄
2、找到 src/config/config.local.ts.bak
檔案,複製並貼上到同一目錄下,並更名為 config.local.ts
3、建立資料庫 ddrunv2
CREATE DATABASE `ddrunv2` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
4、開啟 src/config/config.local.ts
修改 MySQL 及 Redis 配置
···
orm: {
/**
* 單資料庫例項
*/
type: 'mysql',
host: '127.0.0.1',
port: 3306,
username: 'root',
password: 'xxxxxx',
database: 'ddrunv2',
synchronize: true, // 如果第一次使用,不存在表,有同步的需求可以寫 true
logging: false,
},
redis: {
client: {
port: 6379, // Redis port
host: '127.0.0.1', // Redis host
password: 'xxxxxx',
db: 0,
},
},
···
task: {
redis: {
port: '{redis_port}', // Redis port
host: '{redis_host}', // Redis host
password: '{redis_password}',
db: 0,
},
···
},
啟動服務的過程中會自動建立/更新資料庫表。
5、安裝依賴
npm install
# 或
yarn
6、啟動服務
npm run local
# 或
yarn local
7、輸出以下內容,說明啟動成功
\ Midway Starting 2024-11-02 20:21:42.625 INFO 10612 [egg:core] dump config after ready, 4ms
2024-11-02 20:21:42.690 INFO 10612 [midway:redis] client connect success
[ Midway ] Start Server at http://127.0.0.1:8001
[ Midway ] Start on LAN http://192.168.31.92:8001
後臺管理
1、用 VS Code 開啟 admin
目錄
2、找到 nuxt.config.js.bak
檔案,複製並貼上到同一目錄下,並更名為 nuxt.config.js
3、開啟 nuxt.config.js
修改 localUrl
的域名為 http://localhost:8001
const isLocal = process.env.NODE_ENV === 'local';
const isProd = process.env.NODE_ENV === 'prod';
const getProxyTarget = () => {
const localUrl = 'http://localhost:8001';
if (isLocal) {
return localUrl;
} else if (isProd) {
return '{domain}';
} else {
return localUrl;
}
};
···
4、安裝依賴
npm install
5、啟動服務
npm run local
6、瀏覽器訪問
http://localhost:8888/
小程式
1、在 HBuilderX 匯入 miniapp
目錄
2、找到 util/constant.js.bak
檔案,複製並貼上到同一目錄下,並更名為 constant.js
3、開啟 util/constant.js
修改 eexport const API = 'http://127.0.0.1:8001/api/'
export const API = 'http://127.0.0.1:8001/api/';
export const HELP_DELIVER = 'helpDeliver';
export const HELP_GET = 'helpGet';
export const HELP_BUY = 'helpBuy';
// 就近
export const BUY_NEARBY = 'nearby';
// 指定
export const BUY_APPOINT = 'appoint';
export const AUTOCANCELTIME = 15*60*1000;
4、開啟 manifest.json
找到 appid
引數,並修改為自己小程式的 appid
...
"mp-weixin" : {
"appid" : "wxd842973a9b79970c",
"setting" : {
"urlCheck" : false,
"minified" : true
},
"usingComponents" : true,
"permission" : {
"scope.userLocation" : {
"desc" : "需要根據位置獲取服務"
}
}
},
···
5、在 HBuilderX 中點選執行>執行到小程式模擬器>微信開發者工具
可以說 ddrun
實現了跑腿下單接單的全流程功能,功能十分齊全,是一個值得學習的開源專案!快去試試吧~
專案地址:https://gitee.com/landalfyao/ddrun
最後
推薦的開源專案已經收錄到 GitHub
專案,歡迎 Star
:
https://github.com/chenyl8848/great-open-source-project
或者訪問網站,進行線上瀏覽:
https://chencoding.top:8090/#/
大家的點贊、收藏和評論都是對作者的支援,如文章對你有幫助還請點贊轉發支援下,謝謝!