|
@@ -3,19 +3,22 @@
|
|
|
custom-class="email-dialog">
|
|
custom-class="email-dialog">
|
|
|
<el-form ref="emailForm" :model="formData" :rules="formRules" label-width="80px" label-position="right">
|
|
<el-form ref="emailForm" :model="formData" :rules="formRules" label-width="80px" label-position="right">
|
|
|
<el-form-item label="收件人" prop="to">
|
|
<el-form-item label="收件人" prop="to">
|
|
|
- <el-input v-model="formData.to" placeholder="多个收件人用分号(;)分隔" clearable></el-input>
|
|
|
|
|
|
|
+ <!-- <el-input v-model="formData.to" placeholder="多个收件人用分号(;)分隔" clearable></el-input> -->
|
|
|
|
|
+ <dic-select v-model="formData.to" placeholder="收件人" label="recipientUrl"
|
|
|
|
|
+ url="/blade-los/emailaddress/listAll" :filterable="true" :multiple="true" :collapseTags="false"
|
|
|
|
|
+ :allowCreate="true" dataType="string" :slotRight="true" rightLabel="recipientName"></dic-select>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="抄送" prop="cc">
|
|
<el-form-item label="抄送" prop="cc">
|
|
|
- <el-input v-model="formData.cc" placeholder="多个抄送人用分号(;)分隔" clearable></el-input>
|
|
|
|
|
|
|
+ <el-input v-model="formData.cc" placeholder="多个抄送人用分号(;)分隔" clearable size="small"></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
|
|
|
|
- <el-form-item label="密送" prop="bcc">
|
|
|
|
|
|
|
+ <!-- <el-form-item label="密送" prop="bcc">
|
|
|
<el-input v-model="formData.bcc" placeholder="多个密送人用分号(;)分隔" clearable></el-input>
|
|
<el-input v-model="formData.bcc" placeholder="多个密送人用分号(;)分隔" clearable></el-input>
|
|
|
- </el-form-item>
|
|
|
|
|
|
|
+ </el-form-item> -->
|
|
|
|
|
|
|
|
<el-form-item label="主题" prop="subject">
|
|
<el-form-item label="主题" prop="subject">
|
|
|
- <el-input v-model="formData.subject" placeholder="请输入邮件主题" clearable></el-input>
|
|
|
|
|
|
|
+ <el-input v-model="formData.subject" placeholder="请输入邮件主题" clearable size="small"></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="正文" prop="content">
|
|
<el-form-item label="正文" prop="content">
|
|
@@ -23,7 +26,7 @@
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="附件">
|
|
<el-form-item label="附件">
|
|
|
- <el-input v-model="formData.attachments" placeholder="请输入文件名" clearable></el-input>
|
|
|
|
|
|
|
+ <el-input v-model="formData.attachments" placeholder="请输入文件名" clearable size="small"></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
|
|
|
|
<el-form-item label="文件中心">
|
|
<el-form-item label="文件中心">
|
|
@@ -43,7 +46,8 @@
|
|
|
|
|
|
|
|
<script>
|
|
<script>
|
|
|
import { getToken } from "@/util/auth";
|
|
import { getToken } from "@/util/auth";
|
|
|
-import { generateMailFile } from "@/api/iosBasicData/reports";
|
|
|
|
|
|
|
+import dicSelect from "@/components/dicSelect/main";
|
|
|
|
|
+import { generateMailFile, getDetail } from "@/api/iosBasicData/reports";
|
|
|
|
|
|
|
|
|
|
|
|
|
export default {
|
|
export default {
|
|
@@ -54,13 +58,16 @@ export default {
|
|
|
default: false
|
|
default: false
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
|
|
+ components: {
|
|
|
|
|
+ dicSelect
|
|
|
|
|
+ },
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
dialogVisible: this.visible,
|
|
dialogVisible: this.visible,
|
|
|
sending: false,
|
|
sending: false,
|
|
|
options: {
|
|
options: {
|
|
|
//普通上传地址
|
|
//普通上传地址
|
|
|
- action: "/api/blade-resource/oss/endpoint/put-file",
|
|
|
|
|
|
|
+ action: "/api/blade-resource/oss/endpoint/put-file-mail",
|
|
|
customConfig: {
|
|
customConfig: {
|
|
|
menus: [
|
|
menus: [
|
|
|
'head',
|
|
'head',
|
|
@@ -86,7 +93,7 @@ export default {
|
|
|
headers: { "Blade-Auth": "Bearer " + getToken() },
|
|
headers: { "Blade-Auth": "Bearer " + getToken() },
|
|
|
props: {
|
|
props: {
|
|
|
res: "data",
|
|
res: "data",
|
|
|
- url: 'link'
|
|
|
|
|
|
|
+ url: 'url'
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
formData: {
|
|
formData: {
|
|
@@ -103,11 +110,11 @@ export default {
|
|
|
formRules: {
|
|
formRules: {
|
|
|
to: [
|
|
to: [
|
|
|
{ required: true, message: '请输入收件人邮箱', trigger: 'blur' },
|
|
{ required: true, message: '请输入收件人邮箱', trigger: 'blur' },
|
|
|
- {
|
|
|
|
|
- validator: this.validateEmails,
|
|
|
|
|
- message: '邮箱格式不正确',
|
|
|
|
|
- trigger: 'blur'
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ // {
|
|
|
|
|
+ // validator: this.validateEmails,
|
|
|
|
|
+ // message: '邮箱格式不正确',
|
|
|
|
|
+ // trigger: 'blur'
|
|
|
|
|
+ // }
|
|
|
],
|
|
],
|
|
|
subject: [
|
|
subject: [
|
|
|
{ required: true, message: '请输入邮件主题', trigger: 'blur' },
|
|
{ required: true, message: '请输入邮件主题', trigger: 'blur' },
|
|
@@ -167,7 +174,15 @@ export default {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
|
|
+ created() {
|
|
|
|
|
+ this.getDetail()
|
|
|
|
|
+ },
|
|
|
methods: {
|
|
methods: {
|
|
|
|
|
+ getDetail() {
|
|
|
|
|
+ getDetail(JSON.parse(localStorage.getItem('sysitemData')).id).then(res => {
|
|
|
|
|
+ this.formData.content = res.data.data.emailSignature
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
validateEmails(rule, value, callback) {
|
|
validateEmails(rule, value, callback) {
|
|
|
if (!value) return callback()
|
|
if (!value) return callback()
|
|
|
|
|
|
|
@@ -200,14 +215,14 @@ export default {
|
|
|
let param = {
|
|
let param = {
|
|
|
fileName: this.formData.attachments,
|
|
fileName: this.formData.attachments,
|
|
|
fileType: nowFile.value,
|
|
fileType: nowFile.value,
|
|
|
- sendTo: this.formData.to,
|
|
|
|
|
|
|
+ sendTo: this.formData.to(",\n", ";"),
|
|
|
mailTitle: this.formData.subject,
|
|
mailTitle: this.formData.subject,
|
|
|
mailContent: this.formData.content,
|
|
mailContent: this.formData.content,
|
|
|
fileContent: this.formData.fileContent,
|
|
fileContent: this.formData.fileContent,
|
|
|
fileContentStr: '',
|
|
fileContentStr: '',
|
|
|
sendCc: this.formData.cc,
|
|
sendCc: this.formData.cc,
|
|
|
sendBcc: this.formData.bcc,
|
|
sendBcc: this.formData.bcc,
|
|
|
- fileList:files
|
|
|
|
|
|
|
+ fileList: files
|
|
|
}
|
|
}
|
|
|
if (fileContentStrList.indexOf(this.formData.fileType) !== -1) {
|
|
if (fileContentStrList.indexOf(this.formData.fileType) !== -1) {
|
|
|
param.fileContent = null
|
|
param.fileContent = null
|
|
@@ -226,7 +241,7 @@ export default {
|
|
|
resetForm() {
|
|
resetForm() {
|
|
|
this.$refs.emailForm.resetFields()
|
|
this.$refs.emailForm.resetFields()
|
|
|
this.formData.attachments = ''
|
|
this.formData.attachments = ''
|
|
|
- this.formData.filesList=[]
|
|
|
|
|
|
|
+ this.formData.filesList = []
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -252,7 +267,7 @@ export default {
|
|
|
padding: 20px 30px;
|
|
padding: 20px 30px;
|
|
|
|
|
|
|
|
.el-form-item {
|
|
.el-form-item {
|
|
|
- margin-bottom: 22px;
|
|
|
|
|
|
|
+ margin-bottom: 0px;
|
|
|
|
|
|
|
|
.el-form-item__label {
|
|
.el-form-item__label {
|
|
|
color: #666;
|
|
color: #666;
|
|
@@ -269,6 +284,10 @@ export default {
|
|
|
box-shadow: 0 0 0 2px rgba(64, 158, 255, 0.2);
|
|
box-shadow: 0 0 0 2px rgba(64, 158, 255, 0.2);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ .el-form-item__error {
|
|
|
|
|
+ display: none;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|