<?php
namespace App\Admin\Controllers;

use App\Http\Controllers\Controller;
use App\Model\JmOcr;
use App\Model\LySymptom;
use Encore\Admin\Form;
use Encore\Admin\Grid;
use Encore\Admin\Facades\Admin;
use Encore\Admin\Layout\Content;
use Encore\Admin\Controllers\ModelForm;
use function Clue\StreamFilter\fun;

class JmOcrController extends Controller
{
    use ModelForm;
    public function index()
    {
        return Admin::content(function (Content $content) {
            $content->header('检验报告识别记录');
            $content->description('列表');
            $content->body($this->grid());
        });
    }

//    public function create()
//    {
//        return Admin::content(function (Content $content) {
//            $content->header('检验报告识别记录');
//            $content->description('新增');
//            $content->body($this->form());
//        });
//    }

    public function edit($id)
    {
        return Admin::content(function (Content $content) use ($id) {
            $content->header('检验报告识别记录');
            $content->description('列表');
            $content->body($this->form($id)->edit($id));
        });
    }

    protected function form($id = '')
    {
        return Admin::form(JmOcr::class, function (Form $form) {
            $form->display('id'          , '序号');
            $form->text('handled'        , '抽取数据')->required();
            $form->text('calculation'    , '最后结果')->required();
        });
    }

    // Grid
    protected function grid()
    {
        return Admin::grid(JmOcr::class, function (Grid $grid) {
            $grid->model()->orderBy('id','desc');
            $grid->id('编号')->sortable();
            $grid->handled('抽取数据')->display(function ($handled){
                return json_decode($handled,true);
            });
            $grid->calculation('最后结果')->display(function ($calculation){
                return json_decode($calculation,true);
            });
            // 禁用导出数据按钮
            $grid->actions(function ($actions) {
                $actions->disableView();
                $actions->disableEdit();
//                $actions->disableAdd();
            });
//            $grid->filter(function($filter){
//                // 去掉默认的id过滤器
//                $filter->disableIdFilter();
//                // 在这里添加字段过滤器
//                $filter->like('name'         , '输入症状关键字');
//            });
        });
    }
}