diff --git a/project/sass/apps/Announce/AppAnnounce/components/Add.vue b/project/sass/apps/Announce/AppAnnounce/components/Add.vue
index e5b13b0f..5a5d0a9f 100644
--- a/project/sass/apps/Announce/AppAnnounce/components/Add.vue
+++ b/project/sass/apps/Announce/AppAnnounce/components/Add.vue
@@ -11,13 +11,13 @@
取消
- 提交
+ 通知成员发送
+ 定时发送
@@ -110,31 +154,20 @@
},
data () {
- const validatorPhone = function (rule, value, callback) {
- if (value === '') {
- callback(new Error('请输入手机号'))
- } else if (!/^1\d{10}$/.test(value)) {
- callback(new Error('手机号格式错误'))
- } else {
- callback()
- }
- }
return {
info: {},
department: [],
- validatorPhone: validatorPhone,
+ fileList: [],
form: {
- position: '',
+ choiceTime: '',
+ contents: {},
+ enableExamine: '0',
+ examines: [],
+ wxGroups: [],
+ sendScope: '0',
+ sendType: 0,
name: '',
- email: '',
- telephone: '',
- gender: '',
- mobile: '',
- departmentName: '',
- departmentIds: [],
- tagIds: [],
- id: '',
- status: false
+ taskTitle: ''
},
id: '',
tagsList: []
@@ -173,6 +206,64 @@
})
},
+ removeFile (index) {
+ this.fileList.splice(index, 1)
+ },
+
+ mapIcon (type) {
+ return {
+ image: 'https://cdn.cunwuyun.cn/dvcp/announce/img.png',
+ video: 'https://cdn.cunwuyun.cn/dvcp/announce/video.png',
+ folder: 'https://cdn.cunwuyun.cn/dvcp/announce/folder.png',
+ site: 'https://cdn.cunwuyun.cn/dvcp/announce/site.png',
+ miniapp: 'https://cdn.cunwuyun.cn/dvcp/announce/miniapp.png'
+ }[type]
+ },
+
+ onBeforeUpload(event) {
+ return this.onOverSize(event)
+ },
+
+ getExtension(name) {
+ return name.substring(name.lastIndexOf('.'))
+ },
+
+ handleChange (e, size, accept) {
+ const isLt10M = e.size / 1024 / 1024 < size
+ const suffixName = this.getExtension(e.name)
+ const suffixNameList = accept.split(',')
+
+ if (suffixNameList.indexOf(`${suffixName.toLowerCase()}`) === -1) {
+ this.$message.error(`不支持该格式`)
+ return false
+ }
+
+ if (!isLt10M) {
+ this.$message.error(`大小不超过${10}MB!`)
+ return false
+ }
+
+ return true
+ },
+
+ submitUpload (file, type) {
+ let formData = new FormData()
+ formData.append('file', file.file)
+ formData.append('type', type)
+ this.instance.post(`/app/wxcp/upload/uploadFile`, formData, {
+ withCredentials: false
+ }).then(res => {
+ if (res.code == 0) {
+ this.fileList.push({
+ ...res.data.file,
+ media: res.data.media
+ })
+
+ this.$message.success('上传成功')
+ }
+ })
+ },
+
onChange (e) {
if (e.length) {
this.form.departmentIds = e.map(v => v.id)
@@ -304,6 +395,35 @@
font-size: 14px;
}
}
+
+ .fileList {
+ margin-bottom: 12px;
+
+ .add-item {
+ justify-content: space-between;
+ margin-bottom: 8px;
+
+ .left {
+ display: flex;
+ align-items: center;
+ }
+
+ i {
+ font-size: 14px;
+ cursor: pointer;
+ font-style: normal;
+ color: red;
+
+ &:hover {
+ opacity: 0.6;
+ }
+ }
+
+ &:last-child {
+ margin-bottom: 0;
+ }
+ }
+ }
}
.AppAnnounceDetail-container {
@@ -321,10 +441,26 @@
.right {
position: sticky;
top: 0;
- width: 400px;
- height: 688px;
- background: url(https://cdn.cunwuyun.cn/dvcp/announce/phone.png);
- background-size: 400px 100%;
+ width: 338px;
+ height: 675px;
+
+ .phone {
+ position: absolute;
+ left: 14px;
+ top: 14px;
+ z-index: 1;
+ width: 310px;
+ height: 647px;
+ }
+
+ .phone-wrapper {
+ position: absolute;
+ left: 0;
+ top: 0;
+ z-index: 2;
+ width: 338px;
+ height: 675px;
+ }
}
}
@@ -340,7 +476,7 @@
}
i {
- color: #c0c9db;
+ color: #8899bb;
}
em {
diff --git a/project/sass/apps/Announce/AppAnnounce/components/List.vue b/project/sass/apps/Announce/AppAnnounce/components/List.vue
index 962bec08..038f1507 100644
--- a/project/sass/apps/Announce/AppAnnounce/components/List.vue
+++ b/project/sass/apps/Announce/AppAnnounce/components/List.vue
@@ -12,32 +12,34 @@
创建宣发
+ :selectList="dict.getDict('mstStatus')">
@@ -86,20 +88,21 @@ export default {
search: {
current: 1,
size: 10,
- name: '',
- startDate: '',
- endDate: ''
+ status: '',
+ taskTitle: '',
+ startTime: '',
+ endTime: ''
},
tableData: [],
loading: false,
total: 0,
colConfigs: [
- { prop: 'position', label: '任务名称' },
- { prop: 'mobile', label: '群发类型' },
- { prop: 'position', label: '创建人' },
- { prop: 'mobile', label: '群发时间' },
- { prop: 'position', label: '状态' },
- { prop: 'mobile', label: '任务完成率' }
+ { prop: 'taskTitle', label: '任务名称' },
+ { prop: 'sendType', label: '群发类型', formart: v => v === '0' ? '立即发送' : '定时发送', align: 'center' },
+ { prop: 'createUserId', label: '创建人', openType: 'userName', align: 'center' },
+ { prop: 'createTime', label: '群发时间', align: 'center' },
+ { prop: 'status', label: '状态', formart: v => this.dict.getLabel('mstStatus', v), align: 'center' },
+ { prop: 'completionRate', label: '任务完成率', align: 'center' }
]
}
},
@@ -108,29 +111,18 @@ export default {
...mapState(['user'])
},
- created() {
- this.getList()
+ created () {
+ this.dict.load('mstStatus', 'mstSendType').then(() => {
+ this.getList()
+ })
},
methods: {
- removeDepart(id, parentid) {
- this.$confirm('确定删除该数据?').then(() => {
- this.instance.post(`/app/wxcp/wxdepartment/delete?id=${id}`).then(res => {
- if (res.code == 0) {
- this.defaultChecked = [parentid]
- this.$message.success('删除成功!')
- this.getTree()
- }
- })
- })
- },
-
getList() {
this.loading = true
- this.instance.post(`/app/wxcp/wxuser/list`, null, {
+ this.instance.post(`/app/appmasssendingtask/list`, null, {
params: {
...this.search,
- departmentId: this.tabIndex === 0 ? this.search.departmentId : ''
}
}).then(res => {
if (res.code == 0) {
@@ -151,7 +143,7 @@ export default {
remove(id) {
this.$confirm('确定删除该数据?').then(() => {
- this.instance.post(`/app/wxcp/wxuser/delete?id=${id}`).then(res => {
+ this.instance.post(`/app/appmasssendingtask/delete?ids=${id}`).then(res => {
if (res.code == 0) {
this.$message.success('删除成功!')
this.getList()