Browse Source

【市北代码迁移至安宁】【消息管理】-王公峰-2020-09-17

redesign
wanggongfeng 5 years ago
parent
commit
b5b69fa4f4
  1. 37
      src/views/modules/message/mail-log.vue
  2. 6
      src/views/modules/message/mail-template-add-or-update.vue
  3. 15
      src/views/modules/message/mail-template-send.vue
  4. 19
      src/views/modules/message/mail-template.vue
  5. 21
      src/views/modules/message/sms.vue
  6. 23
      src/views/modules/message/smslog.vue
  7. 8
      src/views/modules/message/smstemplate-add-or-update.vue
  8. 28
      src/views/modules/message/smstemplate.vue

37
src/views/modules/message/mail-log.vue

@ -1,21 +1,21 @@
<template>
<el-card shadow="never" class="aui-card--fill">
<div class="mod-message__mail-log">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item>
<el-input v-model="dataForm.templateId" :placeholder="$t('mail.templateId')" clearable></el-input>
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataListSearch()">
<el-form-item :label="$t('mail.templateId')">
<el-input v-model="dataForm.templateId" :placeholder="$t('mail.templateId')" clearable @keyup.native="btKeyUpTemplateId"></el-input>
</el-form-item>
<el-form-item>
<el-input v-model="dataForm.mailTo" :placeholder="$t('mail.mailTo')" clearable></el-input>
<el-form-item :label="$t('mail.mailTo')">
<el-input v-model="dataForm.mailTo" :placeholder="$t('mail.mailTo')" clearable @keyup.native="btKeyUpMailTo"></el-input>
</el-form-item>
<el-form-item>
<el-form-item :label="$t('mail.status')">
<el-select v-model="dataForm.status" :placeholder="$t('mail.status')" clearable>
<el-option :label="$t('mail.status1')" :value="1"></el-option>
<el-option :label="$t('mail.status0')" :value="0"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
<el-button type="success" @click="getDataListSearch()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button type="danger" @click="deleteHandle()">{{ $t('deleteBatch') }}</el-button>
@ -29,12 +29,13 @@
@sort-change="dataListSortChangeHandle"
style="width: 100%;">
<el-table-column type="selection" header-align="center" align="center" width="50"></el-table-column>
<el-table-column prop="templateId" :label="$t('mail.templateId')" sortable="custom" header-align="center" align="center"></el-table-column>
<el-table-column prop="mailFrom" :label="$t('mail.mailFrom')" header-align="center" align="center"></el-table-column>
<el-table-column prop="mailTo" :label="$t('mail.mailTo')" header-align="center" align="center"></el-table-column>
<el-table-column prop="mailCc" :label="$t('mail.mailCc')" header-align="center" align="center"></el-table-column>
<el-table-column prop="subject" :label="$t('mail.subject')" header-align="center" align="center"></el-table-column>
<el-table-column prop="status" :label="$t('mail.status')" sortable="custom" header-align="center" align="center">
<el-table-column type="index" label="序号" header-align="center" align="center" width="50"></el-table-column>
<el-table-column prop="templateId" :label="$t('mail.templateId')" sortable="custom" header-align="center" align="center" min-width="150" show-overflow-tooltip></el-table-column>
<el-table-column prop="mailFrom" :label="$t('mail.mailFrom')" header-align="center" align="center" min-width="150" show-overflow-tooltip></el-table-column>
<el-table-column prop="mailTo" :label="$t('mail.mailTo')" header-align="center" align="center" min-width="150" show-overflow-tooltip></el-table-column>
<el-table-column prop="mailCc" :label="$t('mail.mailCc')" header-align="center" align="center" min-width="120" show-overflow-tooltip></el-table-column>
<el-table-column prop="subject" :label="$t('mail.subject')" header-align="center" align="center" min-width="120" show-overflow-tooltip></el-table-column>
<el-table-column prop="status" :label="$t('mail.status')" sortable="custom" header-align="center" align="center" width="120">
<template slot-scope="scope">
<el-tag v-if="scope.row.status === 1" size="small">{{ $t('mail.status1') }}</el-tag>
<el-tag v-else size="small" type="danger">{{ $t('mail.status0') }}</el-tag>
@ -78,6 +79,16 @@ export default {
status: null
}
}
},
methods: {
btKeyUpTemplateId (e) {
      e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
      this.dataForm.templateId= e.target.value
    },
btKeyUpMailTo (e) {
      e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
      this.dataForm.mailTo= e.target.value
    }
}
}
</script>

