Accept Merge Request #154: (feature/hant -> develop)

Merge Request: 地图派单

Created By: @todayswind
Accepted By: @todayswind
URL: https://g-bcrc3009.coding.net/p/allocatr/d/allocatr/git/merge/154?initial=true
This commit is contained in:
todayswind 2025-06-18 10:16:24 +08:00 committed by Coding
commit af251b9d37

View File

@ -6,6 +6,7 @@ use app\admin\model\Area;
use app\admin\model\AuthGroup;
use app\admin\model\Item;
use app\admin\model\Order;
use app\admin\model\OrderDispatch;
use app\admin\model\WorkerItem;
use app\common\controller\Backend;
use fast\Tree;
@ -319,7 +320,7 @@ class Worker extends Backend
$order_id = request()->get('order_id');
$search = request()->get('search');
list($where, $sort, $order, $offset, $limit) = $this->buildparams();
$order = (new Order())->where('id',$order_id)->field(['id','lng','lat'])->select();
$order = (new Order())->where('id',$order_id)->field(['id','lng','lat','item_id'])->select();
if (!empty($order)) {
$order = $order[0];
@ -339,9 +340,21 @@ ORDER BY distance;",[$order->lng,$order->lat]);
$worker_ids = array_column($worker_distance,'id');
$worker_items_ids = (new WorkerItem())
->where('item_id', $order->item_id)
->whereIn('worker_id', $worker_ids)
->column('worker_id');
// $out_worker = OrderDispatch::where('order_id',$order->id)
// ->where('status',-30)->column('worker_id');
$out_worker_ids = array_intersect($worker_ids, $worker_items_ids);
// $out_worker_ids = array_values(array_diff($out_worker_ids, $out_worker));
$build = model('worker')
->where('status', 1)
->whereIn('id', $worker_ids);
->whereIn('id', $out_worker_ids);
if ($search){