协同宣发

This commit is contained in:
yanran200730
2022-09-13 18:19:51 +08:00
parent fc1e0812f5
commit ebce8b7025
2 changed files with 30 additions and 47 deletions

View File

@@ -75,7 +75,7 @@
</div> </div>
<el-popover <el-popover
placement="top" placement="top"
width="280" width="200"
offset="0" offset="0"
trigger="hover"> trigger="hover">
<div class="add-item" slot="reference" style="width: max-content;"> <div class="add-item" slot="reference" style="width: max-content;">
@@ -115,22 +115,6 @@
<p>视频</p> <p>视频</p>
</div> </div>
</el-upload> </el-upload>
<el-upload
ref="upload"
multiple
:file-list="fileList"
:show-file-list="false"
:before-upload="v => handleChange(v, 20, '.zip,.rar,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.txt')"
:limit="9"
:on-exceed="onExceed"
action="/app/wxcp/upload/uploadFile"
accept=".zip,.rar,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.txt"
:http-request="v => submitUpload(v, '3')">
<div class="content-item" trigger>
<img src="https://cdn.cunwuyun.cn/dvcp/announce/folder.png"/>
<p>文件</p>
</div>
</el-upload>
<div class="content-item" @click="isShowAddLink = true"> <div class="content-item" @click="isShowAddLink = true">
<img src="https://cdn.cunwuyun.cn/dvcp/announce/site.png"/> <img src="https://cdn.cunwuyun.cn/dvcp/announce/site.png"/>
<p>网页</p> <p>网页</p>
@@ -150,18 +134,18 @@
active-text="开启后创建的群发任务需要审批人进行审批"> active-text="开启后创建的群发任务需要审批人进行审批">
</el-switch> </el-switch>
</el-form-item> </el-form-item>
<el-form-item v-if="form.enableExamine === '1'" label="审批人员" prop="examineList" style="width: 100%;" :rules="[{ required: true, message: '请选择审批人员', trigger: 'change' }]"> <el-form-item v-if="form.enableExamine === '1'" label="审批人员" prop="examines" style="width: 100%;" :rules="[{ required: true, message: '请选择审批人员', trigger: 'change' }]">
<ai-wechat-selecter :instance="instance" v-model="form.examineList" @change="onUserChange"> <ai-wechat-selecter :instance="instance" v-model="form.examines" @change="onUserChange">
<div class="AppAnnounceDetail-select"> <div class="AppAnnounceDetail-select">
<el-input class="AppAnnounceDetail-select__input" size="small" placeholder="请选择..." v-model="form.examinesName"></el-input> <el-input class="AppAnnounceDetail-select__input" size="small" placeholder="请选择..." v-model="form.examinesName"></el-input>
<div class="select-left" v-if="form.examineList.length"> <div class="select-left" v-if="form.examines.length">
<span v-for="(item, index) in form.examineList" :key="index">{{ item.name }}</span> <span v-for="(item, index) in form.examines" :key="index">{{ item.name }}</span>
</div> </div>
<i v-if="!form.examineList.length">请选择</i> <i v-if="!form.examines.length">请选择</i>
<div class="select-right">{{ form.examineList.length ? '重新选择' : '选择' }}</div> <div class="select-right">{{ form.examines.length ? '重新选择' : '选择' }}</div>
</div> </div>
</ai-wechat-selecter> </ai-wechat-selecter>
</el-form-item> </el-form-item>``
</div> </div>
</template> </template>
</ai-card> </ai-card>
@@ -309,7 +293,7 @@ export default {
choiceTime: '', choiceTime: '',
contents: [], contents: [],
enableExamine: '0', enableExamine: '0',
examineList: [], examines: [],
executorList: [], executorList: [],
wxGroupsName: '', wxGroupsName: '',
sendScope: '0', sendScope: '0',
@@ -381,7 +365,7 @@ export default {
}, },
getInfo(id) { getInfo(id) {
this.instance.post(`/app/appmasssendingtask/queryDetailById?id=${id}`).then(res => { this.instance.post(`/app/whchatmomentstask/customerTasKDetail?id=${id}`).then(res => {
if (res.code === 0) { if (res.code === 0) {
this.form = { this.form = {
...this.form, ...this.form,
@@ -396,8 +380,8 @@ export default {
this.dateForm.choiceTime = '' this.dateForm.choiceTime = ''
if (res.data.examineList && res.data.examineList.length) { if (res.data.examines && res.data.examines.length) {
this.form.examineList = res.data.examineList.map(v => { this.form.examines = res.data.examines.map(v => {
return { return {
...v, ...v,
wxOpenUserId: v.examineUserId, wxOpenUserId: v.examineUserId,
@@ -480,6 +464,11 @@ export default {
onLinkConfirm() { onLinkConfirm() {
this.$refs.linkForm.validate((valid) => { this.$refs.linkForm.validate((valid) => {
if (valid) { if (valid) {
if (this.fileList.length) {
this.$message.error('最多支持9张图片或1个视频或1个链接')
return false
}
this.fileList.push({ this.fileList.push({
...this.linkForm, ...this.linkForm,
linkPicUrl: this.linkForm.linkPicUrl.length ? this.linkForm.linkPicUrl[0].url : '', linkPicUrl: this.linkForm.linkPicUrl.length ? this.linkForm.linkPicUrl[0].url : '',
@@ -524,6 +513,16 @@ export default {
}, },
handleChange(e, size, accept) { handleChange(e, size, accept) {
if (accept === '.mp4' && this.fileList.length) {
this.$message.error('最多支持9张图片或1个视频或1个链接')
return false
}
if (accept !== '.mp4' && (this.fileList.map(v => v.msgType).indexOf('2') !== -1 || this.fileList.map(v => v.msgType).indexOf('4') !== -1) ) {
this.$message.error('最多支持9张图片或1个视频或1个链接')
return false
}
const isLt10M = e.size / 1024 / 1024 < size const isLt10M = e.size / 1024 / 1024 < size
const suffixName = this.getExtension(e.name) const suffixName = this.getExtension(e.name)
const suffixNameList = accept.split(',') const suffixNameList = accept.split(',')
@@ -611,33 +610,17 @@ export default {
this.isLoading2 = true this.isLoading2 = true
} }
console.log({
...this.form,
id: this.params.id,
executorList: this.form.executorList,
contents,
sendType,
filterTags: this.form.filterTags.map(v => v.id).join(','),
choiceTime: this.dateForm.choiceTime,
filterCriteria: this.form.filterCriteria.join(','),
examineList: this.form.examineList.length ? this.form.examineList.map(v => {
return {
...v,
examineUserId: v.id,
examineUserName: v.name
}
}) : []
})
this.instance.post(`/app/whchatmomentstask/addOrUpdate`, { this.instance.post(`/app/whchatmomentstask/addOrUpdate`, {
...this.form, ...this.form,
id: this.params.id, id: this.params.id,
executorList: this.form.executorList, executorList: this.form.executorList,
contents, contents,
sendType, sendType,
taskType: 0,
filterTags: this.form.filterTags.map(v => v.id).join(','), filterTags: this.form.filterTags.map(v => v.id).join(','),
choiceTime: this.dateForm.choiceTime, choiceTime: this.dateForm.choiceTime,
filterCriteria: this.form.filterCriteria.join(','), filterCriteria: this.form.filterCriteria.join(','),
examineList: this.form.examineList.length ? this.form.examineList.map(v => { examines: this.form.examines.length ? this.form.examines.map(v => {
return { return {
...v, ...v,
examineUserId: v.id, examineUserId: v.id,

View File

@@ -288,7 +288,7 @@
}, },
getInfo (id) { getInfo (id) {
this.instance.post(`/app/appmasssendingtask/queryDetailById?id=${id}`).then(res => { this.instance.post(`/app/whchatmomentstask/customerTasKDetail?id=${id}`).then(res => {
if (res.code === 0) { if (res.code === 0) {
this.info = res.data this.info = res.data
if (res.data.status === '4' && res.data.remindTime) { if (res.data.status === '4' && res.data.remindTime) {