From fe4f04ad27b021e4738fe4ab120d90309449dc02 Mon Sep 17 00:00:00 2001 From: wanghongjun <1445693971@qq.com> Date: Mon, 15 Jun 2026 11:32:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A8=A1=E5=BC=8F=E7=AE=A1=E7=90=86=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E5=88=97=E8=A1=A8=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/ParkingPatternSpaceController.php | 65 ++++++++++++++++++- 1 file changed, 64 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/Admin/ParkingPatternSpaceController.php b/app/Http/Controllers/Admin/ParkingPatternSpaceController.php index 7b1ed71..0c09d31 100644 --- a/app/Http/Controllers/Admin/ParkingPatternSpaceController.php +++ b/app/Http/Controllers/Admin/ParkingPatternSpaceController.php @@ -3,6 +3,8 @@ namespace App\Http\Controllers\Admin; use App\Exceptions\CustomException; +use App\Models\AdminFloor; +use App\Models\Parking; use App\Models\ParkingPattern; use App\Models\ParkingPatternSpace; use App\Models\ParkingSpace; @@ -67,6 +69,60 @@ class ParkingPatternSpaceController extends BaseController } } + if ($request->has('parking_space_attr')) { + $parking_space_attr = $request->input('parking_space_attr'); + if ($parking_space_attr) { + $space_ids = ParkingPatternSpace::query()->where( + 'pattern_id', + $pattern_id + )->pluck('space_id'); + $ParkingSpaceModel = ParkingSpace::query()->where( + 'space_type_id', + $parking_space_attr + ); + if ($space_ids) { + $ParkingSpaceModel->whereIn('id', $space_ids); + } + $new_space_ids = $ParkingSpaceModel->pluck('id'); + if ($new_space_ids) { + $query->whereIn('space_id', $new_space_ids); + } else { + $query->where('id', 0); + } + } + } + + if ($request->has('parking_id')) { + $parking_id = $request->input('parking_id'); + if ($parking_id) { + $floor_ids = AdminFloor::query()->where( + 'building_floor', + $parking_id + )->pluck('id'); + if ($floor_ids) { + $space_ids = ParkingPatternSpace::query()->where( + 'pattern_id', + $pattern_id + )->pluck('space_id'); + $ParkingSpaceModel = ParkingSpace::query()->whereIn( + 'floor_id', + $floor_ids + ); + if ($space_ids) { + $ParkingSpaceModel->whereIn('id', $space_ids); + } + $new_space_ids = $ParkingSpaceModel->pluck('id'); + if ($new_space_ids) { + $query->whereIn('space_id', $new_space_ids); + } else { + $query->where('id', 0); + } + } else { + $query->where('id', 0); + } + } + } + // 分页 $page = $request->input('page', 1); $perPage = $request->input('per_page', 10); @@ -83,9 +139,14 @@ class ParkingPatternSpaceController extends BaseController $ParkingSpace = ParkingSpace::query()->find($item['space_id']); $item['parking_space_number'] = ''; $item['parking_space_attr'] = ''; + $item['parking'] = ''; if ($ParkingSpace) { $item['parking_space_number'] = $ParkingSpace['number']; $item['parking_space_attr'] = ParkingSpaceAttributes::getAttr($ParkingSpace['space_attr_id']); + $parking_id = AdminFloor::query()->where('id', $ParkingSpace['floor_id'])->value('building_floor'); + if ($parking_id) { + $item['parking'] = Parking::getName($parking_id); + } } $item['parking_space_type'] = ParkingSpaceType::getName( $item['space_type_id'] @@ -124,7 +185,9 @@ class ParkingPatternSpaceController extends BaseController { try { $data = [ - 'parking_space_type_list' => ParkingSpaceType::getData() + 'parking_space_type_list' => ParkingSpaceType::getData(), + 'parking_space_attr_list' => ParkingSpaceAttributes::getData(), + 'parking_list' => Parking::getData() ]; return $this->responseService->success($data); } catch (Exception $e) {