|
|
|
@ -4,10 +4,17 @@
|
|
|
|
|
<template #header> |
|
|
|
|
<DrawerHeader :header="$t('setting.systemIP')" :back="handleClose" /> |
|
|
|
|
</template> |
|
|
|
|
<el-form ref="formRef" label-position="top" :model="form" @submit.prevent v-loading="loading"> |
|
|
|
|
<el-form |
|
|
|
|
ref="formRef" |
|
|
|
|
label-position="top" |
|
|
|
|
:model="form" |
|
|
|
|
:rules="rules" |
|
|
|
|
@submit.prevent |
|
|
|
|
v-loading="loading" |
|
|
|
|
> |
|
|
|
|
<el-row type="flex" justify="center"> |
|
|
|
|
<el-col :span="22"> |
|
|
|
|
<el-form-item :label="$t('setting.systemIP')" prop="systemIP" :rules="Rules.ipV4V6OrDomain"> |
|
|
|
|
<el-form-item :label="$t('setting.systemIP')" prop="systemIP"> |
|
|
|
|
<el-input clearable v-model="form.systemIP" /> |
|
|
|
|
<span class="input-help">{{ $t('commons.rule.hostHelper') }}</span> |
|
|
|
|
</el-form-item> |
|
|
|
@ -31,8 +38,8 @@ import i18n from '@/lang';
|
|
|
|
|
import { MsgSuccess } from '@/utils/message'; |
|
|
|
|
import { updateSetting } from '@/api/modules/setting'; |
|
|
|
|
import { FormInstance } from 'element-plus'; |
|
|
|
|
import { Rules } from '@/global/form-rules'; |
|
|
|
|
import DrawerHeader from '@/components/drawer-header/index.vue'; |
|
|
|
|
import { checkDomain, checkIpV4V6 } from '@/utils/util'; |
|
|
|
|
|
|
|
|
|
const emit = defineEmits<{ (e: 'search'): void }>(); |
|
|
|
|
|
|
|
|
@ -47,6 +54,18 @@ const form = reactive({
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
const formRef = ref<FormInstance>(); |
|
|
|
|
const rules = reactive({ |
|
|
|
|
systemIP: [{ validator: checkSystemIP, trigger: 'blur' }], |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
function checkSystemIP(rule: any, value: any, callback: any) { |
|
|
|
|
if (form.systemIP !== '') { |
|
|
|
|
if (checkIpV4V6(form.systemIP) && checkDomain(form.systemIP)) { |
|
|
|
|
return callback(new Error(i18n.global.t('commons.rule.host'))); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
callback(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
const acceptParams = (params: DialogProps): void => { |
|
|
|
|
form.systemIP = params.systemIP; |
|
|
|
|