系统派单逻辑
2021-07-08 10:44:21 4 举报
判断逻辑
作者其他创作
大纲/内容
如果所有骑手都达到最大背单数,进入下一步
系统派单逻辑
按距离门店最近排序
如果没有,则30秒后从步骤a开始重新计算
蜂窝内是否有上班且非忙碌状态的机动骑手
没有
按顺路订单逻辑,判断待指派订单是不是和上一步获取到的订单顺路
订单指派骑手
如果有,获取每个机动骑手距离门店的距离,按最小值排序
有
如果没有,订单指派给该骑手
判断骑手进行中是否订单达到了最大值
如果未达到则直接指派
遍历上一步获取的所有骑手有没有订单(待取货 + 配送中)
获取门店所有上班且非忙碌状态的驻店骑手,按距离门店最近的排序
遍历每个骑手的待取货订单,按要求送达时间最早的排序
计算每个机动骑手,最早订单的收货地址与待指派订单的门店地址方向夹角及骑手距离门店和最早订单收货地址的距离,夹角小于45°的,并且新距离小于最早订单距离的骑手
计算每个骑手当前位置到最近收货地址的直线距离 + 最近收货地址到下一个最近收货地址直线距离 + …… + 最后一个订单收货地址到门店的距离,将结果按最小值排序
遍历上一步获取的机动骑手有没有订单
遍历上一步得到的骑手,判断骑手是否达到了最大背单数
都不顺路
如果都有订单
0 条评论
下一页