function(array $params) { return [ 'filters' => $params['filters'], 'fields' => [ 'id','vin','price','cover', 'type','energy','model','mileage','vehicle_age', 'views','is_hot','created_at','updated_at', 'brand', 'model', 'user_id', 'location' ], 'relations' => [ 'translation' => ['vehicle_id', 'name','condition_desc', 'location'], 'brand.translation' => ['brand_id', 'name'], 'album' => [ 'id', 'vehicle_data_id', 'front_45_degree', 'front_left_45_degree', 'front_left_headlight', 'front_view', 'lower_front', 'wheel_hub', 'front_right_seat', 'right_lower_side', 'rear_right_taillight', 'rear_right_45_degree', 'lower_rear', 'trunk', 'left_lower_side', 'rear_seats', 'center_console', 'control_panel', 'gear_shift', 'car_key', 'steering_wheel', 'dashboard', 'odometer_reading', 'front_left_door_panel', 'front_left_door_function_area', 'front_left_seat', 'interior_ceiling' ], 'user' => ['realname', 'nickname'], 'types.translation' => ['type_id', 'name'], 'energy.translation' => ['energy_id', 'name'], 'models.translation' => ['model_id', 'name'], 'user' => ['nickname'], 'location.translation' => ['location_id', 'name'] ], 'sorts' => [ ['field'=>'id','direction'=>'desc'], ], 'pagination' => [ 'page' => $params['page'] ?? 1, 'per_page' => $params['per_page'] ?? 10, ], ]; }, 'show' => function(array $params) { return [ 'filters' => [], 'fields' => [ 'id','vin','price','cover', 'type','energy','model','mileage','vehicle_age', 'views','is_hot','created_at','updated_at', 'brand', 'model', 'user_id', 'store_status', 'location' ], 'relations' => [ 'translation' => ['vehicle_id', 'name','condition_desc', 'location'], 'brand.translation' => ['brand_id', 'name'], 'album' => [ 'id', 'vehicle_data_id', 'front_45_degree', 'front_left_45_degree', 'front_left_headlight', 'front_view', 'lower_front', 'wheel_hub', 'front_right_seat', 'right_lower_side', 'rear_right_taillight', 'rear_right_45_degree', 'lower_rear', 'trunk', 'left_lower_side', 'rear_seats', 'center_console', 'control_panel', 'gear_shift', 'car_key', 'steering_wheel', 'dashboard', 'odometer_reading', 'front_left_door_panel', 'front_left_door_function_area', 'front_left_seat', 'interior_ceiling' ], 'user' => ['realname', 'nickname'], 'types.translation' => ['type_id', 'name'], 'energy.translation' => ['energy_id', 'name'], 'models.translation' => ['model_id', 'name'], 'user' => ['nickname'], 'location.translation' => ['location_id', 'name'] ], 'sorts' => [ ['field'=>'id','direction'=>'desc'], ], 'pagination' => [ 'page' => $params['page'] ?? 1, 'per_page' => $params['per_page'] ?? 10, ], ]; }, // 新增一个 random 场景 'random' => function(array $params) { return [ 'filters' => [], 'fields' => [ 'id','vin','price','cover', 'type','energy','model','mileage','vehicle_age', 'views','is_hot','created_at','updated_at', 'brand', 'model', 'user_id', 'store_status', 'location' ], 'relations' => [ 'translation' => ['vehicle_id', 'name','condition_desc', 'location'], 'brand.translation' => ['brand_id', 'name'], 'album' => [ 'id', 'vehicle_data_id', 'front_45_degree', 'front_left_45_degree', 'front_left_headlight', 'front_view', 'lower_front', 'wheel_hub', 'front_right_seat', 'right_lower_side', 'rear_right_taillight', 'rear_right_45_degree', 'lower_rear', 'trunk', 'left_lower_side', 'rear_seats', 'center_console', 'control_panel', 'gear_shift', 'car_key', 'steering_wheel', 'dashboard', 'odometer_reading', 'front_left_door_panel', 'front_left_door_function_area', 'front_left_seat', 'interior_ceiling' ], 'user' => ['realname', 'nickname'], 'types.translation' => ['type_id', 'name'], 'energy.translation' => ['energy_id', 'name'], 'models.translation' => ['model_id', 'name'], 'user' => ['nickname'], 'location.translation' => ['location_id', 'name'] ], 'custom' => function(\Illuminate\Database\Eloquent\Builder $q) { $q->inRandomOrder(); }, ]; } ]; } }