<?php

class Item_copy
{
    /**
     * Returns table name mapped in the model.
     *
     * @return string
     */
    public static function getSource()
    {
        return 'item_copy';
    }

    /**
     * 获取导出给客户端所需要的字段
     *
     * @return array
     */
    public static function getToClientColumns()
    {
         return [];
    }

    /**
     * 生成客户端需要的字段, 生成列表
     *
     * @return array
     */
    public static function getListForClient()
    {
        $data = [];
        if (empty(self::getToClientColumns())) {
            $data = array_values(self::getList());
        } else {
            foreach (self::getList() as $key => $value) {
                foreach ($value as $k => $v) {
                    if (!in_array($k, self::getToClientColumns())) {
                        unset($value[$k]);
                    }
                }
                $data[] = $value;
            }
        }
        return $data;
    }

    /**
     * 获取单条配置内容
     *
     * @return array
     */
    public static function get($configId)
    {
        return IConfig::get()->loadAppConfig(self::getSource(), $configId);
    }

    /**
     * 获取所有配置
     *
     * @return array
     */
    public static function getList()
    {
        return IConfig::get()->loadAppConfig(self::getSource());
    }
}
