From 9fba918f7281da918f4ed5003d4aab82306c3de8 Mon Sep 17 00:00:00 2001 From: Edward Yang Date: Fri, 12 Aug 2022 15:52:18 +0800 Subject: [PATCH] fixed for https://guangdagit.com/beike/beikeshop/issues/49 --- beike/Admin/Repositories/RegionRepo.php | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/beike/Admin/Repositories/RegionRepo.php b/beike/Admin/Repositories/RegionRepo.php index 986f00be..3a1bf390 100644 --- a/beike/Admin/Repositories/RegionRepo.php +++ b/beike/Admin/Repositories/RegionRepo.php @@ -29,8 +29,19 @@ class RegionRepo ]); $region->saveOrFail(); - $region->regionZones()->delete(); - $region->regionZones()->createMany($data['region_zones']); + $newRegionZones = []; + foreach ($data['region_zones'] as $regionZone) { + if ($regionZone['country_id'] && $regionZone['zone_id']) { + $newRegionZones[] = [ + 'country_id' => $regionZone['country_id'], + 'zone_id' => $regionZone['zone_id'], + ]; + } + } + if ($newRegionZones) { + $region->regionZones()->delete(); + $region->regionZones()->createMany($newRegionZones); + } $region->load(['regionZones']); return $region; }