From b83d8aabfc0231e4fb4ac6835ab09d78065d2ff4 Mon Sep 17 00:00:00 2001 From: Edward Yang Date: Mon, 11 Jul 2022 20:53:34 +0800 Subject: [PATCH] add design builder --- .../Http/Controllers/DesignController.php | 33 ++++++++++++++++--- beike/Admin/Routes/admin.php | 2 ++ 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/beike/Admin/Http/Controllers/DesignController.php b/beike/Admin/Http/Controllers/DesignController.php index f85cd58f..ad97a485 100644 --- a/beike/Admin/Http/Controllers/DesignController.php +++ b/beike/Admin/Http/Controllers/DesignController.php @@ -2,11 +2,9 @@ namespace Beike\Admin\Http\Controllers; -use Beike\Models\Category; -use Beike\Repositories\CategoryRepo; -use Beike\Repositories\ProductRepo; -use Beike\Shop\Http\Resources\ProductList; +use Illuminate\View\View; use Illuminate\Http\Request; +use Beike\Repositories\SettingRepo; class DesignController extends Controller { @@ -18,4 +16,31 @@ class DesignController extends Controller ]; return view('design.builder.index', $data); } + + + /** + * @param Request $request + * @return array + */ + public function update(Request $request): array + { + $fields = [ + 'design_setting' => $request->get('design_setting') + ]; + SettingRepo::update('system', 'base', $fields); + return json_success("保存成功"); + } + + + /** + * @param Request $request + * @return View + */ + public function showModule(Request $request): View + { + $moduleName = $request->get('module'); + $content = $request->get('content'); + $viewPath = "design.module.{$moduleName}.render.index"; + return view($viewPath, $content); + } } diff --git a/beike/Admin/Routes/admin.php b/beike/Admin/Routes/admin.php index 26db5d4a..43e6dac4 100644 --- a/beike/Admin/Routes/admin.php +++ b/beike/Admin/Routes/admin.php @@ -15,6 +15,8 @@ Route::prefix('admin') Route::Resource('categories', \Beike\Admin\Http\Controllers\CategoryController::class); Route::get('design/builder', [\Beike\Admin\Http\Controllers\DesignController::class, 'index'])->name('design.index'); + Route::put('design/builder', [\Beike\Admin\Http\Controllers\DesignController::class, 'update'])->name('design.update'); + Route::put('design/builder/module', [\Beike\Admin\Http\Controllers\DesignController::class, 'showModule'])->name('design.module.show'); Route::Resource('files', \Beike\Admin\Http\Controllers\FileController::class);