6
src/views/modules/message/mail-template-add-or-update.vue

@ -1,11 +1,11 @@
<template>
<el-dialog :visible.sync="visible" :title="!dataForm.id ? $t('add') : $t('update')" :close-on-click-modal="false" :close-on-press-escape="false">
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" label-width="120px">
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" label-width="60px">
<el-form-item prop="name" :label="$t('mail.name')">
<el-input v-model="dataForm.name" :placeholder="$t('mail.name')"></el-input>
<el-input v-model="dataForm.name" :placeholder="$t('mail.name')" maxlength="100"></el-input>
</el-form-item>
<el-form-item prop="subject" :label="$t('mail.subject')">
<el-input v-model="dataForm.subject" :placeholder="$t('mail.subject')"></el-input>
<el-input v-model="dataForm.subject" :placeholder="$t('mail.subject')" maxlength="200"></el-input>
</el-form-item>
<el-form-item prop="content" :label="$t('mail.content')">
<!-- 富文本编辑器, 容器 -->

15
src/views/modules/message/mail-template-send.vue

@ -41,10 +41,25 @@ export default {
}
callback()
}
var validateEmailCc = (rule, value, callback) => {
if (value === null || value === '') {
//
callback()
} else if (!isEmail(value)) {
//
return callback(new Error(this.$t('validate.format', { 'attr': this.$t('user.email') })))
} else {
callback()
}
}
return {
mailTo: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' },
{ validator: validateEmail, trigger: 'blur' }
],
mailCc: [
{ required: false, message: this.$t('validate.required'), trigger: 'blur' },
{ validator: validateEmailCc, trigger: 'blur' }
]
}
}

19
src/views/modules/message/mail-template.vue

@ -1,12 +1,12 @@
<template>
<el-card shadow="never" class="aui-card--fill">
<div class="mod-message__mail-template">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item>
<el-input v-model="dataForm.name" :placeholder="$t('mail.name')" clearable></el-input>
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataListSearch()">
<el-form-item label="模板名称">
<el-input v-model="dataForm.name" :placeholder="$t('mail.name')" clearable @keyup.native="btKeyUpName"></el-input>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
<el-button type="success" @click="getDataListSearch()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button>
@ -26,8 +26,9 @@
@sort-change="dataListSortChangeHandle"
style="width: 100%;">
<el-table-column type="selection" header-align="center" align="center" width="50"></el-table-column>
<el-table-column prop="name" :label="$t('mail.name')" header-align="center" align="center"></el-table-column>
<el-table-column prop="subject" :label="$t('mail.subject')" header-align="center" align="center"></el-table-column>
<el-table-column type="index" label="序号" header-align="center" align="center" width="50"></el-table-column>
<el-table-column prop="name" :label="$t('mail.name')" header-align="center" align="center" show-overflow-tooltip></el-table-column>
<el-table-column prop="subject" :label="$t('mail.subject')" header-align="center" align="center" show-overflow-tooltip></el-table-column>
<el-table-column prop="createDate" :label="$t('mail.createDate')" sortable="custom" header-align="center" align="center" width="180"></el-table-column>
<el-table-column :label="$t('handle')" fixed="right" header-align="center" align="center" width="150">
<template slot-scope="scope">
@ -98,7 +99,11 @@ export default {
this.$refs.send.dataForm.id = id
this.$refs.send.init()
})
}
},
btKeyUpName (e) {
      e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
      this.dataForm.name = e.target.value
    }
}
}
</script>

21
src/views/modules/message/sms.vue

@ -1,21 +1,21 @@
<template>
<el-card shadow="never" class="aui-card--fill">
<div class="mod-message__sms">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item>
<el-input v-model="dataForm.mobile" :placeholder="$t('sms.mobile')" clearable></el-input>
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataListSearch ()">
<el-form-item label="手机号">
<el-input v-model="dataForm.mobile" :placeholder="$t('sms.mobile')" clearable @keyup.native="btKeyUpMobile"></el-input>
</el-form-item>
<el-form-item>
<el-form-item label="状态">
<el-select v-model="dataForm.status" :placeholder="$t('sms.status')" clearable>
<el-option :label="$t('sms.status1')" :value="1"></el-option>
<el-option :label="$t('sms.status0')" :value="0"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
<el-button type="success" @click="getDataListSearch ()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="configHandle()">{{ $t('sms.config') }}</el-button>
<el-button type="primary" @click="configHandle()">{{ $t('sms.config') }}</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="sendHandle()">{{ $t('sms.send') }}</el-button>
@ -32,7 +32,8 @@
@sort-change="dataListSortChangeHandle"
style="width: 100%;">
<el-table-column type="selection" header-align="center" align="center" width="50"></el-table-column>
<el-table-column prop="platform" :label="$t('sms.platform')" sortable="custom" header-align="center" align="center">
<el-table-column type="index" label="序号" header-align="center" align="center" width="50"></el-table-column>
<el-table-column prop="platform" :label="$t('sms.platform')" sortable="custom" header-align="center" width="120" align="center">
<template slot-scope="scope">
{{ scope.row.platform === 1 ? $t('sms.platform1') : scope.row.platform === 2 ? $t('sms.platform2') : '' }}
</template>
@ -112,7 +113,11 @@ export default {
this.$nextTick(() => {
this.$refs.send.init()
})
}
},
btKeyUpMobile (e) {
      e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
      this.dataForm.mobile= e.target.value
    }
}
}
</script>

