diff --git a/src/views/trials/trials-panel/setting/email-manage/index.vue b/src/views/trials/trials-panel/setting/email-manage/index.vue index 8415ab25..6a452ed4 100644 --- a/src/views/trials/trials-panel/setting/email-manage/index.vue +++ b/src/views/trials/trials-panel/setting/email-manage/index.vue @@ -46,21 +46,7 @@ :label="$t('trials:emailManageCfg:title:SMTPServerPort')" prop="EmailSMTPServerPort" > - - - 465 - - - 25 - - + @@ -134,7 +120,27 @@ export default { EmailFromName: [{ required: true, message: this.$t('common:ruleMessage:specify') }], EmailAuthorizationCode: [{ required: true, message: this.$t('common:ruleMessage:specify') }], EmailSMTPServerAddress: [{ required: true, message: this.$t('common:ruleMessage:specify') }], - EmailSMTPServerPort: [{ required: true, message: this.$t('common:ruleMessage:select') }] + EmailSMTPServerPort: [{ required: true, message: this.$t('common:ruleMessage:specify') },{ + type: "number", + min: 1, + max: 65535, + message: this.$t("common:ruleMessage:portPattern"), + trigger: "blur", + }, + { + validator: (rule, value, callback) => { + if ( + value && + (String(value).includes(".") || + new RegExp(/\D/g).test(String(value))) + ) { + callback(new Error(this.$t("common:ruleMessage:portPattern"))); + } else { + callback(); + } + }, + trigger: "blur", + },] }, NODE_ENV: process.env.NODE_ENV, }