Files
sentcms/app/http/middleware/Api.php
2020-02-18 10:21:17 +08:00

54 lines
1.4 KiB
PHP

<?php
// +----------------------------------------------------------------------
// | SentCMS [ WE CAN DO IT JUST THINK IT ]
// +----------------------------------------------------------------------
// | Copyright (c) 2013 http://www.tensent.cn All rights reserved.
// +----------------------------------------------------------------------
// | Author: molong <molong@tensent.cn> <http://www.tensent.cn>
// +----------------------------------------------------------------------
namespace app\http\middleware;
use app\model\Config;
use app\model\Department;
use app\model\Dictionary;
use app\model\Firm;
use think\facade\Cache;
class Api {
protected $data = [];
public function handle($request, \Closure $next) {
$request->pageConfig = array(
'list_rows' => $request->param('limit', 30),
'page' => $request->param('page', 1),
);
$this->cacheData($request); //缓存基础数据
$response = $next($request);
if (is_array($response->getData())) {
$this->data = array_merge($this->data, $response->getData());
} else {
$this->data = $response->getData();
}
if ($request->isAjax()) {
return json($this->data);
} else {
if (\is_string($this->data) && $this->data != '') {
return $response;
} else {
return json($this->data);
}
}
}
public function cacheData($request) {
//缓存配置信息
$config = Cache::get('config');
if (!$config) {
Cache::set('config', Config::getConfigList($request));
}
}
}