23
src/views/modules/message/smslog.vue

@ -1,9 +1,9 @@
<template>
<el-card shadow="never" class="aui-card--fill">
<div class="mod-message__smslog}">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataListSearch()">
<el-form-item label="手机号" prop="mobile">
<el-input v-model="dataForm.mobile" placeholder="手机号" clearable></el-input>
<el-input v-model="dataForm.mobile" placeholder="手机号" clearable @keyup.native="btKeyUpMobile"></el-input>
</el-form-item>
<el-form-item label="发送状态" prop="status">
<el-select v-model="dataForm.status" placeholder="发送状态" clearable>
@ -24,11 +24,11 @@
</el-select>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
<el-button type="success" @click="getDataListSearch()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<!-- <el-button v-if="$hasPermission('message:smslog:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> -->
<el-button v-if=false type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button>
<el-button v-if=false type="success" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button>
</el-form-item>
<el-form-item>
<el-button v-if=false type="danger" @click="deleteHandle()">{{ $t('deleteBatch') }}</el-button>
@ -36,16 +36,17 @@
</el-form>
<el-table v-loading="dataListLoading" :data="dataList" border @selection-change="dataListSelectionChangeHandle" style="width: 100%;">
<el-table-column v-if=false type="selection" header-align="center" align="center" width="50"></el-table-column>
<el-table-column type="index" label="序号" header-align="center" align="center" width="50"></el-table-column>
<el-table-column prop="platform" label="平台类型" header-align="center" align="center" :formatter="showPlatform"></el-table-column>
<el-table-column prop="mobile" label="手机号" header-align="center" align="center"></el-table-column>
<el-table-column prop="mobile" label="手机号" header-align="center" align="center" width="120"></el-table-column>
<el-table-column prop="status" label="发送状态" header-align="center" align="center" :formatter="showStatus"></el-table-column>
<el-table-column prop="templateTypeName" label="模板类型" header-align="center" align="center"></el-table-column>
<el-table-column prop="templateTypeName" label="模板类型" header-align="center" align="center" min-width="150" show-overflow-tooltip></el-table-column>
<el-table-column prop="params1" label="参数1" header-align="center" align="center"></el-table-column>
<el-table-column prop="params2" label="参数2" header-align="center" align="center"></el-table-column>
<el-table-column prop="params3" label="参数3" header-align="center" align="center"></el-table-column>
<el-table-column prop="params4" label="参数4" header-align="center" align="center"></el-table-column>
<el-table-column prop="createdTime" label="发送时间" header-align="center" align="center"></el-table-column>
<el-table-column v-if=false prop="updatedTime" label="更新时间" header-align="center" align="center"></el-table-column>
<el-table-column prop="createdTime" label="发送时间" header-align="center" align="center" width="180"></el-table-column>
<el-table-column v-if=false prop="updatedTime" label="更新时间" header-align="center" align="center" width="180"></el-table-column>
<el-table-column v-if=false :label="$t('handle')" fixed="right" header-align="center" align="center" width="150">
<template slot-scope="scope">
<el-button type="text" size="small" @click="smslogDetailHandle(scope.row.id)">查看</el-button>
@ -139,7 +140,11 @@ export default {
this.$refs.smslogDetail.dataForm.id = smslogId
this.$refs.smslogDetail.init()
})
}
},
btKeyUpMobile (e) {
      e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
      this.dataForm.mobile= e.target.value
    }
}
}
</script>

8
src/views/modules/message/smstemplate-add-or-update.vue

