diff --git a/app/Http/Controllers/Api/AgentProductController.php b/app/Http/Controllers/Api/AgentProductController.php index 0f479f4..a432dc7 100644 --- a/app/Http/Controllers/Api/AgentProductController.php +++ b/app/Http/Controllers/Api/AgentProductController.php @@ -49,7 +49,7 @@ class AgentProductController extends Controller $list = $list->where('title', 'like', "%$keywords%"); } - $fields = ['id', 'sale', 'updated_at', 'price']; + $fields = ['id', 'sale', 'updated_at', 'price']; //排序字段 TODO 还有距离排序 $field = $fields[$type] ?? $fields[0]; $by = $by == 0 ? 'desc' : 'asc'; @@ -63,12 +63,17 @@ class AgentProductController extends Controller //旅游线路搜索 public function travel_search() { - $formData = request()->only(['departure_place', 'destination']); + $formData = request()->only(['departure_place', 'destination', 'type', 'by']); if (empty($formData['departure_place']) && empty($formData['destination'])) { return $this->error('请输入出发地和目的地'); } + $fields = ['id', 'sale', 'updated_at', 'price']; //排序字段 + + $field = $fields[$formData['type']] ?? $fields[0]; + $by = $formData['by'] == 0 ? 'desc' : 'asc'; + $list = AgentProduct::list($this->agent_id)->whereHas('product', function($query) use ($formData) { //出发地 if (!empty($formData['departure_place'])) { @@ -78,7 +83,7 @@ class AgentProductController extends Controller if (!empty($formData['destination'])) { $query->whereRaw("extends->'$.field_0_destination' LIKE ?", ["%{$formData['destination']}%"]); } - })->orderBy('id', 'DESC')->simplePaginate(); + })->orderBy($field, $by)->simplePaginate(); $list = $this->paginatePicAddHost($list); return $this->success($list);