<?php
/**
 * ===========================================================================
 * Veitool 快捷开发框架系统
 * Author: Niaho 26843818@qq.com
 * Copyright (c)2019-2025 www.veitool.com All rights reserved.
 * Licensed: 这不是一个自由软件，不允许对程序代码以任何形式任何目的的再发行
 * ---------------------------------------------------------------------------
 */

namespace app\model;

use think\facade\Db;
use think\Model;
use tool\Tree;

/**
 * 模型公用类
 */
class CertCategory extends Model
{

    public function catetree($cate_id = 0)
    {
        $map[] = ['is_del', '=', 0];
        $category = $this->where($map)->order('sort desc')->select()->toArray();

        $tree = new Tree();
        $tree->icon = ['&nbsp;&nbsp;│ ', '&nbsp;&nbsp;├─ ', '&nbsp;&nbsp;└─ '];
        $tree->nbsp = '&nbsp;&nbsp;';
        $str = "<option value=@id @selected @disabled>@spacer @title</option>";
        $tree->init($category);
        $categorydata = $tree->getTree(0, $str, $cate_id);
        return $categorydata;
    }
    public function getThumbpathAttr($value, $data)
    {
        return get_upload_file($data['thumb']);
    }

    public function children()
    {
        return $this->hasMany(CertCategory::class, 'pid');
    }

    public function getCertCategoryList()
    {
        $where[] = ['is_del', '=', 0];
        return $this->with(['children' => function($query) use($where) {
            $query->where($where);
            $query->order('sort', 'asc');
        }])
            ->where('pid', 0)
            ->where($where)
            ->order('sort', 'asc')
            ->select();

    }



}