大家好,我是 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/#/
大家的點贊、收藏和評論都是對作者的支持,如文章對你有幫助還請點贊轉發支持下,謝謝!