form->text($field, $label) ->required() ->rules('required|max:100'); } /** * 添加开发工具描述输入 * * @param string $field 字段名 * @param string $label 标签名 * @return Field\Textarea */ public function textareaDevDescription(string $field = 'description', string $label = '描述'): Field\Textarea { return $this->form->textarea($field, $label) ->rows(3) ->rules('max:200'); } /** * 添加开发工具状态选择 * * @param string $field 字段名 * @param string $label 标签名 * @return Field\Select|Field\Radio */ public function selectDevStatus(string $field = 'status', string $label = '状态', bool $useRadio = true) { $options = DEV_STATUS::getAll(); if ($useRadio) { return $this->form->radio($field, $label) ->options($options) ->default(DEV_STATUS::ENABLED->value); } return $this->form->select($field, $label) ->options($options) ->default(DEV_STATUS::ENABLED->value); } /** * 添加开发日志类型选择 * * @param string $field 字段名 * @param string $label 标签名 * @return Field\Select */ public function selectDevLogType(string $field = 'type', string $label = '日志类型'): Field\Select { return $this->form->select($field, $label) ->options(DEV_LOG_TYPE::getAll()) ->default(DEV_LOG_TYPE::INFO->value) ->required(); } /** * 添加开发日志内容输入 * * @param string $field 字段名 * @param string $label 标签名 * @return Field\Textarea */ public function textareaDevLogContent(string $field = 'content', string $label = '日志内容'): Field\Textarea { return $this->form->textarea($field, $label) ->rows(5) ->required(); } /** * 添加开发日志额外数据输入 * * @param string $field 字段名 * @param string $label 标签名 * @return Field\Textarea */ public function textareaDevLogExtraData(string $field = 'extra_data', string $label = '额外数据'): Field\Textarea { return $this->form->textarea($field, $label) ->rows(5) ->help('请输入JSON格式的数据'); } /** * 添加开发配置键输入 * * @param string $field 字段名 * @param string $label 标签名 * @return Field\Text */ public function textDevConfigKey(string $field = 'key', string $label = '配置键'): Field\Text { return $this->form->text($field, $label) ->required() ->rules('required|max:100'); } /** * 添加开发配置值输入 * * @param string $field 字段名 * @param string $label 标签名 * @return Field\Textarea */ public function textareaDevConfigValue(string $field = 'value', string $label = '配置值'): Field\Textarea { return $this->form->textarea($field, $label) ->rows(5) ->required(); } /** * 添加开发配置描述输入 * * @param string $field 字段名 * @param string $label 标签名 * @return Field\Textarea */ public function textareaDevConfigDescription(string $field = 'description', string $label = '配置描述'): Field\Textarea { return $this->form->textarea($field, $label) ->rows(3) ->rules('max:200'); } }