'desc', ]; public function __construct(App $app) { parent::__construct($app); $this->model = new \app\admin\model\NginxAccessLog(); } /** * @NodeAnotation(title="列表") */ public function index() { if ($this->request->isAjax()) { if (input('selectFields')) { return $this->selectList(); } list($page, $limit, $where, $excludes, $request_options, $group) = $this->buildTableParames(); $count = $this->model ->where($where) ->group($group) ->count(); $list = $this->model ->where($where) ->page($page, $limit) ->order($this->sort) ->group($group) ->select(); $data = [ 'code' => 0, 'msg' => '', 'count' => $count, 'data' => $list, ]; return json($data); } // 采集位置信息(合并自原"读取位置管理"独立页面) $positions = \app\admin\model\NginxLogPosition::order('id', 'desc')->select()->map(function ($item) { $bytes = (int) $item['offset']; if ($bytes >= 1048576) { $item['offset_human'] = number_format($bytes / 1048576, 2) . ' MB'; } elseif ($bytes >= 1024) { $item['offset_human'] = number_format($bytes / 1024, 2) . ' KB'; } else { $item['offset_human'] = $bytes . ' B'; } $item['last_read_time_text'] = $item['last_read_time'] > 0 ? date('Y-m-d H:i:s', (int) $item['last_read_time']) : '-'; return $item; }); $this->assign('positions', $positions); return $this->fetch(); } /** * @NodeAnotation(title="详情") */ public function read($id) { $row = $this->model->find($id); empty($row) && $this->error('数据不存在'); $this->assign('row', $row); return $this->fetch(); } /** * @NodeAnotation(title="添加") */ public function add() { $this->error('日志表不允许手动添加'); } /** * @NodeAnotation(title="编辑") */ public function edit($id) { $this->error('日志表不允许编辑'); } /** * @NodeAnotation(title="删除") */ public function delete($id) { $this->error('日志表不允许删除'); } /** * @NodeAnotation(title="属性修改") */ public function modify() { $this->error('日志表不允许修改'); } }