|  |  | @ -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 { | 
			
		
	
	
		
			
				
					|  |  | 
 |