model = model("ClientManageBlock");
$this->view->assign("typeList", $this->model->getTypeList($this->request->get('page_id')));
$pageList = collection(ClientManagePage::field('id,sex,name')->select())->toArray();
foreach ($pageList as $k => $v) {
$this->pageData[$v['id']] = $v['name'];
}
$this->view->assign('pageData', $this->pageData);
}
/*
* 查看
*/
public function index()
{
if ($this->request->isAjax()) {
$page_id = $this->request->get('page_id');
list($where, $sort, $order, $offset, $limit) = $this->buildparams();
$total = $this->model
->where($where)
->where('page_id', 'in', $page_id)
->order($sort, $order)
->count();
$list = $this->model
->where($where)
->where('page_id', 'in', $page_id)
->order($sort, $order)
->limit($offset, $limit)
->select();
foreach ($list as $k => &$v) {
$v['page_text'] = $this->pageData[$v['page_id']];
}
unset($v);
$result = array("total" => $total, "rows" => $list);
return json($result);
}
return $this->view->fetch();
}
public function add()
{
if ($this->request->isPost()) {
$params = $this->request->post('row/a');
if ($params) {
$result = $this->model->validate('ClientManageBlock.add')->save($params);
if ($result === false) {
$this->error($this->model->getError());
}
$this->model->save($params);
$this->success();
}
$this->error();
}
$this->view->assign('page_id', $this->request->get('page_id'));
return $this->view->fetch();
}
/**
* 清空缓存
*/
public function rmcache()
{
if ($this->request->get()) {
$redis = Redis::instance();
$key = $this->request->get('key');
switch ($key) {
case 'CP:1':
$position = '首页男频';
$redis->del('CRANK:1');
break;
case 'CP:2':
$position = '首页女频';
$redis->del('CRANK:2');
break;
case 'CP:3':
$position = '限免男频';
$redis->del('RANK:3');
break;
case 'CP:4':
$position = '限免女频';
$redis->del('CRANK:4');
break;
case 'keyword':
$position = '搜索框关键词';
Redis::delScan('CHS:*');
break;
case 'goods':
$position = '商品数据';
break;
case AdminConfig::CACHE_KEY_ADMIN_INFO:
$position = '标题及配置信息';
$key = AdminConfig::CACHE_KEY_ADMIN_INFO. $this->auth->id;
$redis->del('ADMIN');
break;
case 'GUIDE':
$position = '书籍推广列表缓存';
$key = 'GUIDE:' . $this->auth->id;
$redis->del($key);
break;
case 'referral':
$position = '导粉推广列表缓存';
$key = 'referral' . $this->auth->id;
$redis->del('referral');
break;
default:
break;
}
if (stristr($key, '*')) {
header("Content-Encoding: none\r\n");
echo str_pad("即将开始清除操作,脚本最大执行时间为10分钟,请耐心等待。
若触发超时异常错误,请联系技术处理!
正在清除中…… 时间:".date('Y-m-d H:i:s'),4096);
ob_flush();
flush();
ob_end_flush();
Redis::delScan($key);
} else {
$redis->del($key);
if ($redis->exists($key)) {
$this->error('清空缓存失败');
}
}
if (isset($position)) {
$this->success("已清空缓存位置:" . $position);
}else{
$this->success('清空缓存成功!');
}
}
}
}