diff --git a/app/Http/Controllers/Admin/ParkingAbnormalController.php b/app/Http/Controllers/Admin/ParkingAbnormalController.php index 32b79bf..9584991 100644 --- a/app/Http/Controllers/Admin/ParkingAbnormalController.php +++ b/app/Http/Controllers/Admin/ParkingAbnormalController.php @@ -92,7 +92,7 @@ class ParkingAbnormalController extends BaseController if ($request->has('status')) { $status = $request->input('status'); - if ($status) { + if (is_numeric($status)) { $query->where('status', $status); } } diff --git a/app/Http/Controllers/Admin/ParkingSpaceController.php b/app/Http/Controllers/Admin/ParkingSpaceController.php index 89a9f1e..bde19ee 100644 --- a/app/Http/Controllers/Admin/ParkingSpaceController.php +++ b/app/Http/Controllers/Admin/ParkingSpaceController.php @@ -309,7 +309,7 @@ class ParkingSpaceController extends BaseController $data['parking_space_number'] = $item['number']; $data['license_plate'] = ParkingLicensePlate::getNumber($item['license_plate_id']); - $data['status'] = $this->service->getParkingSpaceStatus($item['status'], $item['license_plate_id']); + $data['status'] = $this->service->getParkingSpaceStatus($item['status'], $item['license_plate_id'], $parking_space_id); $data['parking_space_type'] = ParkingSpaceType::getName($item['space_type_id']); $data['berthing_time_str'] = ''; if ($item['berthing_time']) { diff --git a/app/Services/ParkingAbnormalService.php b/app/Services/ParkingAbnormalService.php index 9099340..f789b57 100644 --- a/app/Services/ParkingAbnormalService.php +++ b/app/Services/ParkingAbnormalService.php @@ -181,4 +181,11 @@ class ParkingAbnormalService extends BaseService } } + public function isLicensePlate($license_plate_id, $space_id) + { + return ParkingAbnormal::query()->where( + 'license_plate_id', + $license_plate_id + )->where('space_id', $space_id)->where('status', 0)->exists(); + } } diff --git a/app/Services/ParkingSpaceService.php b/app/Services/ParkingSpaceService.php index afc3e0b..a865993 100644 --- a/app/Services/ParkingSpaceService.php +++ b/app/Services/ParkingSpaceService.php @@ -75,7 +75,7 @@ class ParkingSpaceService extends BaseService } // 获取状态显示值 - public function getParkingSpaceStatus($status, $license_plate_id = '') + public function getParkingSpaceStatus($status, $license_plate_id, $space_id) { $statusArr = $this->getStatusArr(true); // 是否有车 @@ -89,6 +89,12 @@ class ParkingSpaceService extends BaseService if ($status == '1') { // 占用 是否有车 $str = $yesStr ?: $noStr; + $abnormal_exists = (new ParkingAbnormalService( + $this->logService + ))->isLicensePlate($license_plate_id, $space_id); + if ($abnormal_exists) { + $str = __service('parking_space.abnormal'); + } return $statusArr[1] . '/' . $str; } elseif ($status == '2') { return $statusArr[$status]; @@ -144,7 +150,8 @@ class ParkingSpaceService extends BaseService ); $item['status'] = $this->getParkingSpaceStatus( $item['status'], - $item['license_plate_id'] + $item['license_plate_id'], + $item['id'] ); $item['operation_type'] = $this->getOperationType( $item['operation_type'] diff --git a/resources/lang/en/service.php b/resources/lang/en/service.php index c2daa2a..d500563 100644 --- a/resources/lang/en/service.php +++ b/resources/lang/en/service.php @@ -72,7 +72,8 @@ return [ 'yes_cars' => 'Parking status updated with cars available, no cars available', 'number_update' => 'License plate number update', 'number_exists' => 'The parking number already exists', - 'space_not' => 'Parking space does not exist' + 'space_not' => 'Parking space does not exist', + 'abnormal' => 'Abnormal resource usage' ], 'parking_information' => [ 'not_default' => 'Default parking space type not set' diff --git a/resources/lang/zh-CN/service.php b/resources/lang/zh-CN/service.php index 916763e..9abe2af 100644 --- a/resources/lang/zh-CN/service.php +++ b/resources/lang/zh-CN/service.php @@ -72,7 +72,8 @@ return [ 'yes_cars' => '车位状态有车更新无车', 'number_update' => '车牌号更新', 'number_exists' => '车位号码已存在', - 'space_not' => '车位不存在' + 'space_not' => '车位不存在', + 'abnormal' => '异常占用' ], 'parking_information' => [ 'not_default' => '未设置默认车位类型' diff --git a/resources/lang/zh-TW/service.php b/resources/lang/zh-TW/service.php index dab0015..768fec0 100644 --- a/resources/lang/zh-TW/service.php +++ b/resources/lang/zh-TW/service.php @@ -72,7 +72,8 @@ return [ 'yes_cars' => '車位狀態有車更新無車', 'number_update' => '車牌號更新', 'number_exists' => '車位號碼已存在', - 'space_not' => '車位不存在' + 'space_not' => '車位不存在', + 'abnormal' => '異常佔用' ], 'parking_information' => [ 'not_default' => '未設定默認車位類型'