diff --git a/app/applet/controller/LocationController.php b/app/applet/controller/LocationController.php index 3eb9fe3..ae7d830 100644 --- a/app/applet/controller/LocationController.php +++ b/app/applet/controller/LocationController.php @@ -43,6 +43,13 @@ class LocationController extends BaseController if ($scene === 'default') { } + + if ($scene === 'preset') { + return [ + 'id' => $item['id'], + 'name' => isset($item['translation']) ? $item['translation']['name'] : '' + ]; + } return $item; } @@ -78,4 +85,13 @@ class LocationController extends BaseController return $this->errorResponse($th->getMessage()); } } + + public function presets(Request $request, string $scene = 'preset'): Response + { + try { + return parent::all($request, $scene); + } catch (\Throwable $th) { + return $this->errorResponse($th->getMessage()); + } + } } \ No newline at end of file diff --git a/app/applet/service/LocationService.php b/app/applet/service/LocationService.php index 07645b3..ece8c01 100644 --- a/app/applet/service/LocationService.php +++ b/app/applet/service/LocationService.php @@ -54,6 +54,20 @@ class LocationService extends BaseService // ] // ]; // } + 'preset' => function ($params) { + return [ + 'filters' => [ + ['field' => 'status', 'operator' => '=', 'value' => '1'] + ], + 'fields' => ['id'], + 'relations' => [ + 'translation' => ['location_id', 'name'] + ], + 'sorts' => [ + ['field' => 'id', 'direction' => 'desc'] + ] + ]; + } ]; } } \ No newline at end of file