【功能优化】邮件发送支持抄送和密送

pull/680/head
jinmh716 2025-01-24 11:20:22 +08:00
parent 2659165220
commit 58108d8828
3 changed files with 41 additions and 6 deletions

View File

@ -14,7 +14,9 @@ export interface MailTemplateVO {
} }
export interface MailSendReqVO { export interface MailSendReqVO {
mail: string toMails: string[]
ccMails: string[]
bccMails: string[]
templateCode: string templateCode: string
templateParams: Map<String, Object> templateParams: Map<String, Object>
} }

View File

@ -35,6 +35,14 @@ const crudSchemas = reactive<CrudSchema[]>([
label: '接收邮箱', label: '接收邮箱',
field: 'toMail' field: 'toMail'
}, },
{
label: '抄送邮箱',
field: 'ccMail'
},
{
label: '密送邮箱',
field: 'bccMail'
},
{ {
label: '用户编号', label: '用户编号',
field: 'userId', field: 'userId',

View File

@ -10,8 +10,29 @@
<el-form-item label="模板内容" prop="content"> <el-form-item label="模板内容" prop="content">
<Editor :model-value="formData.content" height="150px" readonly /> <Editor :model-value="formData.content" height="150px" readonly />
</el-form-item> </el-form-item>
<el-form-item label="收件邮箱" prop="mail"> <el-form-item label="收件邮箱" prop="toMails">
<el-input v-model="formData.mail" placeholder="请输入收件邮箱" /> <el-input-tag
v-model="formData.toMails"
trigger="Space"
tag-type="primary"
placeholder="请输入收件邮箱地址,空格隔开"
/>
</el-form-item>
<el-form-item label="抄送邮箱" prop="ccMails">
<el-input-tag
v-model="formData.ccMails"
trigger="Space"
tag-type="warning"
placeholder="请输入抄送邮箱地址,空格隔开"
/>
</el-form-item>
<el-form-item label="密送邮箱" prop="bccMails">
<el-input-tag
v-model="formData.bccMails"
trigger="Space"
tag-type="info"
placeholder="请输入密送邮箱地址,空格隔开"
/>
</el-form-item> </el-form-item>
<el-form-item <el-form-item
v-for="param in formData.params" v-for="param in formData.params"
@ -43,12 +64,14 @@ const formLoading = ref(false) // 表单的加载中1修改时的数据加
const formData = ref({ const formData = ref({
content: '', content: '',
params: {}, params: {},
mail: '', toMails: [],
ccMails: [],
bccMails: [],
templateCode: '', templateCode: '',
templateParams: new Map() templateParams: new Map()
}) })
const formRules = reactive({ const formRules = reactive({
mail: [{ required: true, message: '邮箱不能为空', trigger: 'blur' }], toMails: [{ required: true, message: '收件邮箱不能为空', trigger: 'blur' }],
templateCode: [{ required: true, message: '模版编号不能为空', trigger: 'blur' }], templateCode: [{ required: true, message: '模版编号不能为空', trigger: 'blur' }],
templateParams: {} templateParams: {}
}) })
@ -105,7 +128,9 @@ const resetForm = () => {
formData.value = { formData.value = {
content: '', content: '',
params: {}, params: {},
mail: '', toMails: [],
ccMails: [],
bccMails: [],
templateCode: '', templateCode: '',
templateParams: new Map() templateParams: new Map()
} }