diff --git a/app/Models/AdminNotice.php b/app/Models/AdminNotice.php index b00d032..dce48ff 100644 --- a/app/Models/AdminNotice.php +++ b/app/Models/AdminNotice.php @@ -23,7 +23,8 @@ class AdminNotice extends Model 'camera_id', 'is_read', 'user_id', - 'pattern_id' + 'pattern_id', + 'license_plate_id' ]; /** diff --git a/app/Services/AdminNoticeService.php b/app/Services/AdminNoticeService.php index 1589c9a..1540657 100644 --- a/app/Services/AdminNoticeService.php +++ b/app/Services/AdminNoticeService.php @@ -68,15 +68,18 @@ class AdminNoticeService extends BaseService $item['msg_type'] = $msgTypeArr[$item['msg_type']]; $item['parking_space_number'] = ''; $item['license_plate'] = ''; + if ($item['license_plate_id']) { + $item['license_plate'] = ParkingLicensePlate::getNumber( + $item['license_plate_id'] + ); + unset($item['license_plate_id']); + } $ParkingSpace = ParkingSpace::query()->find( $item['space_id'], ['number', 'license_plate_id'] ); if ($ParkingSpace) { $item['parking_space_number'] = $ParkingSpace['number']; - $item['license_plate'] = ParkingLicensePlate::getNumber( - $ParkingSpace['license_plate_id'] - ); $item['recognition'] = $ParkingSpace['recognition']; $item['entry_end_type'] = ''; $item['pic_url'] = get_image_url($ParkingSpace['pic_url']); @@ -156,6 +159,9 @@ class AdminNoticeService extends BaseService if (isset($data['space_id']) && $data['space_id']) { $create['space_id'] = $data['space_id']; } + if (isset($data['license_plate_id']) && $data['license_plate_id']) { + $create['license_plate_id'] = $data['license_plate_id']; + } if (isset($data['floor_id']) && $data['floor_id']) { $create['floor_id'] = $data['floor_id']; } @@ -219,13 +225,15 @@ class AdminNoticeService extends BaseService $camera_ip, $space_id, $floor_id, - $user_id + $user_id, + $license_id ) { $data = [ 'camera_id' => $camera_id, 'camera_ip' => $camera_ip, 'space_id' => $space_id, - 'floor_id' => $floor_id + 'floor_id' => $floor_id, + 'license_plate_id' => $license_id ]; self::createData(2, 2, $data, $user_id); } @@ -236,13 +244,15 @@ class AdminNoticeService extends BaseService $camera_ip, $space_id, $floor_id, - $user_id + $user_id, + $license_id ) { $data = [ 'camera_id' => $camera_id, 'camera_ip' => $camera_ip, 'space_id' => $space_id, - 'floor_id' => $floor_id + 'floor_id' => $floor_id, + 'license_plate_id' => $license_id ]; self::createData(1, 4, $data, $user_id); } diff --git a/app/Services/ParkingVipListService.php b/app/Services/ParkingVipListService.php index 995dbda..8422a43 100644 --- a/app/Services/ParkingVipListService.php +++ b/app/Services/ParkingVipListService.php @@ -160,7 +160,7 @@ class ParkingVipListService 'enter_time' => $enter_time, 'access_record_id' => $access_record_id, ]); - self::notice($space_id, $floor_id, 'addDeviceVipNotice'); + self::notice($space_id, $floor_id, $license_id, 'addDeviceVipNotice'); } // 判断是否违停 self::isIllegal($license_id, $space_type_id, $space_id, $floor_id); @@ -194,7 +194,7 @@ class ParkingVipListService if ($exists) { return; } - self::notice($space_id, $floor_id); + self::notice($space_id, $floor_id, $license_id); } } @@ -202,6 +202,7 @@ class ParkingVipListService protected static function notice( $space_id, $floor_id, + $license_id, $str = 'addDeviceIllegalNotice' ): void { $camera_id = ParkingSpaceCamera::query()->where( @@ -215,7 +216,8 @@ class ParkingVipListService $camera_ip ?? '', $space_id, $floor_id, - 1 + 1, + $license_id ); } } diff --git a/database/migrations/2026_04_23_143449_create_admin_notice_table.php b/database/migrations/2026_04_23_143449_create_admin_notice_table.php index 91de7a3..3315b84 100644 --- a/database/migrations/2026_04_23_143449_create_admin_notice_table.php +++ b/database/migrations/2026_04_23_143449_create_admin_notice_table.php @@ -24,6 +24,7 @@ return new class extends Migration $table->integer('pattern_id')->nullable()->comment('模式id'); $table->tinyInteger('is_read')->default(0)->comment('是否已读'); $table->integer('user_id')->default(0)->comment('操作员'); + $table->integer('license_plate_id')->default(0)->comment('车牌id'); $table->timestamps(); $table->innoDb(); $table->index('alarm_type', 'alarm_type');