<?php

namespace App\Modules\Mini\Controllers;

use App\Base\BaseController;
use App\Modules\Mini\Services\PageService;
use Faker\Provider\Image;

class PageController extends BaseController
{
    protected PageService $service;

    /**
     * @param PageService $service
     */
    public function __construct(PageService $service)
    {
        $this->service = $service;
    }

    public function filterConfig()
    {
        return $this->ok([
            [
                "id" => 1,
                "name" => "类目示例",
                "type" => "category",
                "child" => [
                    [
                        "id" => 1,
                        "name" => "名称",
                    ],
                ],
            ],
            [
                "id" => 1,
                "name" => "属性示例",
                "type" => "attr",
                "child" => [
                    [
                        "id" => 1,
                        "name" => "名称",
                    ],
                ],
            ],
        ]);
    }

    public function home()
    {
        return $this->ok([
            "banner" => $this->service->banner(),
            "categoryTree" => [
                [
                    "id" => 1,
                    "name" => "一级分类",
                    "child" => [
                        [
                            "id" => 1,
                            "name" => "二级分类",
                        ],
                    ],
                ],
            ],
            "hot_goods" => [
                [
                    "id" => 1,
                    "name" => "商品名称",
                    "thumb" => Image::imageUrl(),
                ],
            ],
            "recommend_goods" => [
                [
                    "id" => 1,
                    "name" => "商品名称",
                    "thumb" => Image::imageUrl(),
                ],
            ],
        ]);
    }

    public function categoryGoods()
    {
        return $this->ok([
            "total" => 1,
            "page_total" => 1,
            "list" => [
                [
                    "id" => 1,
                    "name" => "商品名称",
                    "thumb" => Image::imageUrl(),
                ],
            ],
        ]);
    }

    public function categoryTree()
    {
        return $this->ok([
            "categoryTree" => [
                [
                    "id" => 1,
                    "name" => "一级分类",
                    "child" => [
                        [
                            "id" => 1,
                            "name" => "二级分类",
                            "child" => [
                                [
                                    "id" => 1,
                                    "name" => "二级分类",
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ]);
    }
}