pageTitle = '育秧列表'; break; case 'daotian': $this->pageTitle = '稻田列表'; break; } $page = $this->basePage()->body([ \amisMake()->GridNav()->options( $this->regionList() ) ]); return $this->response()->success($page); } private function regionList(){ $regionList = [ [ 'id' => 1, 'name' => '实验田1', 'cover' => 'https://internal-amis-res.cdn.bcebos.com/images/icon-1.png' ] ]; return array_map(function($region){ return [ "icon"=> $region['cover'], "text"=> $region['name'], 'clickAction' => [ 'actionType'=> 'dialog', 'dialog' => \amisMake()->Dialog()->title($region['name']) ->size('full')->actions([])->body([ \amisMake()->Tabs()->tabsMode('simple')->name('detailTab')->tabs([ [ 'title' => '基地详情', 'value' => 'detail', 'tab'=>\amisMake()->Service()->schemaApi(admin_url('custom-region-detail?id='.$region['id'])), 'unmountOnExit' => true//每次切换tab都要销毁 ], [//有监控设备才有 'title' => '监控视频', 'value' => 'monitor', 'tab'=>\amisMake()->Service()->schemaApi(admin_url('custom-region-monitor?id='.$region['id'])), 'unmountOnExit' => true//每次切换tab都要销毁 ], [//有气象设备才有 'title' => '气象数据', 'value' => 'qixiang', 'tab'=>\amisMake()->Service()->schemaApi(admin_url('custom-region-meteorological?id='.$region['id'])), 'unmountOnExit' => true//每次切换tab都要销毁 ], [//有水质设备才有 'title' => '水质数据', 'value' => 'shuizi', 'tab'=>\amisMake()->Service()->schemaApi(admin_url('custom-region-water?id='.$region['id'])), 'unmountOnExit' => true//每次切换tab都要销毁 ], [//有土壤设备才有 'title' => '土壤数据', 'value' => 'turang', 'tab'=>\amisMake()->Service()->schemaApi(admin_url('custom-region-soil?id='.$region['id'])), 'unmountOnExit' => true//每次切换tab都要销毁 ], [//有通风设备才有 'title' => '通风设备', 'value' => 'air', 'tab'=>\amisMake()->Service()->schemaApi(admin_url('custom-region-air?id='.$region['id'])), 'unmountOnExit' => true//每次切换tab都要销毁 ], [//有喷灌设备才有 'title' => '喷灌设备', 'value' => 'wasserstrahl', 'tab'=>\amisMake()->Service()->schemaApi(admin_url('custom-region-wasserstrahl?id='.$region['id'])), 'unmountOnExit' => true//每次切换tab都要销毁 ], ]), ]) ] ]; }, $regionList); } public function regionDetail(Request $request) { $id = $request->id; $region = Region::find($id); return amisMake()->Grid()->columns([ amisMake()->Wrapper()->sm(4)->body([ amisMake()->Panel()->title('基础详情') ->subFormMode('horizontal') ->labelWidth(100) // ->headerClassName('text-white') ->body([ \amisMake()->TextControl()->static(true)->name('name')->label('名称')->value('试验田1'), \amisMake()->TextControl()->static(true)->name('name1')->label('负责人')->value('负责人'), \amisMake()->TextControl()->static(true)->name('category')->label('分类')->value($region->category?->name ?? ''), \amisMake()->TextControl()->static(true)->name('area')->label('面积m²')->value($region?->area ?? ''), \amisMake()->TextControl()->static(true)->name('sort')->label('排序')->value($region?->sort ?? '0'), \amisMake()->SwitchControl()->static(true)->name('is_enable')->name('is_enable')->label('显示')->value($region?->is_enable ?? 0), ]), amisMake()->Panel()->title('基础介绍') // ->headerClassName('text-white') ->body([ amisMake()->Tpl()->tpl($region?->content ?? '') ]) ]), amisMake()->Wrapper()->sm(8)->body([ amisMake()->Panel()->title('种植记录') // ->headerClassName('text-white') ->body([ \amisMake()->Button()->className('absolute top-1 right-4')->actionType('dialog')->label('新增')->dialog([ "title"=> "种植记录", "body"=> [ "type"=> "form", "api"=> "post:/amis/api/mock2/sample", "body"=> [ \amisMake()->TextControl()->label('作物名称'), \amisMake()->TextControl()->label('负责人'), \amisMake()->TextControl()->label('种植面积'), \amisMake()->DateControl()->label('种植时间'), ] ] ])->level('enhance'), \amisMake()->CRUDTable()->title('') ->data([ 'items' => [ [ 'name'=> '作物名称', 'name1'=> '负责人', 'area'=> '100', 'time1'=> '2023-03-21', ], [ 'name'=> '作物名称2', 'name1'=> '负责人', 'area'=> '100', 'time1'=> '2023-03-21', ] ] ]) ->columns([ amisMake()->TableColumn()->name('name')->label('名称'), amisMake()->TableColumn()->name('name1')->label('负责人'), amisMake()->TableColumn()->name('area')->label('种植面积'), amisMake()->TableColumn()->name('time1')->label('种植时间'), ]) ->itemAction([ 'type'=>'button', 'actionType'=>'dialog', 'dialog'=> \amisMake()->Dialog()->title('作物名称') ->size('full')->actions([])->body([ \amisMake()->Tabs()->tabsMode('simple')->name('detailTab')->tabs([ [ 'title' => '种植详情', 'value' => 'detail', 'tab'=>\amisMake()->Service()->schemaApi(admin_url('crop-plan-detail?id=')),//传id 'unmountOnExit' => true//每次切换tab都要销毁 ], [ 'title' => '报警记录', 'value' => 'warning', // 'tab'=>\amisMake()->Service()->schemaApi(admin_url('custom-region-detail?id='.$region['id'])), 'unmountOnExit' => true//每次切换tab都要销毁 ], [ 'title' => '虫情记录', 'value' => 'warning', // 'tab'=>\amisMake()->Service()->schemaApi(admin_url('custom-region-detail?id='.$region['id'])), 'unmountOnExit' => true//每次切换tab都要销毁 ], ]) ]) ]) // ->itemActions([ // \amisMake()->DialogAction()->label('新增收获')->level('link') // ]) ]) ]), ]); } }