11<template >
2- <LayoutContainer header =" 邮箱配置 " >
2+ <LayoutContainer : header =" $t('views.system.email.title') " >
33 <div class =" email-setting main-calc-height" >
44 <el-scrollbar >
55 <div class =" p-24" v-loading =" loading" >
1010 label-position =" top"
1111 require-asterisk-position =" right"
1212 >
13- <el-form-item label =" SMTP 主机" prop =" email_host" >
14- <el-input v-model =" form.email_host" placeholder =" 请输入 SMTP 主机" />
13+ <el-form-item :label =" $t('views.system.email.smtpHost')" prop =" email_host" >
14+ <el-input
15+ v-model =" form.email_host"
16+ :placeholder =" $t('views.system.email.smtpHostPlaceholder')"
17+ />
1518 </el-form-item >
16- <el-form-item label =" SMTP 端口" prop =" email_port" >
17- <el-input v-model =" form.email_port" placeholder =" 请输入 SMTP 端口" />
19+ <el-form-item :label =" $t('views.system.email.smtpPort')" prop =" email_port" >
20+ <el-input
21+ v-model =" form.email_port"
22+ :placeholder =" $t('views.system.email.smtpPortPlaceholder')"
23+ />
1824 </el-form-item >
19- <el-form-item label =" SMTP 账户" prop =" email_host_user" >
20- <el-input v-model =" form.email_host_user" placeholder =" 请输入 SMTP 账户" />
25+ <el-form-item :label =" $t('views.system.email.smtpUser')" prop =" email_host_user" >
26+ <el-input
27+ v-model =" form.email_host_user"
28+ :placeholder =" $t('views.system.email.smtpUserPlaceholder')"
29+ />
2130 </el-form-item >
22- <el-form-item label =" 发件人邮箱" prop =" from_email" >
23- <el-input v-model =" form.from_email" placeholder =" 请输入发件人邮箱" />
31+ <el-form-item :label =" $t('views.system.email.sendEmail')" prop =" from_email" >
32+ <el-input
33+ v-model =" form.from_email"
34+ :placeholder =" $t('views.system.email.sendEmailPlaceholder')"
35+ />
2436 </el-form-item >
25- <el-form-item label =" 密码 " prop =" email_host_password" >
37+ <el-form-item : label =" $t('views.system.email.smtpPassword') " prop =" email_host_password" >
2638 <el-input
2739 v-model =" form.email_host_password"
28- placeholder =" 请输入发件人密码 "
40+ : placeholder =" $t('views.system.email.smtpPasswordPlaceholder') "
2941 show-password
3042 />
3143 </el-form-item >
3244 <el-form-item >
3345 <el-checkbox v-model =" form.email_use_ssl"
34- >开启SSL(如果SMTP端口是465,通常需要启用SSL)
46+ >{{ $t('views.system.email.enableSSL') }}
3547 </el-checkbox >
3648 </el-form-item >
3749 <el-form-item >
3850 <el-checkbox v-model =" form.email_use_tls"
39- >开启TLS(如果SMTP端口是587,通常需要启用TLS)</ el-checkbox
40- >
51+ >{{ $t('views.system.email.enableTLS') }}
52+ </ el-checkbox >
4153 </el-form-item >
4254 <el-button @click =" submit(emailFormRef, 'test')" :disabled =" loading" >
43- 测试连接
55+ {{ $t('views.system.email.test') }}
4456 </el-button >
4557 </el-form >
4658
4759 <div class =" text-right" >
4860 <el-button @click =" submit(emailFormRef)" type =" primary" :disabled =" loading" >
49- {{ $t('common.save')}}
61+ {{ $t('common.save') }}
5062 </el-button >
5163 </div >
5264 </div >
@@ -60,6 +72,8 @@ import emailApi from '@/api/email-setting'
6072import type { FormInstance , FormRules } from ' element-plus'
6173
6274import { MsgSuccess } from ' @/utils/message'
75+ import { t } from ' @/locales'
76+
6377const form = ref <any >({
6478 email_host: ' ' ,
6579 email_port: ' ' ,
@@ -75,11 +89,21 @@ const emailFormRef = ref()
7589const loading = ref (false )
7690
7791const rules = reactive <FormRules <any >>({
78- email_host: [{ required: true , message: ' 请输入 SMTP 主机' , trigger: ' blur' }],
79- email_port: [{ required: true , message: ' 请输入 SMTP 端口' , trigger: ' blur' }],
80- email_host_user: [{ required: true , message: ' 请输入 SMTP 账户' , trigger: ' blur' }],
81- email_host_password: [{ required: true , message: ' 请输入发件人邮箱密码' , trigger: ' blur' }],
82- from_email: [{ required: true , message: ' 请输入发件人邮箱' , trigger: ' blur' }]
92+ email_host: [
93+ { required: true , message: t (' views.system.email.smtpHostPlaceholder' ), trigger: ' blur' }
94+ ],
95+ email_port: [
96+ { required: true , message: t (' views.system.email.smtpPortPlaceholder' ), trigger: ' blur' }
97+ ],
98+ email_host_user: [
99+ { required: true , message: t (' views.system.email.smtpUserPlaceholder' ), trigger: ' blur' }
100+ ],
101+ email_host_password: [
102+ { required: true , message: t (' views.system.email.smtpPasswordPlaceholder' ), trigger: ' blur' }
103+ ],
104+ from_email: [
105+ { required: true , message: t (' views.system.email.sendEmailPlaceholder' ), trigger: ' blur' }
106+ ]
83107})
84108
85109const submit = async (formEl : FormInstance | undefined , test ? : string ) => {
@@ -88,11 +112,11 @@ const submit = async (formEl: FormInstance | undefined, test?: string) => {
88112 if (valid ) {
89113 if (test ) {
90114 emailApi .postTestEmail (form .value , loading ).then ((res ) => {
91- MsgSuccess (' 测试连接成功 ' )
115+ MsgSuccess (t ( ' views.system.email.testSuccess ' ) )
92116 })
93117 } else {
94118 emailApi .putEmailSetting (form .value , loading ).then ((res ) => {
95- MsgSuccess (' 设置成功 ' )
119+ MsgSuccess (t ( ' common.saveSuccess ' ) )
96120 })
97121 }
98122 }
@@ -115,6 +139,7 @@ onMounted(() => {
115139.email-setting {
116140 width : 70% ;
117141 margin : 0 auto ;
142+
118143 :deep (.el-checkbox__label ) {
119144 font-weight : 400 ;
120145 }
0 commit comments