From ac0f1ac48e142e3894e02d07d439573dfd8fc8e8 Mon Sep 17 00:00:00 2001 From: Edward Yang Date: Fri, 19 Aug 2022 16:56:05 +0800 Subject: [PATCH] fixed page error --- .../Http/Controllers/PagesController.php | 22 +++++++++++++------ beike/Admin/Repositories/PageRepo.php | 16 ++++++++++++-- beike/Admin/Repositories/RegionRepo.php | 14 ++++++++++++ .../admin/views/pages/pages/index.blade.php | 3 +++ 4 files changed, 46 insertions(+), 9 deletions(-) diff --git a/beike/Admin/Http/Controllers/PagesController.php b/beike/Admin/Http/Controllers/PagesController.php index 1d912589..96bfdb20 100644 --- a/beike/Admin/Http/Controllers/PagesController.php +++ b/beike/Admin/Http/Controllers/PagesController.php @@ -55,9 +55,13 @@ class PagesController */ public function store(PageRequest $request) { - $requestData = $request->all(); - PageRepo::createOrUpdate($requestData); - return redirect()->to(admin_route('pages.index')); + try { + $requestData = $request->all(); + PageRepo::createOrUpdate($requestData); + return redirect(admin_route('pages.index')); + } catch (\Exception $e) { + return redirect(admin_route('pages.index'))->withErrors(['error' => $e->getMessage()]); + } } @@ -85,10 +89,14 @@ class PagesController */ public function update(PageRequest $request, int $pageId) { - $requestData = $request->all(); - $requestData['id'] = $pageId; - $page = PageRepo::createOrUpdate($requestData); - return redirect()->to(admin_route('pages.index')); + try { + $requestData = $request->all(); + $requestData['id'] = $pageId; + PageRepo::createOrUpdate($requestData); + return redirect()->to(admin_route('pages.index')); + } catch (\Exception $e) { + return redirect(admin_route('pages.index'))->withErrors(['error' => $e->getMessage()]); + } } diff --git a/beike/Admin/Repositories/PageRepo.php b/beike/Admin/Repositories/PageRepo.php index 39848dbf..5940e777 100644 --- a/beike/Admin/Repositories/PageRepo.php +++ b/beike/Admin/Repositories/PageRepo.php @@ -12,8 +12,7 @@ namespace Beike\Admin\Repositories; use Beike\Models\Page; -use Beike\Models\Product; -use Beike\Shop\Http\Resources\PageDetail; +use Illuminate\Support\Facades\DB; use Illuminate\Contracts\Pagination\LengthAwarePaginator; class PageRepo @@ -49,6 +48,19 @@ class PageRepo public static function createOrUpdate($data) + { + try { + DB::beginTransaction(); + $region = self::pushPage($data); + DB::commit(); + return $region; + } catch (\Exception $e) { + DB::rollBack(); + throw $e; + } + } + + public static function pushPage($data) { $id = $data['id'] ?? 0; if ($id) { diff --git a/beike/Admin/Repositories/RegionRepo.php b/beike/Admin/Repositories/RegionRepo.php index 2b9cb6b3..fcf4744a 100644 --- a/beike/Admin/Repositories/RegionRepo.php +++ b/beike/Admin/Repositories/RegionRepo.php @@ -12,6 +12,7 @@ namespace Beike\Admin\Repositories; use Beike\Models\Region; +use Illuminate\Support\Facades\DB; class RegionRepo { @@ -21,6 +22,19 @@ class RegionRepo } public static function createOrUpdate($data) + { + try { + DB::beginTransaction(); + $region = self::pushRegion($data); + DB::commit(); + return $region; + } catch (\Exception $e) { + DB::rollBack(); + throw $e; + } + } + + public static function pushRegion($data) { $id = $data['id'] ?? 0; if ($id) { diff --git a/resources/beike/admin/views/pages/pages/index.blade.php b/resources/beike/admin/views/pages/pages/index.blade.php index 73fbe993..12cd31ea 100644 --- a/resources/beike/admin/views/pages/pages/index.blade.php +++ b/resources/beike/admin/views/pages/pages/index.blade.php @@ -3,6 +3,9 @@ @section('title', '信息页面') @section('content') + + @dump($errors) +