baseCRUD() ->filterTogglable(false) ->headerToolbar([ amis()->Button()->label('批量AI分析')->actionType('ajax')->api('POST:/admin-api/system-exceptions/batch-analyze'), ...$this->baseHeaderToolBar() ]) ->columns([ amis()->TableColumn('id', 'ID')->sortable(), amis()->TableColumn('type', '异常类型'), amis()->TableColumn('message', '异常信息')->type('text'), amis()->TableColumn('file', '文件路径'), amis()->TableColumn('line', '行号'), amis()->TableColumn('status', '状态') ->type('status') ->labels([ '未处理' => 'danger', '处理中' => 'warning', '已处理' => 'success', '忽略' => 'default' ]), amis()->TableColumn('solution', 'AI解决方案')->type('text'), amis()->TableColumn('handler', '处理人'), amis()->TableColumn('handled_at', '处理时间')->type('datetime'), amis()->TableColumn('created_at', '创建时间')->type('datetime')->sortable(), amis()->Operation()->label('操作')->buttons([ amis()->Button() ->label('AI分析') ->level('primary') ->actionType('ajax') ->api('POST:/admin-api/system-exceptions/${id}/analyze'), amis()->Button() ->label('标记处理') ->level('success') ->actionType('ajax') ->api('POST:/admin-api/system-exceptions/${id}/mark-handled'), amis()->Button() ->label('忽略') ->level('default') ->actionType('ajax') ->api('POST:/admin-api/system-exceptions/${id}/ignore'), ]) ]); return $this->baseList($crud); } public function detail() { return $this->baseDetail()->body([ amis()->TextControl('id', 'ID')->static(), amis()->TextControl('type', '异常类型')->static(), amis()->TextareaControl('message', '异常信息')->static(), amis()->TextControl('file', '文件路径')->static(), amis()->TextControl('line', '行号')->static(), amis()->TextareaControl('trace', '堆栈信息')->static(), amis()->JsonControl('request_data', '请求数据')->static(), amis()->TextControl('status', '状态')->static(), amis()->TextareaControl('solution', 'AI解决方案')->static(), amis()->TextControl('handler', '处理人')->static(), amis()->TextControl('handled_at', '处理时间')->static(), amis()->TextControl('created_at', '创建时间')->static(), ]); } }