@ -1,6 +1,6 @@
<template>
<el-dialog :visible.sync="visible" :title="!dataForm.id ? $t('smstemplate.add') : $t('smstemplate.update')" :close-on-click-modal="false" :close-on-press-escape="false">
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'">
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'">
<el-form-item label="模板类型" prop="templateType">
<el-select v-model="dataForm.templateType" placeholder="模板类型" @change="selectModel($event)">
<el-option v-for="item in paramNameArr" :key="item.dictValue" :label="item.dictName" :value="item.dictValue" >
@ -14,13 +14,13 @@
</el-select>
</el-form-item>
<el-form-item label="短信签名" prop="signName">
<el-input v-model="dataForm.signName" placeholder="短信签名"></el-input>
<el-input v-model="dataForm.signName" placeholder="短信签名" maxlength="2000"></el-input>
</el-form-item>
<el-form-item label="短信模板" prop="template">
<el-input v-model="dataForm.template" placeholder="短信模板"></el-input>
<el-input v-model="dataForm.template" placeholder="短信模板" maxlength="255"></el-input>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="dataForm.remark" placeholder="备注" type="textarea" :rows="2"></el-input>
<el-input v-model="dataForm.remark" placeholder="备注" type="textarea" :rows="2" maxlength="200"></el-input>
</el-form-item>
</el-form>
<template slot="footer">

28
src/views/modules/message/smstemplate.vue

@ -1,15 +1,12 @@
<template>
<el-card shadow="never" class="aui-card--fill">
<div class="mod-message__smstemplate}">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<!-- <el-form-item>
<el-input v-model="dataForm.id" placeholder="id" clearable></el-input>
</el-form-item> -->
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataListSearch()">
<el-form-item label="模板类型名称" prop="templateTypeName">
<el-input v-model="dataForm.templateTypeName" placeholder="模板类型名称" clearable></el-input>
<el-input v-model="dataForm.templateTypeName" placeholder="模板类型名称" clearable @keyup.native="btKeyUpTemplateTypeName"></el-input>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
<el-button type="success" @click="getDataListSearch()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="addOrUpdateHandle()">{{ $t('smstemplate.add') }}</el-button>
@ -20,14 +17,15 @@
</el-form>
<el-table v-loading="dataListLoading" :data="dataList" border @selection-change="dataListSelectionChangeHandle" style="width: 100%;">
<el-table-column type="selection" header-align="center" align="center" width="50"></el-table-column>
<el-table-column prop="templateType" label="模板类型" header-align="center" align="center"></el-table-column>
<el-table-column prop="templateTypeName" label="模板类型名称" header-align="center" align="center"></el-table-column>
<el-table-column type="index" label="序号" header-align="center" align="center" width="50"></el-table-column>
<el-table-column prop="templateType" label="模板类型" header-align="center" align="center" min-width="150" show-overflow-tooltip></el-table-column>
<el-table-column prop="templateTypeName" label="模板类型名称" header-align="center" align="center" min-width="150" show-overflow-tooltip></el-table-column>
<el-table-column prop="enableFlag" label="启用标识" header-align="center" align="center" :formatter="showEnableFlag"></el-table-column>
<el-table-column prop="signName" label="短信签名" header-align="center" align="center"></el-table-column>
<el-table-column prop="template" label="短信模板" header-align="center" align="center"></el-table-column>
<el-table-column prop="remark" label="备注" header-align="center" align="center"></el-table-column>
<el-table-column prop="createdTime" label="创建时间" header-align="center" align="center"></el-table-column>
<el-table-column prop="updatedTime" label="更新时间" header-align="center" align="center"></el-table-column>
<el-table-column prop="template" label="短信模板" header-align="center" align="center" min-width="150" show-overflow-tooltip></el-table-column>
<el-table-column prop="remark" label="备注" header-align="center" align="center" show-overflow-tooltip></el-table-column>
<el-table-column prop="createdTime" label="创建时间" header-align="center" align="center" width="180"></el-table-column>
<el-table-column prop="updatedTime" label="更新时间" header-align="center" align="center" width="180"></el-table-column>
<el-table-column :label="$t('handle')" fixed="right" header-align="center" align="center" width="150">
<template slot-scope="scope">
<!-- <el-button type="text" size="small" @click="smstemplateDetailHandle(scope.row.id)">查看</el-button> -->
@ -91,7 +89,11 @@ export default {
} else {
return '是'
}
}
},
btKeyUpTemplateTypeName (e) {
      e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
      this.dataForm.templateTypeName= e.target.value
    }
}
}
</script>

Loading…
Cancel
Save