<?php


namespace app\common\util;

class Power
{
    /**
     * 获取一维权限列表
     * @param string $apCodes
     * @return array|mixed
     */
    public function getPowerList(string $apCodes = ""): mixed
    {
        $power = config('power');
        if (!empty($apCodes)) {
            foreach ($power as $k => $v) {
                if (strpos($apCodes, ',' . $v ['id'] . ',')) {
                    $power[$k]['checked'] = true;
                }
            }
        }
        return $power;
    }

    /**
     * 获取二维维权限列表
     * @param string $pkey
     * @param array $power
     * @return array
     */
    public function getPowerListV2(string $pkey, array $power): array
    {
        $resData = array();
        foreach ($power as $k => $v) {
            if ($pkey === $v['pId']) {
                unset($power[$k]);
                $resData['children'][] = array_merge($v, $this->getPowerListV2($v['id'], $power));
            }
        }
        return $resData;
    }
}