1. 项目概述
这个外卖订单跑腿配送系统是专门为天立B区设计的本地化服务解决方案。作为在两个主流PHP框架上实现的配送管理系统,它需要处理从用户下单到骑手配送的完整业务流程。我在实际开发中发现,这类区域性配送系统与大型外卖平台相比,更需要考虑本地化特色和精细化运营。
系统核心功能包括商户端管理、骑手调度、用户订单追踪和平台运营四个模块。选择ThinkPHP和Laravel双框架实现,既能利用ThinkPHP的快速开发优势,又能发挥Laravel在复杂业务逻辑处理上的特长。下面我将详细解析这个项目的技术选型和实现细节。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 技术架构设计
2.1 框架选型考量
ThinkPHP 6.0和Laravel 8.x的组合使用是基于以下考虑:
- ThinkPHP适合快速搭建商户端管理后台
- Laravel更适合处理复杂的订单调度算法
- 两个框架都支持Composer依赖管理
- 共享MySQL数据库但分表设计
提示:框架间通信采用RESTful API方式,确保模块解耦
2.2 数据库设计要点
设计了12个核心数据表,重点包括:
- 订单表:包含特殊字段如
expected_time(期望送达时间) - 骑手表:记录实时位置坐标和接单状态
- 商户表:特别添加了
b_zone_specific字段标识天立B区特色商家
sql复制CREATE TABLE `orders` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`user_id` int(11) NOT NULL COMMENT '下单用户',
`rider_id` int(11) DEFAULT NULL COMMENT '接单骑手',
`shop_id` int(11) NOT NULL COMMENT '商户ID',
`order_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '0待支付 1已接单...',
`expected_time` datetime NOT NULL COMMENT '期望送达时间',
`actual_time` datetime DEFAULT NULL COMMENT '实际送达时间',
`b_zo
