SettingUpdateController.class.php 1.33 KB
<?php
/**
 * 更新管理助手筛选条件.(角色or岗位)
 *
 * author: gaoyaqiu
 */
namespace Apicp\Controller\Ranking;

use Common\Common\Cache;
use Common\Model\SettingModel;
use Common\Service\SettingService;

class SettingUpdateController extends AbstractController
{

    public function Index()
    {
        $serv = new SettingService();
        $cache = Cache::instance();
        $settingList = $cache->get('Common.AppSetting');

        $rank_filter = I('post.rank_filter');
        if(empty($rank_filter) && $rank_filter === '') {
            E('_ERR_EMPTY_POST');
            return false;
        }

        // 单位不在范围
        if ((int)$rank_filter != SettingModel::FILTER_ROLE && $rank_filter != (int)SettingModel::FILTER_JOB) {
            E('_ERR_POST_RANK_FILTER');
            return false;
        }

        if(!empty($settingList) && array_key_exists("rank_filter", $settingList)) {
            $data = array();
            $data['value'] = $rank_filter;
            $serv->update_by_conds(array('key' => 'rank_filter'), $data);

            // 更新缓存
            $cache->set('Common.AppSetting', null);
        } else {
            // 初始化最新数据
            $serv->initSetting();
        }

        $this->_result = array(
            'rank_filter' => $rank_filter
        );

        return true;
    }
}