1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- import { CrudSchema, useCrudSchemas } from '@/hooks/web/useCrudSchemas'
- import { DictTag } from '@/components/DictTag'
- import { TableColumn } from '@/types/table'
- import { dateFormatter } from '@/utils/formatTime'
- const { t } = useI18n() // 国际化
- // 表单校验
- export const rules = reactive({
- mail: [
- { required: true, message: t('profile.rules.mail'), trigger: 'blur' },
- {
- type: 'email',
- message: t('profile.rules.truemail'),
- trigger: ['blur', 'change']
- }
- ],
- username: [required],
- password: [required],
- host: [required],
- port: [required],
- sslEnable: [required]
- })
- // CrudSchema
- const crudSchemas = reactive<CrudSchema[]>([
- {
- label: '邮箱',
- field: 'mail',
- isSearch: true
- },
- {
- label: '用户名',
- field: 'username',
- isSearch: true
- },
- {
- label: '密码',
- field: 'password',
- isTable: false
- },
- {
- label: 'SMTP 服务器域名',
- field: 'host'
- },
- {
- label: 'SMTP 服务器端口',
- field: 'port',
- form: {
- component: 'InputNumber',
- value: 465
- }
- },
- {
- label: '是否开启 SSL',
- field: 'sslEnable',
- formatter: (_: Recordable, __: TableColumn, cellValue: boolean) => {
- return h(DictTag, {
- type: DICT_TYPE.INFRA_BOOLEAN_STRING,
- value: cellValue
- })
- }
- },
- {
- label: '创建时间',
- field: 'createTime',
- isForm: false,
- formatter: dateFormatter
- }
- ])
- export const { allSchemas } = useCrudSchemas(crudSchemas)
|