|
|
@ -73,16 +73,16 @@ |
|
|
|
<div class="step_select_list"> |
|
|
|
<div class="step_upload" @click="selectContVisible = true"></div> |
|
|
|
<draggable v-model="selectedMaterial" class="drag_list" @end="dragEnd"> |
|
|
|
<div v-for="(item, index) in selectedMaterial" :key="'list-'+index" :class="['material_item', 'item_cont']" @click="clickMaterialItem((item.material_id||item.id),item)"> |
|
|
|
<img v-if="(item.img_path|| item.imgPath) || (item.material_type == 1 || item.type == 1)" :src="(item.img_path||item.imgPath)" :onerror="defaultImg" alt /> |
|
|
|
<div v-if="(!item.img_path|| !item.imgPath) && (item.material_type == 2|| item.type == 2)" class="radio_img"></div> |
|
|
|
<div v-for="(item, index) in selectedMaterial" :key="'list-'+index" :class="['material_item', 'item_cont']" @click="clickMaterialItem(item.material_id,item)"> |
|
|
|
<img v-if="item.img_path || item.material_type == 1" :src="item.img_path" :onerror="defaultImg" alt /> |
|
|
|
<div v-if="!item.img_path && item.material_type == 2" class="radio_img"></div> |
|
|
|
<div class="item_format"> |
|
|
|
<span class="item_type">{{ (item.deposit_url || item.depositUrl) | getFileFormat }}</span> |
|
|
|
<span class="item_type">{{ item.deposit_url | getFileFormat }}</span> |
|
|
|
<span v-if="item.material_type != '0' || item.type != '0'" class="item_time">{{ item.duration | getSeconds }}</span> |
|
|
|
</div> |
|
|
|
<div class="file_name">{{ item.material_name || item.name }}</div> |
|
|
|
<div v-if="contentIds.includes((item.material_id||item.id))" class="select_handle"> |
|
|
|
<div class="select_delt" @click.stop="selectDelt((item.material_id||item.id),index)"> |
|
|
|
<div v-if="contentIds.includes(item.material_id)" class="select_handle"> |
|
|
|
<div class="select_delt" @click.stop="selectDelt(item.material_id,index)"> |
|
|
|
<svg class="font-icon icon1" aria-hidden="true"> |
|
|
|
<use xlink:href="#icon-guanbi2" /> |
|
|
|
</svg> |
|
|
@ -168,20 +168,18 @@ |
|
|
|
</div> |
|
|
|
<div v-for="(item, index) in selectedEditData" :key="index" class="edit_material"> |
|
|
|
<div class="edit_img"> |
|
|
|
<!-- <img v-if="item.img_path || item.material_type == 1" :src="item.img_path" :onerror="defaultImg" alt /> |
|
|
|
<div v-if="!item.img_path && item.material_type == 2" class="radio_img"></div> --> |
|
|
|
<img v-if="(item.img_path|| item.imgPath) || (item.material_type == 1 || item.type == 1)" :src="(item.img_path||item.imgPath)" :onerror="defaultImg" alt /> |
|
|
|
<div v-if="(!item.img_path|| !item.imgPath) && (item.material_type == 2|| item.type == 2)" class="radio_img"></div> |
|
|
|
<img v-if="item.img_path || item.material_type == 1" :src="item.img_path" :onerror="defaultImg" alt /> |
|
|
|
<div v-if="!item.img_path && item.material_type == 2" class="radio_img"></div> |
|
|
|
<span class="">{{ index+1 }}</span> |
|
|
|
</div> |
|
|
|
<div class="edit_cont"> |
|
|
|
<div class="edit_cont_base"> |
|
|
|
<p>{{ item.material_name || item.name }}</p> |
|
|
|
<span>{{ (item.deposit_url || item.depositUrl) | getFileFormat }}</span> |
|
|
|
<span>{{ (item.file_size||item.fileSize) | formatBytes }}</span> |
|
|
|
<span>{{ item.deposit_url | getFileFormat }}</span> |
|
|
|
<span>{{ item.file_size | formatBytes }}</span> |
|
|
|
</div> |
|
|
|
<!-- <div v-if="item.material_type == 0" class="edit_cont_set"> --> |
|
|
|
<el-form v-if="item.material_type == 0 || item.type == 0" :ref="setMaterialForm" :model="setMaterialForm.form" class="edit_cont_set" size="small"> |
|
|
|
<el-form v-if="item.material_type == 0" :ref="setMaterialForm" :model="setMaterialForm.form" class="edit_cont_set" size="small"> |
|
|
|
<div class="set_time"> |
|
|
|
<span>展示时长</span> |
|
|
|
<el-form-item :prop="'form.'+index+'.showTime'" style="width: 100px"> |
|
|
@ -422,6 +420,7 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
// 编辑带来 release_id |
|
|
|
editRelease() { |
|
|
|
const release_id = JSON.parse(localStorage.getItem('releaseId')) |
|
|
|
this.release_id = release_id |
|
|
@ -432,42 +431,43 @@ export default { |
|
|
|
if (res.code == 200) { |
|
|
|
const releaseInfo = res.data.release |
|
|
|
this.releaseInfo = releaseInfo |
|
|
|
this.form.orga_id = releaseInfo.orgaId |
|
|
|
this.form.relaase_name = releaseInfo.relaaseName |
|
|
|
this.form.release_cycle = releaseInfo.releaseCycle |
|
|
|
this.form.orga_id = releaseInfo.orga_id |
|
|
|
this.form.relaase_name = releaseInfo.relaase_name |
|
|
|
this.form.release_cycle = releaseInfo.release_cycle |
|
|
|
if (this.form.release_cycle == 2) { |
|
|
|
if (releaseInfo.releaseWeekly) { |
|
|
|
this.selectWeekly = releaseInfo.releaseWeekly.split(',') |
|
|
|
if (releaseInfo.release_weekly) { |
|
|
|
this.selectWeekly = releaseInfo.release_weekly.split(',') |
|
|
|
} |
|
|
|
} |
|
|
|
this.form.is_topping = releaseInfo.isTopping |
|
|
|
if (releaseInfo.releaseType == 1) { |
|
|
|
this.form.is_topping = releaseInfo.is_topping |
|
|
|
if (releaseInfo.release_type == 1) { |
|
|
|
const arr = [] |
|
|
|
arr.push(parseTime(releaseInfo.releaseStart)) |
|
|
|
arr.push(parseTime(releaseInfo.releaseEnd)) |
|
|
|
arr.push(parseTime(releaseInfo.release_start)) |
|
|
|
arr.push(parseTime(releaseInfo.release_end)) |
|
|
|
this.form.release_start = arr |
|
|
|
} else { |
|
|
|
this.form.release_start = parseTime(releaseInfo.releaseStart) |
|
|
|
this.form.release_start = parseTime(releaseInfo.release_start) |
|
|
|
} |
|
|
|
|
|
|
|
this.form.bgm_main = releaseInfo.bgmMain |
|
|
|
this.form.bgm_main = releaseInfo.bgm_main |
|
|
|
this.form.release_deviceDTOs = res.data.release_devices |
|
|
|
// 获取素材list |
|
|
|
const materialIds = [] |
|
|
|
this.isEditMaterial = res.data.release_materials |
|
|
|
res.data.release_materials.map((item) => { |
|
|
|
materialIds.push(item.materialId) |
|
|
|
materialIds.push(item.material_id) |
|
|
|
}) |
|
|
|
const params = { |
|
|
|
ids: materialIds |
|
|
|
} |
|
|
|
// 根据ID获取素材内容 |
|
|
|
FetchFindMaterialById(params).then(res => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.selectedMaterial = res.data |
|
|
|
} |
|
|
|
}) |
|
|
|
// 设备list |
|
|
|
this.form.release_device = releaseInfo.releaseDevice |
|
|
|
this.form.release_device = releaseInfo.release_device |
|
|
|
this.deviceTags = res.data.release_devices |
|
|
|
} else { |
|
|
|
this.$message.error(res.msg) |
|
|
@ -483,8 +483,10 @@ export default { |
|
|
|
this.form.release_type = this.publishType |
|
|
|
// 实际结束时间 |
|
|
|
if (this.release_id) { |
|
|
|
if (this.releaseInfo.actualEnd) { |
|
|
|
this.form.actual_end = this.releaseInfo.actualEnd |
|
|
|
if (this.releaseInfo.actual_end) { |
|
|
|
this.form.actual_end = this.releaseInfo.actual_end |
|
|
|
} else { |
|
|
|
this.form.actual_end = null |
|
|
|
} |
|
|
|
this.form.release_id = this.release_id |
|
|
|
} else { |
|
|
@ -525,7 +527,7 @@ export default { |
|
|
|
if (this.selectedMaterial) { |
|
|
|
this.form.release_materialDTOs = this.selectedMaterial.map((item, index) => { |
|
|
|
const json = {} |
|
|
|
if (item.material_type == 0 || item.type == 0) { |
|
|
|
if (item.material_type == 0) { |
|
|
|
json.duration = (item.showTime || item.showAnimationName || item.showAnimation) ? item.showTime : 15 |
|
|
|
json.effect = (item.showTime || item.showAnimationName || item.showAnimation) ? item.showAnimation : 0 |
|
|
|
json.bgm_path = (item.showAudioName || item.showAudioUrl) ? item.showAudioUrl : null |
|
|
@ -534,13 +536,17 @@ export default { |
|
|
|
json.effect = 0 |
|
|
|
json.bgm_path = null |
|
|
|
} |
|
|
|
json.material_id = item.material_id || item.id |
|
|
|
json.material_name = item.material_name || item.name |
|
|
|
json.img_path = item.img_path || item.imgPath |
|
|
|
json.file_size = item.file_size || item.fileSize |
|
|
|
json.material_id = item.material_id |
|
|
|
json.material_name = item.material_name |
|
|
|
json.img_path = item.img_path |
|
|
|
json.file_size = item.file_size |
|
|
|
if (this.release_id) { |
|
|
|
if (this.isEditMaterial.length != 0) { |
|
|
|
json.rm_id = this.isEditMaterial[index].id |
|
|
|
if (!item.create_time) { |
|
|
|
json.rm_id = null |
|
|
|
} else { |
|
|
|
json.rm_id = this.isEditMaterial[index].id |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
json.rm_id = null |
|
|
@ -550,7 +556,7 @@ export default { |
|
|
|
}) |
|
|
|
// 判断最外层是否有bgm |
|
|
|
const isBgm = this.selectedMaterial.find(item => { |
|
|
|
return item.material_type == 2 || item.type == 2 |
|
|
|
return item.material_type == 2 |
|
|
|
}) |
|
|
|
if (isBgm) { |
|
|
|
this.form.bgm_main = isBgm.deposit_url |
|
|
@ -562,6 +568,8 @@ export default { |
|
|
|
if (res.code == 200) { |
|
|
|
this.$message.success('发布成功!') |
|
|
|
localStorage.removeItem('selectedMaterial') |
|
|
|
localStorage.removeItem('releaseId') |
|
|
|
this.$router.push({ path: '/publish' }) |
|
|
|
} else { |
|
|
|
this.$message.error(res.msg) |
|
|
|
} |
|
|
@ -708,7 +716,7 @@ export default { |
|
|
|
if (!this.isMainBgm) { |
|
|
|
this.audioListData[index].material_type = 2 |
|
|
|
const resultIndex = this.selectedMaterial.findIndex((item, key) => { |
|
|
|
return item.material_type == 2 || item.type == 2 |
|
|
|
return item.material_type == 2 |
|
|
|
}) |
|
|
|
if (resultIndex == -1) { |
|
|
|
this.selectedMaterial.push(this.audioListData[index]) |
|
|
@ -753,9 +761,11 @@ export default { |
|
|
|
this.isMultiSelected = !this.isMultiSelected |
|
|
|
if (this.isMultiSelected) { |
|
|
|
this.mulitText = '取消' |
|
|
|
this.$refs.MaterialList.selectedListId = [] |
|
|
|
this.$refs.MaterialList.selectedMaterial = [] |
|
|
|
// 已选择的内容中-list是否包含,包含即选中状态 |
|
|
|
this.selectedMaterial.forEach(item => { |
|
|
|
this.$refs.MaterialList.selectedListId.push(item.material_id || item.id) |
|
|
|
this.$refs.MaterialList.selectedListId.push(item.material_id) |
|
|
|
this.$refs.MaterialList.selectedMaterial.push(item) |
|
|
|
}) |
|
|
|
} else { |
|
|
|