diff --git a/beike/Admin/Http/Controllers/DesignController.php b/beike/Admin/Http/Controllers/DesignController.php index 96a82b4f..16a6eb56 100644 --- a/beike/Admin/Http/Controllers/DesignController.php +++ b/beike/Admin/Http/Controllers/DesignController.php @@ -19,7 +19,7 @@ class DesignController extends Controller public function index(Request $request): View { $data = [ - 'editors' => ['editor-slide_show', 'editor-image401', 'editor-tab_product', 'editor-image100'], + 'editors' => ['editor-slide_show', 'editor-image401', 'editor-tab_product', 'editor-image100', 'editor-brand'], 'languages' => LanguageRepo::all(), 'design_settings' => system_setting('base.design_setting'), ]; diff --git a/beike/Admin/View/DesignBuilders/Brand.php b/beike/Admin/View/DesignBuilders/Brand.php new file mode 100644 index 00000000..033a7272 --- /dev/null +++ b/beike/Admin/View/DesignBuilders/Brand.php @@ -0,0 +1,44 @@ + + * @created 2022-07-08 17:09:15 + * @modified 2022-07-08 17:09:15 + */ + +namespace Beike\Admin\View\DesignBuilders; + +use Illuminate\View\Component; +use Illuminate\Contracts\View\View; + +class Brand extends Component +{ + /** + * Create a new component instance. + * + * @return void + */ + public function __construct() + { + } + + /** + * Get the view / contents that represent the component. + * + * @return View + */ + public function render(): View + { + $data['register'] = [ + 'code' => 'brand', + 'sort' => 0, + 'name' => '品牌模块', + 'icon' => '', + ]; + + return view('admin::pages.design.module.brand', $data); + } +} diff --git a/beike/Services/DesignService.php b/beike/Services/DesignService.php index b43273f9..72f088d6 100644 --- a/beike/Services/DesignService.php +++ b/beike/Services/DesignService.php @@ -41,10 +41,10 @@ class DesignService { if ($moduleCode == 'slideshow') { return self::handleSlideShow($content); - } elseif ($moduleCode == 'image401') { - return self::handleImage401($content); - } elseif ($moduleCode == 'image100') { + } elseif (in_array($moduleCode, ['image401', 'image100'])) { return self::handleImage401($content); + } elseif ($moduleCode == 'brand') { + return self::handleBrand($content); } elseif ($moduleCode == 'tab_product') { return self::handleTabProducts($content); } @@ -70,6 +70,23 @@ class DesignService return $content; } + /** + * 处理 brand 模块 + * + * @param $content + * @return array + * @throws \Exception + */ + private static function handleBrand($content): array + { + $brands = $content['brands']; + + + $content['brands'] = []; + $content['title'] = $content['title'][current_language_code()]; + return $content; + } + /** * 处理 SlideShow 模块 diff --git a/resources/beike/admin/views/pages/design/module/brand.blade.php b/resources/beike/admin/views/pages/design/module/brand.blade.php new file mode 100644 index 00000000..8e17c3f2 --- /dev/null +++ b/resources/beike/admin/views/pages/design/module/brand.blade.php @@ -0,0 +1,63 @@ + + + diff --git a/themes/default/design/brand.blade.php b/themes/default/design/brand.blade.php new file mode 100644 index 00000000..092c5538 --- /dev/null +++ b/themes/default/design/brand.blade.php @@ -0,0 +1,25 @@ +
+ @if ($design) +
+
+
+
+
+
+
+
+ @endif + +
+
{{ $content['title'] }}
+
+
+ @for ($i = 0; $i < 8; $i++) +
+
+
+ @endfor +
+
+
+
\ No newline at end of file