diff --git a/app/Services/ParkingElectronicMapService.php b/app/Services/ParkingElectronicMapService.php index 103267a..e0ffe03 100644 --- a/app/Services/ParkingElectronicMapService.php +++ b/app/Services/ParkingElectronicMapService.php @@ -106,4 +106,18 @@ class ParkingElectronicMapService extends BaseService } return $list; } + + // 车位删除同步删除已添加的绘制地图 + public static function syncDeleteMapSpace($space_id, $floor_id) + { + $id = ParkingElectronicMap::query()->where([ + 'floor_id' => $floor_id, + 'space_id' => $space_id + ])->value('id'); + if ($id) { + $model = ParkingElectronicMap::query()->findOrFail($id); + $model->delete(); + (new OperationLogService())->logDeleted($model, 'map.sync_delete'); + } + } } diff --git a/app/Services/ParkingSpaceService.php b/app/Services/ParkingSpaceService.php index 66de3cb..65eb975 100644 --- a/app/Services/ParkingSpaceService.php +++ b/app/Services/ParkingSpaceService.php @@ -437,11 +437,18 @@ class ParkingSpaceService extends BaseService DB::beginTransaction(); $model = ParkingSpace::query()->findOrFail($id); + $oldValue = $model->toArray(); $this->logService->logDeleted($model, 'parking_space.delete'); $model->delete(); + // 同步删除已添加的绘制地图 + ParkingElectronicMapService::syncDeleteMapSpace( + $id, + $oldValue['floor_id'] + ); + DB::commit(); return true; } catch (Exception $e) { @@ -462,11 +469,17 @@ class ParkingSpaceService extends BaseService foreach ($ids as $id) { $model = ParkingSpace::query()->findOrFail($id); + $oldValue = $model->toArray(); $this->logService->logDeleted( $model, 'parking_space.delete' ); $model->delete(); + // 同步删除已添加的绘制地图 + ParkingElectronicMapService::syncDeleteMapSpace( + $id, + $oldValue['floor_id'] + ); } DB::commit(); diff --git a/resources/lang/en/log.php b/resources/lang/en/log.php index 535f76f..6d5c2c7 100644 --- a/resources/lang/en/log.php +++ b/resources/lang/en/log.php @@ -55,7 +55,8 @@ return [ 'delete' => 'Delete VIP list' ], 'map' => [ - 'save' => 'Draw an electronic map and save it' + 'save' => 'Draw an electronic map and save it', + 'sync_delete' => 'Synchronized deletion of parking spaces' ], 'parking_information' => [ 'create' => 'Create parking information', diff --git a/resources/lang/zh-CN/log.php b/resources/lang/zh-CN/log.php index d35551f..e9f67af 100644 --- a/resources/lang/zh-CN/log.php +++ b/resources/lang/zh-CN/log.php @@ -55,7 +55,8 @@ return [ 'delete' => '删除VIP名单' ], 'map' => [ - 'save' => '绘制电子地图保存' + 'save' => '绘制电子地图保存', + 'sync_delete' => '车位同步删除' ], 'parking_information' => [ 'create' => '创建车位资讯', diff --git a/resources/lang/zh-TW/log.php b/resources/lang/zh-TW/log.php index c1a2813..ca3b84b 100644 --- a/resources/lang/zh-TW/log.php +++ b/resources/lang/zh-TW/log.php @@ -55,7 +55,8 @@ return [ 'delete' => '删除VIP名單' ], 'map' => [ - 'save' => '繪製電子地圖保存' + 'save' => '繪製電子地圖保存', + 'sync_delete' => '車位同步删除' ], 'parking_information' => [ 'create' => '創建車位資訊',