baseCRUD()->tableLayout('fixed') ->headerToolbar([ amis()->LinkAction()->link(admin_url('/manages/create'))->label('新增')->icon('fa fa-add')->level('primary'), ...$this->baseHeaderToolBar(), ]) ->columns([ amis()->TableColumn('id', 'ID')->sortable(), amis()->TableColumn('name', '姓名'), amis()->TableColumn('company', '工作单位'), amis()->TableColumn('gender', '性别')->type('mapping')->map([ "1"=>"", "2"=>"", "*"=> '其他:${gender}' ])->filterable(['options'=>[ ['label'=>'男', 'value'=>1], ['label'=> '女', 'value'=>2] ]]), amis()->TableColumn('birthday', '出生年月'), amis()->TableColumn('educational_level', '学历学位'), amis()->TableColumn('technical_position', '专业技术职务'), amis()->TableColumn('strative_position', '行政职务'), amis()->TableColumn('political_face', '政治面貌'), amis()->TableColumn('subject', '学科门类'), amis()->TableColumn('research_direction', '研究方向'), amis()->TableColumn('address', '通讯地址(邮编)'), amis()->TableColumn('work_phone', '电话'), amis()->TableColumn('mobile_phone', '移动电话'), amis()->TableColumn('email', '邮箱'), amisMake()->Operation()->label(__('admin.actions'))->buttons([ $this->rowShowTypeButton('drawer', 'xl'), $this->rowEditButton(), $this->rowDeleteButton(), ]) ]); return $this->baseList($crud); } public function createManage() { $wizard = amis() ->Card() ->header(['title' => __('admin.create')]) ->toolbar([$this->backButton()]) ->body( amis()->Wizard()->className('min-h-screen') ->api($this->getStorePath()) ->steps([ amis()->WizardStep()->title('基本信息')->body([ amis()->FieldSetControl()->title('基础资料')->body([ amis()->GroupControl()->mode('horizontal')->body([ ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('name', '姓名')->required(true), Components::make()->cropImageControl('avatar', '寸照')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('nation', '民族')->required(true), amis()->RadiosControl('gender', '性别')->options([ '1'=>'男', '2'=>'女' ])->required(), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->DateControl('birthday', '出生年月')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('political_face', '政治面貌')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('educational_level', '学历学位')->required(true), amis()->TextControl('company', '工作单位')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('strative_position', '行政职务')->required(true), amis()->TextControl('technical_position', '专业技术职务')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('subject', '学科门类')->required(true), amis()->TextControl('research_direction', '研究方向')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('address', '通讯地址(邮编)')->required(true), amis()->TextControl('email', '个人邮箱')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('work_phone', '办公电话')->required(true), amis()->TextControl('mobile_phone', '移动电话')->required(true), ]), ]), amis()->FieldSetControl()->title('个人简历')->className('mt-10')->body([ amis()->TableControl('jobs', '')->columnsTogglable(false)->columns([ amis()->DateControl('start_at', '开始时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->DateControl('end_at', '截止时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('company', '工作单位以及所在部门')->required(true), amis()->TextControl('job_name', '职务、职称')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->FieldSetControl()->title('获奖情况')->className('mt-10')->body([ amis()->TableControl('ranks', '')->columnsTogglable(false)->columns([ amis()->TextControl('rank_name', '获奖名称')->required(true), amis()->TextControl('rank_cate', '获奖类别(等级)')->required(true), amis()->TextControl('rank_company', '授予单位')->required(true), amis()->DateControl('rank_at', '获奖时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('rank_lv', '本人排名')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]) ]), amis()->WizardStep()->title('科研项目情况')->body([ amis()->TableControl('projects', '')->columnsTogglable(false)->columns([ amis()->TextControl('project_name', '项目名称')->required(true), amis()->TextControl('project_source', '项目来源')->required(true), amis()->SelectControl('join_type', '主持或者参加')->options([ '1'=>'主持', '2'=>'参加' ])->required(true), amis()->DateControl('start_at', '开始时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->DateControl('end_at', '截止时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_name', '成果名称')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->WizardStep()->title('论著发表出版情况')->body([ amis()->TableControl('articles', '')->columnsTogglable(false)->columns([ amis()->TextControl('artcile_name', '论文或著作名称')->required(true), amis()->TextControl('press_name', '出版社/期刊/报纸')->required(true), amis()->YearControl('year', '年份')->valueFormat('YYYY')->required(true), amis()->TextControl('source_page', '期/卷/版/页')->required(true), amis()->TextControl('author_rank', '作者名次')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->WizardStep()->title('决策咨询情况')->body([ amis()->TableControl('consults', '')->columnsTogglable(false)->columns([ amis()->TextControl('consult_title', '决策咨询报告题目')->required(true), amis()->TextControl('consult_channel', '报送渠道')->required(true), amis()->SelectControl('join_type', '主持或者参加')->options([ '1'=>'主持', '2'=>'参加' ])->required(true), amis()->TextControl('leader_instruction', '领导批示')->required(true), amis()->DateControl('consult_at', '日期')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->WizardStep()->title('学术交流情况')->body([ amis()->TableControl('meetings', '')->columnsTogglable(false)->columns([ amis()->TextControl('meeting_name', '学术活动名称')->required(true), amis()->TextControl('meeting_company', '主办单位')->required(true), amis()->TextControl('meeting_cate', '类型')->required(true), amis()->DateControl('meeting_at', '日期')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_name', '成果名称')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->WizardStep()->title('社科普及项目情况')->body([ amis()->TableControl('socials', '')->columnsTogglable(false)->columns([ amis()->TextControl('social_name', '社科普及项目名称')->required(true), amis()->TextControl('social_company', '主办单位')->required(true), amis()->TextControl('social_cate', '类型')->required(true), amis()->DateControl('social_at', '日期')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_name', '成果名称')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->WizardStep()->title('其他注意事项')->body([ amis()->TextareaControl('others', '')->minRows(10)->placeholder('请填写其他注意事项,若无则无需填写'), ]), ]) ->redirect($this->getListPath()) ); $page = $this->basePage()->body($wizard); return $this->response()->success($page); } public function editManage() { $wizard = amis() ->Card() ->header(['title' => __('admin.create')]) ->toolbar([$this->backButton()]) ->body( amis()->Wizard()->className('min-h-screen') ->api($this->getUpdatePath())->initApi($this->getEditGetDataPath()) ->steps([ amis()->WizardStep()->title('基本信息')->body([ amis()->FieldSetControl()->title('基础资料')->body([ amis()->GroupControl()->mode('horizontal')->body([ ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('name', '姓名')->required(true), Components::make()->cropImageControl('avatar', '寸照')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('nation', '民族')->required(true), amis()->RadiosControl('gender', '性别')->options([ '1'=>'男', '2'=>'女' ])->required(), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->DateControl('birthday', '出生年月')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('political_face', '政治面貌')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('educational_level', '学历学位')->required(true), amis()->TextControl('company', '工作单位')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('strative_position', '行政职务')->required(true), amis()->TextControl('technical_position', '专业技术职务')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('subject', '学科门类')->required(true), amis()->TextControl('research_direction', '研究方向')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('address', '通讯地址(邮编)')->required(true), amis()->TextControl('email', '个人邮箱')->required(true), ]), amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('work_phone', '办公电话')->required(true), amis()->TextControl('mobile_phone', '移动电话')->required(true), ]), ]), amis()->FieldSetControl()->title('个人简历')->className('mt-10')->body([ amis()->TableControl('jobs', '')->columnsTogglable(false)->columns([ amis()->DateControl('start_at', '开始时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->DateControl('end_at', '截止时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('company', '工作单位以及所在部门')->required(true), amis()->TextControl('job_name', '职务、职称')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->FieldSetControl()->title('获奖情况')->className('mt-10')->body([ amis()->TableControl('ranks', '')->columnsTogglable(false)->columns([ amis()->TextControl('rank_name', '获奖名称')->required(true), amis()->TextControl('rank_cate', '获奖类别(等级)')->required(true), amis()->TextControl('rank_company', '授予单位')->required(true), amis()->DateControl('rank_at', '获奖时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('rank_lv', '本人排名')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]) ]), amis()->WizardStep()->title('科研项目情况')->body([ amis()->TableControl('projects', '')->columnsTogglable(false)->columns([ amis()->TextControl('project_name', '项目名称')->required(true), amis()->TextControl('project_source', '项目来源')->required(true), amis()->SelectControl('join_type', '主持或者参加')->options([ '1'=>'主持', '2'=>'参加' ])->required(true), amis()->DateControl('start_at', '开始时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->DateControl('end_at', '截止时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_name', '成果名称')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->WizardStep()->title('论著发表出版情况')->body([ amis()->TableControl('articles', '')->columnsTogglable(false)->columns([ amis()->TextControl('artcile_name', '论文或著作名称')->required(true), amis()->TextControl('press_name', '出版社/期刊/报纸')->required(true), amis()->YearControl('year', '年份')->valueFormat('YYYY')->required(true), amis()->TextControl('source_page', '期/卷/版/页')->required(true), amis()->TextControl('author_rank', '作者名次')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->WizardStep()->title('决策咨询情况')->body([ amis()->TableControl('consults', '')->columnsTogglable(false)->columns([ amis()->TextControl('consult_title', '决策咨询报告题目')->required(true), amis()->TextControl('consult_channel', '报送渠道')->required(true), amis()->SelectControl('join_type', '主持或者参加')->options([ '1'=>'主持', '2'=>'参加' ])->required(true), amis()->TextControl('leader_instruction', '领导批示')->required(true), amis()->DateControl('consult_at', '日期')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->WizardStep()->title('学术交流情况')->body([ amis()->TableControl('meetings', '')->columnsTogglable(false)->columns([ amis()->TextControl('meeting_name', '学术活动名称')->required(true), amis()->TextControl('meeting_company', '主办单位')->required(true), amis()->TextControl('meeting_cate', '类型')->required(true), amis()->DateControl('meeting_at', '日期')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_name', '成果名称')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->WizardStep()->title('社科普及项目情况')->body([ amis()->TableControl('socials', '')->columnsTogglable(false)->columns([ amis()->TextControl('social_name', '社科普及项目名称')->required(true), amis()->TextControl('social_company', '主办单位')->required(true), amis()->TextControl('social_cate', '类型')->required(true), amis()->DateControl('social_at', '日期')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_name', '成果名称')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->addable()->removable()->minLength(1) ]), amis()->WizardStep()->title('其他注意事项')->body([ amis()->TextareaControl('others', '')->minRows(10)->placeholder('请填写其他注意事项,若无则无需填写'), ]), ])->redirect($this->getListPath()) ); $page = $this->basePage()->body($wizard); return $this->response()->success($page); } public function form($isEdit = false): Form { return $this->baseForm()->body([ ]); } public function detail() { $form = amisMake()->form()->title('')->panelClassName('border-r border-t-0 border-b-0 border-l-0')->mode('horizontal') ->static(true)->actions([]) ->body([ amis()->FieldSetControl()->title('基本信息')->body([ amis()->GroupControl()->body([ amis()->Image()->type('static-image')->name('avatar')->label('寸照')->height('80px')->width('80px')->thumbMode('cover'), ]), amis()->GroupControl()->body([ amis()->StaticExactControl('name', '姓名')->copyable(['content'=>'${name}']), amis()->RadiosControl('gender', '性别')->options([ '1'=>'男', '2'=>'女' ]), ]), amis()->GroupControl()->body([ amis()->StaticExactControl('birthday', '出生年月'), amis()->StaticExactControl('political_face', '政治面貌'), ]), amis()->GroupControl()->body([ amis()->StaticExactControl('educational_level', '学历学位'), amis()->StaticExactControl('company', '工作单位'), ]), amis()->GroupControl()->body([ amis()->StaticExactControl('strative_position', '行政职务'), amis()->StaticExactControl('technical_position', '专业技术职务'), ]), amis()->GroupControl()->body([ amis()->StaticExactControl('subject', '学科门类'), amis()->StaticExactControl('research_direction', '研究方向'), ]), amis()->GroupControl()->body([ amis()->StaticExactControl('address', '通讯地址(邮编)'), amis()->StaticExactControl('email', '个人邮箱'), ]), amis()->GroupControl()->body([ amis()->StaticExactControl('work_phone', '办公电话'), amis()->StaticExactControl('mobile_phone', '移动电话'), ]), amis()->GroupControl()->body([ amis()->StaticExactControl('others', '其他注意事项'), ]), ]), ]); return amisMake()->Grid()->columns([ amis()->Column()->body($form)->md(6), amis()->Column()->body([ amis()->FieldSetControl()->title('个人简历')->body([ amis()->TableControl('jobs', '')->columnsTogglable(false)->columns([ amis()->DateControl('start_at', '开始时间')->valueFormat('YYYY-MM-DD'), amis()->DateControl('end_at', '截止时间')->valueFormat('YYYY-MM-DD'), amis()->TextControl('company', '工作单位以及所在部门'), amis()->TextControl('job_name', '职务、职称'), ])->needConfirm(false)->static() ]), amis()->FieldSetControl()->title('获奖情况')->body([ amis()->TableControl('ranks', '')->columnsTogglable(false)->columns([ amis()->TextControl('rank_name', '获奖名称'), amis()->TextControl('rank_cate', '获奖类别(等级)'), amis()->TextControl('rank_company', '授予单位'), amis()->DateControl('rank_at', '获奖时间')->valueFormat('YYYY-MM-DD'), amis()->TextControl('rank_lv', '本人排名'), ])->needConfirm(false)->static() ]), amis()->FieldSetControl()->title('科研项目情况')->body([ amis()->TableControl('projects', '')->columnsTogglable(false)->columns([ amis()->TextControl('project_name', '项目名称')->required(true), amis()->TextControl('project_source', '项目来源')->required(true), amis()->SelectControl('join_type', '主持或者参加')->options([ '1'=>'主持', '2'=>'参加' ])->required(true), amis()->DateControl('start_at', '开始时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->DateControl('end_at', '截止时间')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_name', '成果名称')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->static() ]), amis()->FieldSetControl()->title('论著发表出版情况')->body([ amis()->TableControl('articles', '')->columnsTogglable(false)->columns([ amis()->TextControl('artcile_name', '论文或著作名称')->required(true), amis()->TextControl('press_name', '出版社/期刊/报纸')->required(true), amis()->YearControl('year', '年份')->valueFormat('YYYY')->required(true), amis()->TextControl('source_page', '期/卷/版/页')->required(true), amis()->TextControl('author_rank', '作者名次')->required(true), ])->needConfirm(false)->static() ]), amis()->FieldSetControl()->title('决策咨询情况')->body([ amis()->TableControl('consults', '')->columnsTogglable(false)->columns([ amis()->TextControl('consult_title', '决策咨询报告题目')->required(true), amis()->TextControl('consult_channel', '报送渠道')->required(true), amis()->SelectControl('join_type', '主持或者参加')->options([ '1'=>'主持', '2'=>'参加' ])->required(true), amis()->TextControl('leader_instruction', '领导批示')->required(true), amis()->DateControl('consult_at', '日期')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->static() ]), amis()->FieldSetControl()->title('学术交流情况')->body([ amis()->TableControl('meetings', '')->columnsTogglable(false)->columns([ amis()->TextControl('meeting_name', '学术活动名称')->required(true), amis()->TextControl('meeting_company', '主办单位')->required(true), amis()->TextControl('meeting_cate', '类型')->required(true), amis()->DateControl('meeting_at', '日期')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_name', '成果名称')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->static() ]), amis()->FieldSetControl()->title('社科普及项目情况')->body([ amis()->TableControl('socials', '')->columnsTogglable(false)->columns([ amis()->TextControl('social_name', '社科普及项目名称')->required(true), amis()->TextControl('social_company', '主办单位')->required(true), amis()->TextControl('social_cate', '类型')->required(true), amis()->DateControl('social_at', '日期')->valueFormat('YYYY-MM-DD')->required(true), amis()->TextControl('result_name', '成果名称')->required(true), amis()->TextControl('result_use', '成果转化')->required(true), ])->needConfirm(false)->static() ]), ])->md(6), ]); } public function detailActions() { return [ //返回 amis()->Button()->actionType('cancel')->label(__('admin.back'))->primary() ]; } }