|  | @ -7,20 +7,11 @@ | 
		
	
		
			
				|  |  |         <el-col :span="18"> |  |  |         <el-col :span="18"> | 
		
	
		
			
				|  |  |           <div class="input_wrap"> |  |  |           <div class="input_wrap"> | 
		
	
		
			
				|  |  |             <span class="input_label">名称</span> |  |  |             <span class="input_label">名称</span> | 
		
	
		
			
				|  |  |             <el-input |  |  |  | 
		
	
		
			
				|  |  |               v-model="form.relaase_name" |  |  |  | 
		
	
		
			
				|  |  |               :placeholder="changePlaceholder" |  |  |  | 
		
	
		
			
				|  |  |               class="input_name" |  |  |  | 
		
	
		
			
				|  |  |             /> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             <el-input v-model="form.relaase_name" :placeholder="changePlaceholder" class="input_name" /> | 
		
	
		
			
				|  |  |           </div> |  |  |           </div> | 
		
	
		
			
				|  |  |         </el-col> |  |  |         </el-col> | 
		
	
		
			
				|  |  |         <el-col :span="4" class="release_right"> |  |  |         <el-col :span="4" class="release_right"> | 
		
	
		
			
				|  |  |           <el-button |  |  |  | 
		
	
		
			
				|  |  |             round |  |  |  | 
		
	
		
			
				|  |  |             class="release_btn" |  |  |  | 
		
	
		
			
				|  |  |             type="primary" |  |  |  | 
		
	
		
			
				|  |  |             @click="releaseSubmit" |  |  |  | 
		
	
		
			
				|  |  |           >发布</el-button> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-button round class="release_btn" type="primary" @click="releaseSubmit">发布</el-button> | 
		
	
		
			
				|  |  |           <el-button round type="primary">关闭</el-button> |  |  |           <el-button round type="primary">关闭</el-button> | 
		
	
		
			
				|  |  |         </el-col> |  |  |         </el-col> | 
		
	
		
			
				|  |  |       </el-row> |  |  |       </el-row> | 
		
	
	
		
			
				|  | @ -28,54 +19,23 @@ | 
		
	
		
			
				|  |  |       <el-row class="in_release_item"> |  |  |       <el-row class="in_release_item"> | 
		
	
		
			
				|  |  |         <el-col class="step_1">第一步:设置时间</el-col> |  |  |         <el-col class="step_1">第一步:设置时间</el-col> | 
		
	
		
			
				|  |  |         <el-col class="step_form"> |  |  |         <el-col class="step_form"> | 
		
	
		
			
				|  |  |           <el-form-item |  |  |  | 
		
	
		
			
				|  |  |             label="发布时间" |  |  |  | 
		
	
		
			
				|  |  |             prop="release_start" |  |  |  | 
		
	
		
			
				|  |  |             :rules="[ |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-form-item label="发布时间" prop="release_start" :rules="[ | 
		
	
		
			
				|  |  |               { required: true, message: '请选择发布时间', trigger: 'change' } |  |  |               { required: true, message: '请选择发布时间', trigger: 'change' } | 
		
	
		
			
				|  |  |             ]" |  |  |  | 
		
	
		
			
				|  |  |             label-width="100px" |  |  |  | 
		
	
		
			
				|  |  |           > |  |  |  | 
		
	
		
			
				|  |  |             <el-date-picker |  |  |  | 
		
	
		
			
				|  |  |               v-if="publishType == 0" |  |  |  | 
		
	
		
			
				|  |  |               v-model="form.release_start" |  |  |  | 
		
	
		
			
				|  |  |               value-format="yyyy-MM-dd HH:mm:ss" |  |  |  | 
		
	
		
			
				|  |  |               type="date" |  |  |  | 
		
	
		
			
				|  |  |               placeholder="选择日期" |  |  |  | 
		
	
		
			
				|  |  |             /> |  |  |  | 
		
	
		
			
				|  |  |             <el-date-picker |  |  |  | 
		
	
		
			
				|  |  |               v-else |  |  |  | 
		
	
		
			
				|  |  |               v-model="form.release_start" |  |  |  | 
		
	
		
			
				|  |  |               value-format="yyyy-MM-dd HH:mm:ss" |  |  |  | 
		
	
		
			
				|  |  |               type="daterange" |  |  |  | 
		
	
		
			
				|  |  |               range-separator="至" |  |  |  | 
		
	
		
			
				|  |  |               start-placeholder="开始日期" |  |  |  | 
		
	
		
			
				|  |  |               end-placeholder="结束日期" |  |  |  | 
		
	
		
			
				|  |  |             /> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             ]" label-width="100px"> | 
		
	
		
			
				|  |  |  |  |  |             <el-date-picker v-if="publishType == 0" v-model="form.release_start" value-format="yyyy-MM-dd HH:mm:ss" type="date" placeholder="选择日期" /> | 
		
	
		
			
				|  |  |  |  |  |             <el-date-picker v-else v-model="form.release_start" value-format="yyyy-MM-dd HH:mm:ss" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" /> | 
		
	
		
			
				|  |  |           </el-form-item> |  |  |           </el-form-item> | 
		
	
		
			
				|  |  |           <el-form-item |  |  |  | 
		
	
		
			
				|  |  |             v-if="publishType == 1" |  |  |  | 
		
	
		
			
				|  |  |             label="设置周期" |  |  |  | 
		
	
		
			
				|  |  |             prop="release_cycle" |  |  |  | 
		
	
		
			
				|  |  |             :rules="[ |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-form-item v-if="publishType == 1" label="设置周期" prop="release_cycle" :rules="[ | 
		
	
		
			
				|  |  |               { required: true, message: '请设置周期:', trigger: 'change' }, |  |  |               { required: true, message: '请设置周期:', trigger: 'change' }, | 
		
	
		
			
				|  |  |             ]" |  |  |  | 
		
	
		
			
				|  |  |             :class="['set_weekly',{'no_margin': form.release_cycle === '每周'}]" |  |  |  | 
		
	
		
			
				|  |  |             label-width="100px" |  |  |  | 
		
	
		
			
				|  |  |           > |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             ]" :class="['set_weekly',{'no_margin': form.release_cycle === '每周'}]" label-width="100px"> | 
		
	
		
			
				|  |  |             <el-radio-group v-model="form.release_cycle" @change="clearCheckbox()"> |  |  |             <el-radio-group v-model="form.release_cycle" @change="clearCheckbox()"> | 
		
	
		
			
				|  |  |               <el-radio label="每天" value="everyday" /> |  |  |               <el-radio label="每天" value="everyday" /> | 
		
	
		
			
				|  |  |               <el-radio label="每周" value="weekly" /> |  |  |               <el-radio label="每周" value="weekly" /> | 
		
	
		
			
				|  |  |             </el-radio-group> |  |  |             </el-radio-group> | 
		
	
		
			
				|  |  |           </el-form-item> |  |  |           </el-form-item> | 
		
	
		
			
				|  |  |           <el-form-item |  |  |  | 
		
	
		
			
				|  |  |             v-if="form.release_cycle === '每周'" |  |  |  | 
		
	
		
			
				|  |  |             :class="{'weekly_margin': form.release_cycle === '每周'}" |  |  |  | 
		
	
		
			
				|  |  |             prop="release_weekly" |  |  |  | 
		
	
		
			
				|  |  |             :rules="[ |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-form-item v-if="form.release_cycle === '每周'" :class="{'weekly_margin': form.release_cycle === '每周'}" prop="release_weekly" :rules="[ | 
		
	
		
			
				|  |  |               { required: true, message: '请选择每周开机时间', trigger: 'change' }, |  |  |               { required: true, message: '请选择每周开机时间', trigger: 'change' }, | 
		
	
		
			
				|  |  |             ]" |  |  |  | 
		
	
		
			
				|  |  |           > |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             ]"> | 
		
	
		
			
				|  |  |             <el-checkbox-group v-model="form.release_weekly"> |  |  |             <el-checkbox-group v-model="form.release_weekly"> | 
		
	
		
			
				|  |  |               <el-checkbox label="周一" name="release_weekly" /> |  |  |               <el-checkbox label="周一" name="release_weekly" /> | 
		
	
		
			
				|  |  |               <el-checkbox label="周二" name="release_weekly" /> |  |  |               <el-checkbox label="周二" name="release_weekly" /> | 
		
	
	
		
			
				|  | @ -89,11 +49,7 @@ | 
		
	
		
			
				|  |  |           <!-- :rules="[ |  |  |           <!-- :rules="[ | 
		
	
		
			
				|  |  |               { required: true, message: '请选择是否置顶', trigger: 'change' } |  |  |               { required: true, message: '请选择是否置顶', trigger: 'change' } | 
		
	
		
			
				|  |  |             ]" --> |  |  |             ]" --> | 
		
	
		
			
				|  |  |           <el-form-item |  |  |  | 
		
	
		
			
				|  |  |             label="是否置顶" |  |  |  | 
		
	
		
			
				|  |  |             prop="is_topping" |  |  |  | 
		
	
		
			
				|  |  |             label-width="100px" |  |  |  | 
		
	
		
			
				|  |  |           > |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-form-item label="是否置顶" prop="is_topping" label-width="100px"> | 
		
	
		
			
				|  |  |             <!-- <el-radio v-model="form.is_topping" label="1">置顶</el-radio> --> |  |  |             <!-- <el-radio v-model="form.is_topping" label="1">置顶</el-radio> --> | 
		
	
		
			
				|  |  |             <el-checkbox v-model="form.is_topping">置顶</el-checkbox> |  |  |             <el-checkbox v-model="form.is_topping">置顶</el-checkbox> | 
		
	
		
			
				|  |  |           </el-form-item> |  |  |           </el-form-item> | 
		
	
	
		
			
				|  | @ -106,29 +62,20 @@ | 
		
	
		
			
				|  |  |           <div class="step_select"> |  |  |           <div class="step_select"> | 
		
	
		
			
				|  |  |             <div>已选内容: 0</div> |  |  |             <div>已选内容: 0</div> | 
		
	
		
			
				|  |  |             <div>内容总时长:0.00s</div> |  |  |             <div>内容总时长:0.00s</div> | 
		
	
		
			
				|  |  |             <div>添加BGM:<el-button class="step_select_audio" type="primary" round @click="selectAudioCont">选择文件</el-button></div> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             <div>添加BGM:<el-button class="step_select_audio" type="primary" round @click="selectAudioCont">选择文件</el-button> | 
		
	
		
			
				|  |  |  |  |  |             </div> | 
		
	
		
			
				|  |  |           </div> |  |  |           </div> | 
		
	
		
			
				|  |  |           <div class="step_select_list"> |  |  |           <div class="step_select_list"> | 
		
	
		
			
				|  |  |             <div class="step_upload" @click="selectContVisible = true"></div> |  |  |             <div class="step_upload" @click="selectContVisible = true"></div> | 
		
	
		
			
				|  |  |             <draggable |  |  |  | 
		
	
		
			
				|  |  |               v-model="materialSelected" |  |  |  | 
		
	
		
			
				|  |  |               class="drag_list" |  |  |  | 
		
	
		
			
				|  |  |               @end="dragEnd" |  |  |  | 
		
	
		
			
				|  |  |             > |  |  |  | 
		
	
		
			
				|  |  |               <div |  |  |  | 
		
	
		
			
				|  |  |                 v-for="(item, index) in materialSelected" |  |  |  | 
		
	
		
			
				|  |  |                 :key="'list-'+index" |  |  |  | 
		
	
		
			
				|  |  |                 :class="['material_item', 'item_cont']" |  |  |  | 
		
	
		
			
				|  |  |                 @click="selectedItem(item.material_id,item)" |  |  |  | 
		
	
		
			
				|  |  |               > |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             <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)"> | 
		
	
		
			
				|  |  |                 <img v-if="item.img_path || item.material_type == 1" :src="item.img_path" :onerror="defaultImg" alt /> |  |  |                 <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 v-if="!item.img_path && item.material_type == 2" class="radio_img"></div> | 
		
	
		
			
				|  |  |                 <div class="item_format"> |  |  |                 <div class="item_format"> | 
		
	
		
			
				|  |  |                   <span class="item_type">{{ 1 }}</span> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |                   <span class="item_type">{{ materialPostfix[index] }}</span> | 
		
	
		
			
				|  |  |                   <span v-if="item.material_type != '0'" class="item_time">{{ item.duration | getSeconds }}</span> |  |  |                   <span v-if="item.material_type != '0'" class="item_time">{{ item.duration | getSeconds }}</span> | 
		
	
		
			
				|  |  |                 </div> |  |  |                 </div> | 
		
	
		
			
				|  |  |                 <div class="file_name">{{ item.material_name }}</div> |  |  |                 <div class="file_name">{{ item.material_name }}</div> | 
		
	
		
			
				|  |  |                 <!-- <span v-if="isMultiSelected" class="checked_btn" @click="selectedItem(item)"></span> --> |  |  |  | 
		
	
		
			
				|  |  |                 <div v-if="contentIds.includes(item.material_id)" class="select_handle"> |  |  |                 <div v-if="contentIds.includes(item.material_id)" class="select_handle"> | 
		
	
		
			
				|  |  |                   <div class="select_delt" @click.stop="selectDelt(item.material_id,index)"> |  |  |                   <div class="select_delt" @click.stop="selectDelt(item.material_id,index)"> | 
		
	
		
			
				|  |  |                     <svg class="font-icon icon1" aria-hidden="true"> |  |  |                     <svg class="font-icon icon1" aria-hidden="true"> | 
		
	
	
		
			
				|  | @ -150,36 +97,24 @@ | 
		
	
		
			
				|  |  |       <el-row class="in_release_item"> |  |  |       <el-row class="in_release_item"> | 
		
	
		
			
				|  |  |         <el-col class="step_1">第三步:选择设备</el-col> |  |  |         <el-col class="step_1">第三步:选择设备</el-col> | 
		
	
		
			
				|  |  |         <el-col class="step_form"> |  |  |         <el-col class="step_form"> | 
		
	
		
			
				|  |  |           <el-form-item |  |  |  | 
		
	
		
			
				|  |  |             label="" |  |  |  | 
		
	
		
			
				|  |  |             prop="release_device" |  |  |  | 
		
	
		
			
				|  |  |             :rules="[ |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-form-item label="" prop="release_device" :rules="[ | 
		
	
		
			
				|  |  |               { required: true, message: '请选择设备', trigger: 'change' }, |  |  |               { required: true, message: '请选择设备', trigger: 'change' }, | 
		
	
		
			
				|  |  |             ]" |  |  |  | 
		
	
		
			
				|  |  |           > |  |  |  | 
		
	
		
			
				|  |  |             <el-radio-group v-model="form.release_device"> |  |  |  | 
		
	
		
			
				|  |  |               <el-radio label="all" value="all">所有设备</el-radio> |  |  |  | 
		
	
		
			
				|  |  |               <el-radio label="other" value="other">部分设备<i v-if="form.deviceSelect === 'other'" class="radio_tip" @click="addDeviceTag()">添加</i></el-radio> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             ]"> | 
		
	
		
			
				|  |  |  |  |  |             <el-radio-group v-model="form.release_device" @change="clearDevice()"> | 
		
	
		
			
				|  |  |  |  |  |               <el-radio label="1">所有设备</el-radio> | 
		
	
		
			
				|  |  |  |  |  |               <el-radio label="2">部分设备<i v-if="form.release_device == 2" class="radio_tip" @click="addDeviceTag()">添加</i></el-radio> | 
		
	
		
			
				|  |  |             </el-radio-group> |  |  |             </el-radio-group> | 
		
	
		
			
				|  |  |           </el-form-item> |  |  |           </el-form-item> | 
		
	
		
			
				|  |  |           <div v-if="form.release_device === 'all'" class="select_all_tip">所有设备都将被发送</div> |  |  |  | 
		
	
		
			
				|  |  |           <div v-if="deviceTags.length > 0 && form.release_device === 'other'" class="select_other"> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <div v-if="form.release_device == 1" class="select_all_tip">所有设备都将被发送</div> | 
		
	
		
			
				|  |  |  |  |  |           <div v-if="deviceTags.length > 0 && form.release_device == 2" class="select_other"> | 
		
	
		
			
				|  |  |             <el-row> |  |  |             <el-row> | 
		
	
		
			
				|  |  |               <el-col :span="10" class="other_tip">以下设备都将被发送<span>总计{{ deviceTags.length }}个设备</span></el-col> |  |  |               <el-col :span="10" class="other_tip">以下设备都将被发送<span>总计{{ deviceTags.length }}个设备</span></el-col> | 
		
	
		
			
				|  |  |               <el-col :span="4"> |  |  |               <el-col :span="4"> | 
		
	
		
			
				|  |  |                 <el-button round class="delt_btn" @click="clearDevice()">清空</el-button> |  |  |                 <el-button round class="delt_btn" @click="clearDevice()">清空</el-button> | 
		
	
		
			
				|  |  |               </el-col> |  |  |               </el-col> | 
		
	
		
			
				|  |  |             </el-row> |  |  |             </el-row> | 
		
	
		
			
				|  |  |             <el-tag |  |  |  | 
		
	
		
			
				|  |  |               v-for="tag in deviceTags" |  |  |  | 
		
	
		
			
				|  |  |               :key="tag" |  |  |  | 
		
	
		
			
				|  |  |               closable |  |  |  | 
		
	
		
			
				|  |  |               :disable-transitions="true" |  |  |  | 
		
	
		
			
				|  |  |               :hit="false" |  |  |  | 
		
	
		
			
				|  |  |               color="#cbe3ff" |  |  |  | 
		
	
		
			
				|  |  |               @close="deltTags(tag)" |  |  |  | 
		
	
		
			
				|  |  |             > |  |  |  | 
		
	
		
			
				|  |  |               {{ tag }} |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             <el-tag v-for="tag in deviceTags" :key="tag.device_id" closable :disable-transitions="true" :hit="false" color="#cbe3ff" @close="deltTags(tag)"> | 
		
	
		
			
				|  |  |  |  |  |               {{ tag.device_name }} | 
		
	
		
			
				|  |  |             </el-tag> |  |  |             </el-tag> | 
		
	
		
			
				|  |  |           </div> |  |  |           </div> | 
		
	
		
			
				|  |  |         </el-col> |  |  |         </el-col> | 
		
	
	
		
			
				|  | @ -187,12 +122,7 @@ | 
		
	
		
			
				|  |  |     </el-form> |  |  |     </el-form> | 
		
	
		
			
				|  |  |     <!-- 第二步:选择内容 - 选择素材 --> |  |  |     <!-- 第二步:选择内容 - 选择素材 --> | 
		
	
		
			
				|  |  |     <div class="release_layer upload_layer"> |  |  |     <div class="release_layer upload_layer"> | 
		
	
		
			
				|  |  |       <el-dialog |  |  |  | 
		
	
		
			
				|  |  |         :close-on-click-modal="false" |  |  |  | 
		
	
		
			
				|  |  |         :show-close="false" |  |  |  | 
		
	
		
			
				|  |  |         :visible.sync="selectContVisible" |  |  |  | 
		
	
		
			
				|  |  |         width="1200px" |  |  |  | 
		
	
		
			
				|  |  |       > |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       <el-dialog :close-on-click-modal="false" :show-close="false" :visible.sync="selectContVisible" width="1200px"> | 
		
	
		
			
				|  |  |         <div slot="title" class="layer_tab_title"> |  |  |         <div slot="title" class="layer_tab_title"> | 
		
	
		
			
				|  |  |           <span :class="{'active': activeIndex === 0}" @click="tabAll(0)">素材库</span> |  |  |           <span :class="{'active': activeIndex === 0}" @click="tabAll(0)">素材库</span> | 
		
	
		
			
				|  |  |           <span :class="{'active': activeIndex === 1}" @click="tabAll(1)">主题库</span> |  |  |           <span :class="{'active': activeIndex === 1}" @click="tabAll(1)">主题库</span> | 
		
	
	
		
			
				|  | @ -200,40 +130,17 @@ | 
		
	
		
			
				|  |  |         <!-- 素材库 --> |  |  |         <!-- 素材库 --> | 
		
	
		
			
				|  |  |         <div v-if="activeIndex === 0"> |  |  |         <div v-if="activeIndex === 0"> | 
		
	
		
			
				|  |  |           <ul class="tab_item"> |  |  |           <ul class="tab_item"> | 
		
	
		
			
				|  |  |             <li |  |  |  | 
		
	
		
			
				|  |  |               v-for="(item, index) in materialTabItem" |  |  |  | 
		
	
		
			
				|  |  |               :key="index" |  |  |  | 
		
	
		
			
				|  |  |               :class="{'active': activeItemIndex === index}" |  |  |  | 
		
	
		
			
				|  |  |               @click="tab(index)" |  |  |  | 
		
	
		
			
				|  |  |             >{{ item.name }}<span>{{ item.num }}</span> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             <li v-for="(item, index) in materialTabItem" :key="index" :class="{'active': activeItemIndex === index}" @click="tab(index)">{{ item.name }}<span>{{ item.num }}</span> | 
		
	
		
			
				|  |  |             </li> |  |  |             </li> | 
		
	
		
			
				|  |  |           </ul> |  |  |           </ul> | 
		
	
		
			
				|  |  |           <div class="material_list"> |  |  |  | 
		
	
		
			
				|  |  |             <div |  |  |  | 
		
	
		
			
				|  |  |               v-for="(item, index) in listData" |  |  |  | 
		
	
		
			
				|  |  |               :key="index" |  |  |  | 
		
	
		
			
				|  |  |               :class="['material_item', 'item_cont',{ 'item_multi': uploadContentIds.includes(item.id) }]" |  |  |  | 
		
	
		
			
				|  |  |             > |  |  |  | 
		
	
		
			
				|  |  |               <img v-if="item.coverImg" :src="item.coverImg" alt /> |  |  |  | 
		
	
		
			
				|  |  |               <div v-if="item.type == 'audio'" class="radio_img"></div> |  |  |  | 
		
	
		
			
				|  |  |               <div class="item_format"> |  |  |  | 
		
	
		
			
				|  |  |                 <span class="item_type">{{ item.type }}</span> |  |  |  | 
		
	
		
			
				|  |  |                 <!-- <span v-if="item.material_type != '0'" class="item_time">{{ item.duration | getSeconds }}</span> --> |  |  |  | 
		
	
		
			
				|  |  |               </div> |  |  |  | 
		
	
		
			
				|  |  |               <div class="file_name">{{ item.name }}</div> |  |  |  | 
		
	
		
			
				|  |  |               <span v-if="isMultiSelected" class="checked_btn" @click="selectedListItem(item.id, item.type)"></span> |  |  |  | 
		
	
		
			
				|  |  |             </div> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <div class="material_list" style="min-height: 260px"> | 
		
	
		
			
				|  |  |  |  |  |             <MaterialList ref="MaterialList" :is-multi-selected="isMultiSelected" :mulit-text="mulitText" /> | 
		
	
		
			
				|  |  |           </div> |  |  |           </div> | 
		
	
		
			
				|  |  |         </div> |  |  |         </div> | 
		
	
		
			
				|  |  |         <!-- 主题库 --> |  |  |         <!-- 主题库 --> | 
		
	
		
			
				|  |  |         <div v-if="activeIndex === 1" class="theme_cont"> |  |  |         <div v-if="activeIndex === 1" class="theme_cont"> | 
		
	
		
			
				|  |  |           <!-- 主题库list --> |  |  |           <!-- 主题库list --> | 
		
	
		
			
				|  |  |           <ThemeGalleryList |  |  |  | 
		
	
		
			
				|  |  |             ref="ThemeGalleryList" |  |  |  | 
		
	
		
			
				|  |  |             :is-multi-selected="isMultiSelected" |  |  |  | 
		
	
		
			
				|  |  |             :mulit-text="mulitText" |  |  |  | 
		
	
		
			
				|  |  |             :show-item-info="false" |  |  |  | 
		
	
		
			
				|  |  |           /> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <ThemeGalleryList ref="ThemeGalleryList" :is-multi-selected="isMultiSelected" :mulit-text="mulitText" :show-item-info="false" /> | 
		
	
		
			
				|  |  |         </div> |  |  |         </div> | 
		
	
		
			
				|  |  |         <div class="upload_list_right"> |  |  |         <div class="upload_list_right"> | 
		
	
		
			
				|  |  |           <div class="mulit_btn" @click="multiSelectBtn">{{ mulitText }}</div> |  |  |           <div class="mulit_btn" @click="multiSelectBtn">{{ mulitText }}</div> | 
		
	
	
		
			
				|  | @ -246,19 +153,11 @@ | 
		
	
		
			
				|  |  |     </div> |  |  |     </div> | 
		
	
		
			
				|  |  |     <!-- 编辑播放内容 --> |  |  |     <!-- 编辑播放内容 --> | 
		
	
		
			
				|  |  |     <div class="upload_layer"> |  |  |     <div class="upload_layer"> | 
		
	
		
			
				|  |  |       <el-dialog |  |  |  | 
		
	
		
			
				|  |  |         title="请选择播放内容" |  |  |  | 
		
	
		
			
				|  |  |         :close-on-click-modal="false" |  |  |  | 
		
	
		
			
				|  |  |         :visible.sync="listEditVisible" |  |  |  | 
		
	
		
			
				|  |  |       > |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       <el-dialog title="请选择播放内容" :close-on-click-modal="false" :visible.sync="listEditVisible"> | 
		
	
		
			
				|  |  |         <div class="total_time"> |  |  |         <div class="total_time"> | 
		
	
		
			
				|  |  |           内容总时长:3m15s |  |  |           内容总时长:3m15s | 
		
	
		
			
				|  |  |         </div> |  |  |         </div> | 
		
	
		
			
				|  |  |         <div |  |  |  | 
		
	
		
			
				|  |  |           v-for="(item, index) in selectedData" |  |  |  | 
		
	
		
			
				|  |  |           :key="index" |  |  |  | 
		
	
		
			
				|  |  |           class="edit_material" |  |  |  | 
		
	
		
			
				|  |  |         > |  |  |  | 
		
	
		
			
				|  |  |  |  |  |         <div v-for="(item, index) in selectedEditData" :key="index" class="edit_material"> | 
		
	
		
			
				|  |  |           <div class="edit_img"> |  |  |           <div class="edit_img"> | 
		
	
		
			
				|  |  |             <img v-if="item.img_path || item.material_type == 1" :src="item.img_path" :onerror="defaultImg" alt /> |  |  |             <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 v-if="!item.img_path && item.material_type == 2" class="radio_img"></div> | 
		
	
	
		
			
				|  | @ -267,67 +166,62 @@ | 
		
	
		
			
				|  |  |           <div class="edit_cont"> |  |  |           <div class="edit_cont"> | 
		
	
		
			
				|  |  |             <div class="edit_cont_base"> |  |  |             <div class="edit_cont_base"> | 
		
	
		
			
				|  |  |               <p>{{ item.material_name }}</p> |  |  |               <p>{{ item.material_name }}</p> | 
		
	
		
			
				|  |  |               <span>{{ item.material_type }}</span> |  |  |  | 
		
	
		
			
				|  |  |               <span>{{ item.size }}</span> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |               <span>{{ materialPostfix[index] }}</span> | 
		
	
		
			
				|  |  |  |  |  |               <span>{{ item.file_size | formatBytes }}</span> | 
		
	
		
			
				|  |  |             </div> |  |  |             </div> | 
		
	
		
			
				|  |  |             <div v-if="item.material_type == 0" class="edit_cont_set"> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             <!-- <div v-if="item.material_type == 0" class="edit_cont_set"> --> | 
		
	
		
			
				|  |  |  |  |  |             <el-form v-if="item.material_type == 0" :ref="setMaterialForm" :model="setMaterialForm.form" class="edit_cont_set" size="small"> | 
		
	
		
			
				|  |  |               <div class="set_time"> |  |  |               <div class="set_time"> | 
		
	
		
			
				|  |  |                 <span>展示时长</span> |  |  |                 <span>展示时长</span> | 
		
	
		
			
				|  |  |                 <el-input v-model="time" type="text" style="width: 66px" /> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |                 <el-form-item :prop="'form.'+index+'.showTime'" style="width: 100px"> | 
		
	
		
			
				|  |  |  |  |  |                   <el-input v-model="item.showTime" type="text" style="width: 66px" /> | 
		
	
		
			
				|  |  |  |  |  |                 </el-form-item> | 
		
	
		
			
				|  |  |                 <em>秒</em> |  |  |                 <em>秒</em> | 
		
	
		
			
				|  |  |               </div> |  |  |               </div> | 
		
	
		
			
				|  |  |               <div class="set_animation"> |  |  |               <div class="set_animation"> | 
		
	
		
			
				|  |  |                 <span class="set_item">切换动效</span> |  |  |                 <span class="set_item">切换动效</span> | 
		
	
		
			
				|  |  |                 <el-select v-model="animation" style="width:100px"> |  |  |  | 
		
	
		
			
				|  |  |                   <el-option label="无动画" value="0">无动画</el-option> |  |  |  | 
		
	
		
			
				|  |  |                   <el-option label="动画1" value="1">动画1</el-option> |  |  |  | 
		
	
		
			
				|  |  |                   <el-option label="动画2" value="2">动画2</el-option> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |                 <el-form-item :prop="'form.'+index+'.showAnimation'" style="width: 100px"> | 
		
	
		
			
				|  |  |  |  |  |                   <el-select v-model="item.showAnimationName" size="small" class="filter-item" value-key="name" @change="selectAnimation($event, item)"> | 
		
	
		
			
				|  |  |  |  |  |                     <el-option v-for="items in animationData" :key="items.key" :label="items.name" :value="items" /> | 
		
	
		
			
				|  |  |                   </el-select> |  |  |                   </el-select> | 
		
	
		
			
				|  |  |  |  |  |                 </el-form-item> | 
		
	
		
			
				|  |  |               </div> |  |  |               </div> | 
		
	
		
			
				|  |  |               <div class="set_time set_audio"> |  |  |               <div class="set_time set_audio"> | 
		
	
		
			
				|  |  |                 <span>音频:</span> |  |  |                 <span>音频:</span> | 
		
	
		
			
				|  |  |                 <p class="audio_name">audio.mp3</p> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |                 <p class="audio_name">{{ showAudioName }}</p> | 
		
	
		
			
				|  |  |                 <!-- 主题库音频文件不可选择 --> |  |  |                 <!-- 主题库音频文件不可选择 --> | 
		
	
		
			
				|  |  |                 <el-button type="primary" round @click="selectAudioCont">选择文件</el-button> |  |  |                 <el-button type="primary" round @click="selectAudioCont">选择文件</el-button> | 
		
	
		
			
				|  |  |               </div> |  |  |               </div> | 
		
	
		
			
				|  |  |             </div> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             </el-form> | 
		
	
		
			
				|  |  |  |  |  |             <!-- </div> --> | 
		
	
		
			
				|  |  |             <div v-else class="edit_cont_other">内容时长:{{ item.duration | getSeconds }}</div> |  |  |             <div v-else class="edit_cont_other">内容时长:{{ item.duration | getSeconds }}</div> | 
		
	
		
			
				|  |  |           </div> |  |  |           </div> | 
		
	
		
			
				|  |  |         </div> |  |  |         </div> | 
		
	
		
			
				|  |  |         <div slot="footer" class="dialog-footer"> |  |  |         <div slot="footer" class="dialog-footer"> | 
		
	
		
			
				|  |  |           <el-button type="primary" round @click="submitForm('form')">保 存</el-button> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-button type="primary" round @click="editMaterialSubmit()">保 存</el-button> | 
		
	
		
			
				|  |  |           <el-button round @click="listEditVisible = false">取 消</el-button> |  |  |           <el-button round @click="listEditVisible = false">取 消</el-button> | 
		
	
		
			
				|  |  |         </div> |  |  |         </div> | 
		
	
		
			
				|  |  |       </el-dialog> |  |  |       </el-dialog> | 
		
	
		
			
				|  |  |     </div> |  |  |     </div> | 
		
	
		
			
				|  |  |     <!-- 素材库 - 音频选择 --> |  |  |     <!-- 素材库 - 音频选择 --> | 
		
	
		
			
				|  |  |     <div class="release_layer upload_layer"> |  |  |     <div class="release_layer upload_layer"> | 
		
	
		
			
				|  |  |       <el-dialog |  |  |  | 
		
	
		
			
				|  |  |         :close-on-click-modal="false" |  |  |  | 
		
	
		
			
				|  |  |         :show-close="false" |  |  |  | 
		
	
		
			
				|  |  |         :visible.sync="selectAudioVisible" |  |  |  | 
		
	
		
			
				|  |  |         width="1200px" |  |  |  | 
		
	
		
			
				|  |  |       > |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       <el-dialog :close-on-click-modal="false" :show-close="false" :visible.sync="selectAudioVisible" width="1200px"> | 
		
	
		
			
				|  |  |         <div slot="title" class="layer_tab_title"> |  |  |         <div slot="title" class="layer_tab_title"> | 
		
	
		
			
				|  |  |           <span class="active">素材库</span> |  |  |           <span class="active">素材库</span> | 
		
	
		
			
				|  |  |         </div> |  |  |         </div> | 
		
	
		
			
				|  |  |         <div> |  |  |         <div> | 
		
	
		
			
				|  |  |           <ul class="tab_item"> |  |  |           <ul class="tab_item"> | 
		
	
		
			
				|  |  |             <li>音频<span>3</span></li> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             <li>音频<span>{{ audioListData.length }}</span></li> | 
		
	
		
			
				|  |  |           </ul> |  |  |           </ul> | 
		
	
		
			
				|  |  |           <div class="material_list"> |  |  |           <div class="material_list"> | 
		
	
		
			
				|  |  |             <div |  |  |  | 
		
	
		
			
				|  |  |               v-for="(item, index) in listData" |  |  |  | 
		
	
		
			
				|  |  |               :key="index" |  |  |  | 
		
	
		
			
				|  |  |               :class="['material_item', 'item_cont',{ 'item_multi': audioChecked === index }]" |  |  |  | 
		
	
		
			
				|  |  |             > |  |  |  | 
		
	
		
			
				|  |  |               <img v-if="item.coverImg" :src="item.coverImg" alt /> |  |  |  | 
		
	
		
			
				|  |  |               <div v-if="item.type == 'audio'" class="radio_img"></div> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             <div v-for="(item, index) in audioListData" :key="index" :class="['material_item', 'item_cont',{ 'item_multi': audioChecked == index }]"> | 
		
	
		
			
				|  |  |  |  |  |               <img v-if="item.img_path" :src="item.img_path" alt /> | 
		
	
		
			
				|  |  |  |  |  |               <div v-else class="radio_img"></div> | 
		
	
		
			
				|  |  |               <div class="item_format"> |  |  |               <div class="item_format"> | 
		
	
		
			
				|  |  |                 <span class="item_type">{{ item.type }}</span> |  |  |  | 
		
	
		
			
				|  |  |                 <span v-if="item.type !== 'JPG'" class="item_time">03:00</span> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |                 <span class="item_type">mp3</span> | 
		
	
		
			
				|  |  |  |  |  |                 <span class="item_time">{{ item.duration | getSeconds }}</span> | 
		
	
		
			
				|  |  |               </div> |  |  |               </div> | 
		
	
		
			
				|  |  |               <div class="file_name">{{ item.name }}</div> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |               <div class="file_name">{{ item.material_name }}</div> | 
		
	
		
			
				|  |  |               <span v-if="isMultiSelected" class="checked_btn" @click="audioCheckedHandle(index)"></span> |  |  |               <span v-if="isMultiSelected" class="checked_btn" @click="audioCheckedHandle(index)"></span> | 
		
	
		
			
				|  |  |             </div> |  |  |             </div> | 
		
	
		
			
				|  |  |           </div> |  |  |           </div> | 
		
	
	
		
			
				|  | @ -336,29 +230,16 @@ | 
		
	
		
			
				|  |  |           <div class="mulit_btn" @click="multiSelectBtn('audio')">{{ mulitText }}</div> |  |  |           <div class="mulit_btn" @click="multiSelectBtn('audio')">{{ mulitText }}</div> | 
		
	
		
			
				|  |  |         </div> |  |  |         </div> | 
		
	
		
			
				|  |  |         <div slot="footer" class="dialog-footer"> |  |  |         <div slot="footer" class="dialog-footer"> | 
		
	
		
			
				|  |  |           <el-button type="primary" round>确 定</el-button> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-button type="primary" round @click="audioCheckedSubmit">确 定</el-button> | 
		
	
		
			
				|  |  |           <el-button round @click="cancelContSelect('audio')">取 消</el-button> |  |  |           <el-button round @click="cancelContSelect('audio')">取 消</el-button> | 
		
	
		
			
				|  |  |         </div> |  |  |         </div> | 
		
	
		
			
				|  |  |       </el-dialog> |  |  |       </el-dialog> | 
		
	
		
			
				|  |  |     </div> |  |  |     </div> | 
		
	
		
			
				|  |  |     <!-- 添加发布的设备 --> |  |  |     <!-- 添加发布的设备 --> | 
		
	
		
			
				|  |  |     <div class="add_device_layer"> |  |  |     <div class="add_device_layer"> | 
		
	
		
			
				|  |  |       <el-dialog |  |  |  | 
		
	
		
			
				|  |  |         title="请选择设备" |  |  |  | 
		
	
		
			
				|  |  |         :close-on-click-modal="false" |  |  |  | 
		
	
		
			
				|  |  |         :visible.sync="selectDeviceVisible" |  |  |  | 
		
	
		
			
				|  |  |         width="400px" |  |  |  | 
		
	
		
			
				|  |  |       > |  |  |  | 
		
	
		
			
				|  |  |         <el-tag |  |  |  | 
		
	
		
			
				|  |  |           v-for="tag in deviceAllTags" |  |  |  | 
		
	
		
			
				|  |  |           :key="tag" |  |  |  | 
		
	
		
			
				|  |  |           :disable-transitions="true" |  |  |  | 
		
	
		
			
				|  |  |           :hit="false" |  |  |  | 
		
	
		
			
				|  |  |           color="#cbe3ff" |  |  |  | 
		
	
		
			
				|  |  |           class="all_tags" |  |  |  | 
		
	
		
			
				|  |  |           @click="tagHandle(tag)" |  |  |  | 
		
	
		
			
				|  |  |         > |  |  |  | 
		
	
		
			
				|  |  |           {{ tag }} |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       <el-dialog title="请选择设备" :close-on-click-modal="false" :visible.sync="selectDeviceVisible" width="400px"> | 
		
	
		
			
				|  |  |  |  |  |         <el-tag v-for="tag in deviceAllTags" :key="tag.device_id" :disable-transitions="true" :hit="false" color="#cbe3ff" class="all_tags" @click="tagHandle(tag)"> | 
		
	
		
			
				|  |  |  |  |  |           {{ tag.device_name }} | 
		
	
		
			
				|  |  |         </el-tag> |  |  |         </el-tag> | 
		
	
		
			
				|  |  |       </el-dialog> |  |  |       </el-dialog> | 
		
	
		
			
				|  |  |     </div> |  |  |     </div> | 
		
	
	
		
			
				|  | @ -368,36 +249,46 @@ | 
		
	
		
			
				|  |  | <script> |  |  | <script> | 
		
	
		
			
				|  |  | import draggable from 'vuedraggable' |  |  | import draggable from 'vuedraggable' | 
		
	
		
			
				|  |  | import ThemeGalleryList from '../components/ThemeGalleryList.vue' |  |  | import ThemeGalleryList from '../components/ThemeGalleryList.vue' | 
		
	
		
			
				|  |  | import { getSeconds } from '@/utils/index.js' |  |  |  | 
		
	
		
			
				|  |  |  |  |  | import MaterialList from '../components/MaterialCompontentList.vue' | 
		
	
		
			
				|  |  |  |  |  | import { getMaterialByType } from '@/api/material/material' | 
		
	
		
			
				|  |  |  |  |  | import { ReqDeviceList } from '@/api/device/deviceList.js' | 
		
	
		
			
				|  |  |  |  |  | import { getSeconds, formatBytes } from '@/utils/index.js' | 
		
	
		
			
				|  |  | export default { |  |  | export default { | 
		
	
		
			
				|  |  |   name: 'ImmediateRelease', |  |  |   name: 'ImmediateRelease', | 
		
	
		
			
				|  |  |   components: { |  |  |   components: { | 
		
	
		
			
				|  |  |     draggable, |  |  |     draggable, | 
		
	
		
			
				|  |  |     ThemeGalleryList |  |  |  | 
		
	
		
			
				|  |  |  |  |  |     ThemeGalleryList, | 
		
	
		
			
				|  |  |  |  |  |     MaterialList | 
		
	
		
			
				|  |  |   }, |  |  |   }, | 
		
	
		
			
				|  |  |   filters: { |  |  |   filters: { | 
		
	
		
			
				|  |  |     getSeconds (s) { |  |  |     getSeconds (s) { | 
		
	
		
			
				|  |  |       return getSeconds(s) |  |  |       return getSeconds(s) | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     formatBytes (bytes, decimals) { | 
		
	
		
			
				|  |  |  |  |  |       return formatBytes(bytes, decimals) | 
		
	
		
			
				|  |  |     } |  |  |     } | 
		
	
		
			
				|  |  |   }, |  |  |   }, | 
		
	
		
			
				|  |  |   data () { |  |  |   data () { | 
		
	
		
			
				|  |  |     return { |  |  |     return { | 
		
	
		
			
				|  |  |       materialSelected: [], // 从其他页面选择带过来的素材 |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       orga_id: '133221333123111', | 
		
	
		
			
				|  |  |  |  |  |       selectedMaterial: [], // 从其他页面选择带过来的素材 | 
		
	
		
			
				|  |  |  |  |  |       materialPostfix: [], | 
		
	
		
			
				|  |  |       publishType: 0, // 判断是定时发布还是即时发布页面 |  |  |       publishType: 0, // 判断是定时发布还是即时发布页面 | 
		
	
		
			
				|  |  |       time: 15, |  |  |  | 
		
	
		
			
				|  |  |       audio_name: 'audio.mp3', |  |  |  | 
		
	
		
			
				|  |  |       animation: null, |  |  |  | 
		
	
		
			
				|  |  |       selectDeviceVisible: false, |  |  |  | 
		
	
		
			
				|  |  |       listEditVisible: false, |  |  |  | 
		
	
		
			
				|  |  |       selectContVisible: false, |  |  |  | 
		
	
		
			
				|  |  |       activeIndex: 0, |  |  |  | 
		
	
		
			
				|  |  |       activeItemIndex: 0, |  |  |  | 
		
	
		
			
				|  |  |       selectAudioVisible: false, |  |  |  | 
		
	
		
			
				|  |  |       audioChecked: null, |  |  |  | 
		
	
		
			
				|  |  |       deviceAllTags: ['GCXR1', 'GCXR2', 'GCXR3', 'GCXR4', 'GCXR5'], |  |  |  | 
		
	
		
			
				|  |  |       deviceTags: [], |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       themeType: null, | 
		
	
		
			
				|  |  |  |  |  |       page: 1, | 
		
	
		
			
				|  |  |  |  |  |       pageSize: 10, | 
		
	
		
			
				|  |  |  |  |  |       audioListData: [], // | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  |       selectDeviceVisible: false, // 设备list - layer | 
		
	
		
			
				|  |  |  |  |  |       deviceAllTags: [], // 设备list | 
		
	
		
			
				|  |  |  |  |  |       deviceTags: [], // 已选择设备list | 
		
	
		
			
				|  |  |  |  |  |       selectContVisible: false, // 选择内容素材/主题 - layer | 
		
	
		
			
				|  |  |  |  |  |       selectAudioVisible: false, // 音频list-layer | 
		
	
		
			
				|  |  |  |  |  |       audioChecked: null, // 音频已选中的 | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  |       mulitText: '多选', |  |  |       mulitText: '多选', | 
		
	
		
			
				|  |  |       isMultiSelected: false, |  |  |       isMultiSelected: false, | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  |       form: { |  |  |       form: { | 
		
	
		
			
				|  |  |         name: '', |  |  |         name: '', | 
		
	
		
			
				|  |  |         date: null, |  |  |         date: null, | 
		
	
	
		
			
				|  | @ -409,6 +300,7 @@ export default { | 
		
	
		
			
				|  |  |         actual_end: '', // “实际结束时间 yyyy-MM-dd HH:mm:ss”, |  |  |         actual_end: '', // “实际结束时间 yyyy-MM-dd HH:mm:ss”, | 
		
	
		
			
				|  |  |         is_topping: false, // 是否置顶, |  |  |         is_topping: false, // 是否置顶, | 
		
	
		
			
				|  |  |         orga_id: '', // "机构id" |  |  |         orga_id: '', // "机构id" | 
		
	
		
			
				|  |  |  |  |  |         bgm_main: '', | 
		
	
		
			
				|  |  |         relaase_name: '', // 发布名称 |  |  |         relaase_name: '', // 发布名称 | 
		
	
		
			
				|  |  |         release_cycle: '', // 发布周期 0.无 1.每天 2.每周 |  |  |         release_cycle: '', // 发布周期 0.无 1.每天 2.每周 | 
		
	
		
			
				|  |  |         release_weekly: '', // 发布每周 如果设置为每天则为空 |  |  |         release_weekly: '', // 发布每周 如果设置为每天则为空 | 
		
	
	
		
			
				|  | @ -431,44 +323,33 @@ export default { | 
		
	
		
			
				|  |  |         release_start: '', // 发布开始时间 yyyy-MM-dd HH:mm:ss |  |  |         release_start: '', // 发布开始时间 yyyy-MM-dd HH:mm:ss | 
		
	
		
			
				|  |  |         release_type: '' // 发布类型 |  |  |         release_type: '' // 发布类型 | 
		
	
		
			
				|  |  |       }, |  |  |       }, | 
		
	
		
			
				|  |  |       listData: [ |  |  |  | 
		
	
		
			
				|  |  |         { |  |  |  | 
		
	
		
			
				|  |  |           id: '1', |  |  |  | 
		
	
		
			
				|  |  |           name: '1', |  |  |  | 
		
	
		
			
				|  |  |           type: 'JPG', |  |  |  | 
		
	
		
			
				|  |  |           size: '12kb', |  |  |  | 
		
	
		
			
				|  |  |           coverImg: require('@/assets/images/background.jpg'), |  |  |  | 
		
	
		
			
				|  |  |           time: '' |  |  |  | 
		
	
		
			
				|  |  |         }, |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       contentIds: [], | 
		
	
		
			
				|  |  |  |  |  |       listEditVisible: false, // 可编辑list素材-layer | 
		
	
		
			
				|  |  |  |  |  |       selectedEditData: [], // 可编辑list内容 - 选择的item | 
		
	
		
			
				|  |  |  |  |  |       showAudioName: '', | 
		
	
		
			
				|  |  |  |  |  |       showAudioUrl: '', | 
		
	
		
			
				|  |  |  |  |  |       // formListData: [] | 
		
	
		
			
				|  |  |  |  |  |       setMaterialForm: [], | 
		
	
		
			
				|  |  |  |  |  |       // setMaterialForm: { | 
		
	
		
			
				|  |  |  |  |  |       //   showTime: 15, | 
		
	
		
			
				|  |  |  |  |  |       //   showAnimation: 0, | 
		
	
		
			
				|  |  |  |  |  |       //   showAnimationName: '' | 
		
	
		
			
				|  |  |  |  |  |       // }, | 
		
	
		
			
				|  |  |  |  |  |       animationData: [ | 
		
	
		
			
				|  |  |         { |  |  |         { | 
		
	
		
			
				|  |  |           id: '2', |  |  |  | 
		
	
		
			
				|  |  |           name: '2', |  |  |  | 
		
	
		
			
				|  |  |           type: 'JPG', |  |  |  | 
		
	
		
			
				|  |  |           size: '12kb', |  |  |  | 
		
	
		
			
				|  |  |           coverImg: require('@/assets/images/background.jpg'), |  |  |  | 
		
	
		
			
				|  |  |           time: '' |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           key: '0', | 
		
	
		
			
				|  |  |  |  |  |           name: '无动画' | 
		
	
		
			
				|  |  |         }, |  |  |         }, | 
		
	
		
			
				|  |  |         { |  |  |         { | 
		
	
		
			
				|  |  |           id: '3', |  |  |  | 
		
	
		
			
				|  |  |           name: '4', |  |  |  | 
		
	
		
			
				|  |  |           type: 'VEDIO', |  |  |  | 
		
	
		
			
				|  |  |           size: '12kb', |  |  |  | 
		
	
		
			
				|  |  |           coverImg: require('@/assets/images/background.jpg'), |  |  |  | 
		
	
		
			
				|  |  |           time: '03:00' |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           key: '1', | 
		
	
		
			
				|  |  |  |  |  |           name: '动画1' | 
		
	
		
			
				|  |  |         }, |  |  |         }, | 
		
	
		
			
				|  |  |         { |  |  |         { | 
		
	
		
			
				|  |  |           id: '4', |  |  |  | 
		
	
		
			
				|  |  |           name: '4', |  |  |  | 
		
	
		
			
				|  |  |           type: 'audio', |  |  |  | 
		
	
		
			
				|  |  |           size: '12kb', |  |  |  | 
		
	
		
			
				|  |  |           coverImg: '', |  |  |  | 
		
	
		
			
				|  |  |           time: '01:20' |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           key: '2', | 
		
	
		
			
				|  |  |  |  |  |           name: '动画2' | 
		
	
		
			
				|  |  |         } |  |  |         } | 
		
	
		
			
				|  |  |       ], |  |  |       ], | 
		
	
		
			
				|  |  |       contentIds: [], |  |  |  | 
		
	
		
			
				|  |  |       uploadContentIds: [], |  |  |  | 
		
	
		
			
				|  |  |       selectedData: [], // 选择内容 - 选择的item |  |  |  | 
		
	
		
			
				|  |  |       materialTabItem: [ |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       materialTabItem: [ // 素材库 - tab切换title | 
		
	
		
			
				|  |  |         { |  |  |         { | 
		
	
		
			
				|  |  |           key: 1, |  |  |           key: 1, | 
		
	
		
			
				|  |  |           name: '全部', |  |  |           name: '全部', | 
		
	
	
		
			
				|  | @ -489,7 +370,10 @@ export default { | 
		
	
		
			
				|  |  |           name: '音频', |  |  |           name: '音频', | 
		
	
		
			
				|  |  |           num: '1' |  |  |           num: '1' | 
		
	
		
			
				|  |  |         } |  |  |         } | 
		
	
		
			
				|  |  |       ] |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       ], | 
		
	
		
			
				|  |  |  |  |  |       activeIndex: 0, | 
		
	
		
			
				|  |  |  |  |  |       activeItemIndex: 0, | 
		
	
		
			
				|  |  |  |  |  |       uploadContentIds: [] // 素材 / 主题库已选择的 | 
		
	
		
			
				|  |  |     } |  |  |     } | 
		
	
		
			
				|  |  |   }, |  |  |   }, | 
		
	
		
			
				|  |  |   computed: { |  |  |   computed: { | 
		
	
	
		
			
				|  | @ -501,8 +385,15 @@ export default { | 
		
	
		
			
				|  |  |     } |  |  |     } | 
		
	
		
			
				|  |  |   }, |  |  |   }, | 
		
	
		
			
				|  |  |   created () { |  |  |   created () { | 
		
	
		
			
				|  |  |     this.materialSelected = JSON.parse(localStorage.getItem('selectedMaterial')) |  |  |  | 
		
	
		
			
				|  |  |     console.log(this.materialSelected) |  |  |  | 
		
	
		
			
				|  |  |  |  |  |     this.selectedMaterial = JSON.parse(localStorage.getItem('selectedMaterial')) | 
		
	
		
			
				|  |  |  |  |  |     console.log(this.selectedMaterial) | 
		
	
		
			
				|  |  |  |  |  |     // 素材类型格式处理 | 
		
	
		
			
				|  |  |  |  |  |     this.selectedMaterial.forEach((item, key) => { | 
		
	
		
			
				|  |  |  |  |  |       this.materialPostfix[key] = item.deposit_url.substring( | 
		
	
		
			
				|  |  |  |  |  |         item.deposit_url.lastIndexOf('.') + 1, | 
		
	
		
			
				|  |  |  |  |  |         item.deposit_url.length | 
		
	
		
			
				|  |  |  |  |  |       ) | 
		
	
		
			
				|  |  |  |  |  |     }) | 
		
	
		
			
				|  |  |   }, |  |  |   }, | 
		
	
		
			
				|  |  |   mounted () { |  |  |   mounted () { | 
		
	
		
			
				|  |  |     console.log(this.$route.query.tag) |  |  |     console.log(this.$route.query.tag) | 
		
	
	
		
			
				|  | @ -512,6 +403,7 @@ export default { | 
		
	
		
			
				|  |  |     if (this.$route.query.tag) { |  |  |     if (this.$route.query.tag) { | 
		
	
		
			
				|  |  |       this.publishType = this.$route.query.tag |  |  |       this.publishType = this.$route.query.tag | 
		
	
		
			
				|  |  |     } |  |  |     } | 
		
	
		
			
				|  |  |  |  |  |     this.ReqDeviceList() | 
		
	
		
			
				|  |  |   }, |  |  |   }, | 
		
	
		
			
				|  |  |   methods: { |  |  |   methods: { | 
		
	
		
			
				|  |  |     // 发布提交 |  |  |     // 发布提交 | 
		
	
	
		
			
				|  | @ -520,35 +412,209 @@ export default { | 
		
	
		
			
				|  |  |       console.log(this.form.relaase_name) |  |  |       console.log(this.form.relaase_name) | 
		
	
		
			
				|  |  |       console.log(this.form.release_start) |  |  |       console.log(this.form.release_start) | 
		
	
		
			
				|  |  |       console.log(this.form.is_topping) |  |  |       console.log(this.form.is_topping) | 
		
	
		
			
				|  |  |  |  |  |       console.log(this.form.release_device) | 
		
	
		
			
				|  |  |  |  |  |       if (this.form.release_device == 1) { | 
		
	
		
			
				|  |  |  |  |  |         this.form.release_deviceDTOs = [] | 
		
	
		
			
				|  |  |  |  |  |       } else { | 
		
	
		
			
				|  |  |  |  |  |         if (this.deviceTags.length == 0) { | 
		
	
		
			
				|  |  |  |  |  |           this.$message.error('请选择设备 !') | 
		
	
		
			
				|  |  |  |  |  |           return | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |  |         this.form.release_deviceDTOs = this.deviceTags.map(item => { | 
		
	
		
			
				|  |  |  |  |  |           const json = {} | 
		
	
		
			
				|  |  |  |  |  |           json.device_id = item.device_id | 
		
	
		
			
				|  |  |  |  |  |           return json | 
		
	
		
			
				|  |  |  |  |  |         }) | 
		
	
		
			
				|  |  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |  |       console.log(this.form.release_deviceDTOs) | 
		
	
		
			
				|  |  |  |  |  |       this.form.release_type = this.publishType | 
		
	
		
			
				|  |  |  |  |  |       console.log(this.form.release_type) | 
		
	
		
			
				|  |  |  |  |  |       this.form.release_end = this.publishType ? '' : this.form.release_start | 
		
	
		
			
				|  |  |  |  |  |       console.log(this.form.release_end) | 
		
	
		
			
				|  |  |  |  |  |       console.log('-----------------------------') | 
		
	
		
			
				|  |  |  |  |  |       console.log(this.selectedMaterial) | 
		
	
		
			
				|  |  |  |  |  |       console.log('-----------------------------') | 
		
	
		
			
				|  |  |  |  |  |       console.log("看这里这里") | 
		
	
		
			
				|  |  |  |  |  |       console.log(this.selectedEditData) | 
		
	
		
			
				|  |  |  |  |  |       console.log(this.selectedMaterial) | 
		
	
		
			
				|  |  |  |  |  |       console.log("看这里这里") | 
		
	
		
			
				|  |  |  |  |  |       this.form.release_materialDTOs = this.selectedMaterial.map(item => { | 
		
	
		
			
				|  |  |  |  |  |         const json = {} | 
		
	
		
			
				|  |  |  |  |  |         if (item.material_type == 0 && (item.showTime || item.showAnimationName || item.showAnimation)) { | 
		
	
		
			
				|  |  |  |  |  |           json.duration = item.showTime | 
		
	
		
			
				|  |  |  |  |  |           json.effect = item.showAnimation | 
		
	
		
			
				|  |  |  |  |  |           json.bgm_path = '' | 
		
	
		
			
				|  |  |  |  |  |         } else { | 
		
	
		
			
				|  |  |  |  |  |           json.duration = 0 | 
		
	
		
			
				|  |  |  |  |  |           json.effect = 0 | 
		
	
		
			
				|  |  |  |  |  |           json.bgm_path = null | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |  |         json.material_id = item.material_id | 
		
	
		
			
				|  |  |  |  |  |         json.material_name = item.material_name | 
		
	
		
			
				|  |  |  |  |  |         json.img_path = item.img_path | 
		
	
		
			
				|  |  |  |  |  |         json.file_size = item.file_size | 
		
	
		
			
				|  |  |  |  |  |         json.rm_id = null | 
		
	
		
			
				|  |  |  |  |  |         return json | 
		
	
		
			
				|  |  |  |  |  |       }) | 
		
	
		
			
				|  |  |       console.log(this.form.release_materialDTOs) |  |  |       console.log(this.form.release_materialDTOs) | 
		
	
		
			
				|  |  |  |  |  |       console.log("看这里release_materialDTOs") | 
		
	
		
			
				|  |  |  |  |  |       const isBgm = this.selectedMaterial.find(item => { | 
		
	
		
			
				|  |  |  |  |  |         return item.material_type == 2 | 
		
	
		
			
				|  |  |  |  |  |       }) | 
		
	
		
			
				|  |  |  |  |  |       console.log(this.form.bgm_main) | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  | 
 |  |  |  | 
		
	
		
			
				|  |  |     selectEdit() { |  |  |  | 
		
	
		
			
				|  |  |       this.listEditVisible = true |  |  |  | 
		
	
		
			
				|  |  |       // console.log(this.selectedData) |  |  |  | 
		
	
		
			
				|  |  |  |  |  |     // 获取设备列表 | 
		
	
		
			
				|  |  |  |  |  |     ReqDeviceList () { | 
		
	
		
			
				|  |  |  |  |  |       const params = { | 
		
	
		
			
				|  |  |  |  |  |         device_id: '', | 
		
	
		
			
				|  |  |  |  |  |         device_name: '', | 
		
	
		
			
				|  |  |  |  |  |         is_state: '', | 
		
	
		
			
				|  |  |  |  |  |         page: 1, | 
		
	
		
			
				|  |  |  |  |  |         size: 10 | 
		
	
		
			
				|  |  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |  |       ReqDeviceList(params).then(res => { | 
		
	
		
			
				|  |  |  |  |  |         if (res.code == 200) { | 
		
	
		
			
				|  |  |  |  |  |           this.deviceAllTags = res.data.content | 
		
	
		
			
				|  |  |  |  |  |           // this.total = res.data.totalElements | 
		
	
		
			
				|  |  |  |  |  |           // this.queryInfo.size = res.data.size | 
		
	
		
			
				|  |  |  |  |  |         } else { | 
		
	
		
			
				|  |  |  |  |  |           return this.$message.error('获取设备列表失败!') | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |  |       }) | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     dragEnd() { |  |  |  | 
		
	
		
			
				|  |  |       // console.log(this.listData) |  |  |  | 
		
	
		
			
				|  |  |       // console.log(this.selectedData) |  |  |  | 
		
	
		
			
				|  |  |  |  |  |     // 设备list - show | 
		
	
		
			
				|  |  |  |  |  |     addDeviceTag () { | 
		
	
		
			
				|  |  |  |  |  |       this.selectDeviceVisible = true | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     // 设备选中list | 
		
	
		
			
				|  |  |  |  |  |     tagHandle (tag) { | 
		
	
		
			
				|  |  |  |  |  |       if (this.deviceTags.length == 0) { | 
		
	
		
			
				|  |  |  |  |  |         this.deviceTags.push(tag) | 
		
	
		
			
				|  |  |  |  |  |       } else { | 
		
	
		
			
				|  |  |  |  |  |         const result = this.deviceTags.find((item) => { | 
		
	
		
			
				|  |  |  |  |  |           return item == tag | 
		
	
		
			
				|  |  |  |  |  |         }) | 
		
	
		
			
				|  |  |  |  |  |         if (!result) { | 
		
	
		
			
				|  |  |  |  |  |           this.deviceTags.push(tag) | 
		
	
		
			
				|  |  |  |  |  |         } else { | 
		
	
		
			
				|  |  |  |  |  |           this.$message.error('已选择过了~') | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |  |       } | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     // 删除已选择的设备 | 
		
	
		
			
				|  |  |  |  |  |     deltTags (tag) { | 
		
	
		
			
				|  |  |  |  |  |       this.deviceTags.splice(this.deviceTags.indexOf(tag), 1) | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     // 清空已选择的设备 | 
		
	
		
			
				|  |  |  |  |  |     clearDevice () { | 
		
	
		
			
				|  |  |  |  |  |       this.deviceTags = [] | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     // 根据素材类型获取素材 | 
		
	
		
			
				|  |  |  |  |  |     getMaterialByType () { | 
		
	
		
			
				|  |  |  |  |  |       const params = { | 
		
	
		
			
				|  |  |  |  |  |         'theme_name': '', | 
		
	
		
			
				|  |  |  |  |  |         'theme_type': this.themeType, | 
		
	
		
			
				|  |  |  |  |  |         'theme_type_not': '', | 
		
	
		
			
				|  |  |  |  |  |         'orga_id': this.orga_id, | 
		
	
		
			
				|  |  |  |  |  |         'page': this.page, | 
		
	
		
			
				|  |  |  |  |  |         'size': this.pageSize | 
		
	
		
			
				|  |  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |  |       getMaterialByType(params).then(res => { | 
		
	
		
			
				|  |  |  |  |  |         if (res.code == 200) { | 
		
	
		
			
				|  |  |  |  |  |           this.audioListData = res.data.content | 
		
	
		
			
				|  |  |  |  |  |           // 素材类型格式处理 | 
		
	
		
			
				|  |  |  |  |  |           this.audioListData.forEach((item, key) => { | 
		
	
		
			
				|  |  |  |  |  |             this.materialPostfix[key] = item.deposit_url.substring( | 
		
	
		
			
				|  |  |  |  |  |               item.deposit_url.lastIndexOf('.') + 1, | 
		
	
		
			
				|  |  |  |  |  |               item.deposit_url.length | 
		
	
		
			
				|  |  |  |  |  |             ) | 
		
	
		
			
				|  |  |  |  |  |           }) | 
		
	
		
			
				|  |  |  |  |  |         } else { | 
		
	
		
			
				|  |  |  |  |  |           this.$message({ | 
		
	
		
			
				|  |  |  |  |  |             message: res.msg, | 
		
	
		
			
				|  |  |  |  |  |             type: 'error' | 
		
	
		
			
				|  |  |  |  |  |           }) | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |  |       }) | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     // 删除选择的素材 | 
		
	
		
			
				|  |  |     selectDelt (id, i) { |  |  |     selectDelt (id, i) { | 
		
	
		
			
				|  |  |       const index = this.contentIds.indexOf(id) |  |  |       const index = this.contentIds.indexOf(id) | 
		
	
		
			
				|  |  |       this.contentIds.splice(index, 1) |  |  |       this.contentIds.splice(index, 1) | 
		
	
		
			
				|  |  |       this.selectedData.splice(index, 1) |  |  |  | 
		
	
		
			
				|  |  |       this.listSelectedData.splice(i, 1) |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       this.selectedEditData.splice(index, 1) | 
		
	
		
			
				|  |  |  |  |  |       this.selectedMaterial.splice(i, 1) | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     selectedItem(id, item) { |  |  |  | 
		
	
		
			
				|  |  |  |  |  |     // 选中可编辑的 | 
		
	
		
			
				|  |  |  |  |  |     clickMaterialItem (id, item) { | 
		
	
		
			
				|  |  |       const arr = this.contentIds |  |  |       const arr = this.contentIds | 
		
	
		
			
				|  |  |       if (arr.includes(id)) { |  |  |       if (arr.includes(id)) { | 
		
	
		
			
				|  |  |         const index = arr.indexOf(id) |  |  |         const index = arr.indexOf(id) | 
		
	
		
			
				|  |  |         if (index > -1) { |  |  |         if (index > -1) { | 
		
	
		
			
				|  |  |           arr.splice(index, 1) |  |  |           arr.splice(index, 1) | 
		
	
		
			
				|  |  |           this.selectedData.splice(index, 1) |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           this.selectedEditData.splice(index, 1) | 
		
	
		
			
				|  |  |         } |  |  |         } | 
		
	
		
			
				|  |  |       } else { |  |  |       } else { | 
		
	
		
			
				|  |  |         this.contentIds.push(id) |  |  |         this.contentIds.push(id) | 
		
	
		
			
				|  |  |         this.selectedData.push(item) |  |  |  | 
		
	
		
			
				|  |  |  |  |  |         this.selectedEditData.push(item) | 
		
	
		
			
				|  |  |       } |  |  |       } | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     // 编辑-已选择的 | 
		
	
		
			
				|  |  |  |  |  |     selectEdit () { | 
		
	
		
			
				|  |  |  |  |  |       this.listEditVisible = true | 
		
	
		
			
				|  |  |  |  |  |       let form = { | 
		
	
		
			
				|  |  |  |  |  |         showTime: 15, | 
		
	
		
			
				|  |  |  |  |  |         showAnimation: '', | 
		
	
		
			
				|  |  |  |  |  |         showAnimationName: '' | 
		
	
		
			
				|  |  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |  |       this.selectedEditData.map((item, index) => { | 
		
	
		
			
				|  |  |  |  |  |         if (item.material_type == 0) { | 
		
	
		
			
				|  |  |  |  |  |           this.setMaterialForm.push(form) | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |  |       }) | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     dragEnd () { | 
		
	
		
			
				|  |  |  |  |  |       // console.log(this.selectedEditData) | 
		
	
		
			
				|  |  |  |  |  |       // console.log(this.selectedMaterial) | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     // 选择音频 | 
		
	
		
			
				|  |  |  |  |  |     selectAudioCont () { | 
		
	
		
			
				|  |  |  |  |  |       this.isMultiSelected = false | 
		
	
		
			
				|  |  |  |  |  |       this.mulitText = '选择' | 
		
	
		
			
				|  |  |  |  |  |       this.selectAudioVisible = true | 
		
	
		
			
				|  |  |  |  |  |       this.themeType = 2 | 
		
	
		
			
				|  |  |  |  |  |       this.getMaterialByType() | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     // 音频选中-单选 | 
		
	
		
			
				|  |  |  |  |  |     audioCheckedHandle (index) { | 
		
	
		
			
				|  |  |  |  |  |       if (index != this.audioChecked) { | 
		
	
		
			
				|  |  |  |  |  |         this.audioChecked = index | 
		
	
		
			
				|  |  |  |  |  |       } else { | 
		
	
		
			
				|  |  |  |  |  |         this.audioChecked = -1 | 
		
	
		
			
				|  |  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     audioCheckedSubmit () { | 
		
	
		
			
				|  |  |  |  |  |       this.selectAudioVisible = false | 
		
	
		
			
				|  |  |  |  |  |       if (this.audioChecked != -1) { | 
		
	
		
			
				|  |  |  |  |  |         const index = this.audioChecked | 
		
	
		
			
				|  |  |  |  |  |         this.showAudioName = this.audioListData[index].material_name | 
		
	
		
			
				|  |  |  |  |  |         this.showAudioUrl = this.audioListData[index].deposit_url | 
		
	
		
			
				|  |  |  |  |  |       } else { | 
		
	
		
			
				|  |  |  |  |  |         this.showAudioName = '' | 
		
	
		
			
				|  |  |  |  |  |         this.showAudioUrl = '' | 
		
	
		
			
				|  |  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     // 动画切换 | 
		
	
		
			
				|  |  |  |  |  |     selectAnimation (event, item) { | 
		
	
		
			
				|  |  |  |  |  |       console.log(event) | 
		
	
		
			
				|  |  |  |  |  |       console.log(item) | 
		
	
		
			
				|  |  |  |  |  |       console.log(event.key + ".." + event.name) | 
		
	
		
			
				|  |  |  |  |  |       item.showAnimationName = event.name | 
		
	
		
			
				|  |  |  |  |  |       item.showAnimation = event.key | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     // 提交 - 编辑素材 | 
		
	
		
			
				|  |  |  |  |  |     editMaterialSubmit () { | 
		
	
		
			
				|  |  |  |  |  |       this.listEditVisible = false | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     // 多选btn |  |  |     // 多选btn | 
		
	
		
			
				|  |  |     multiSelectBtn (type) { |  |  |     multiSelectBtn (type) { | 
		
	
	
		
			
				|  | @ -556,9 +622,9 @@ export default { | 
		
	
		
			
				|  |  |       if (this.isMultiSelected) { |  |  |       if (this.isMultiSelected) { | 
		
	
		
			
				|  |  |         this.mulitText = '取消' |  |  |         this.mulitText = '取消' | 
		
	
		
			
				|  |  |       } else { |  |  |       } else { | 
		
	
		
			
				|  |  |         if (type === 'audio') { |  |  |  | 
		
	
		
			
				|  |  |  |  |  |         if (type == 'audio') { | 
		
	
		
			
				|  |  |           this.mulitText = '选择' |  |  |           this.mulitText = '选择' | 
		
	
		
			
				|  |  |           this.audioChecked = null |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           this.audioChecked = -1 | 
		
	
		
			
				|  |  |         } else { |  |  |         } else { | 
		
	
		
			
				|  |  |           this.mulitText = '多选' |  |  |           this.mulitText = '多选' | 
		
	
		
			
				|  |  |           this.uploadContentIds = [] |  |  |           this.uploadContentIds = [] | 
		
	
	
		
			
				|  | @ -577,23 +643,6 @@ export default { | 
		
	
		
			
				|  |  |         this.uploadContentIds.push(id) |  |  |         this.uploadContentIds.push(id) | 
		
	
		
			
				|  |  |       } |  |  |       } | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     // 设备选择 |  |  |  | 
		
	
		
			
				|  |  |     addDeviceTag() { |  |  |  | 
		
	
		
			
				|  |  |       this.selectDeviceVisible = true |  |  |  | 
		
	
		
			
				|  |  |     }, |  |  |  | 
		
	
		
			
				|  |  |     tagHandle(tag) { |  |  |  | 
		
	
		
			
				|  |  |       console.log(tag) |  |  |  | 
		
	
		
			
				|  |  |       this.deviceTags.push(tag) |  |  |  | 
		
	
		
			
				|  |  |     }, |  |  |  | 
		
	
		
			
				|  |  |     // 删除已选择的设备 |  |  |  | 
		
	
		
			
				|  |  |     deltTags(tag) { |  |  |  | 
		
	
		
			
				|  |  |       this.deviceTags.splice(this.deviceTags.indexOf(tag), 1) |  |  |  | 
		
	
		
			
				|  |  |       console.log(this.deviceTags) |  |  |  | 
		
	
		
			
				|  |  |     }, |  |  |  | 
		
	
		
			
				|  |  |     // 清空已选择的设备 |  |  |  | 
		
	
		
			
				|  |  |     clearDevice() { |  |  |  | 
		
	
		
			
				|  |  |       this.deviceTags = [] |  |  |  | 
		
	
		
			
				|  |  |     }, |  |  |  | 
		
	
		
			
				|  |  |     // 选择内容-素材库/主题库 tab |  |  |     // 选择内容-素材库/主题库 tab | 
		
	
		
			
				|  |  |     tabAll (index) { |  |  |     tabAll (index) { | 
		
	
		
			
				|  |  |       this.activeIndex = index |  |  |       this.activeIndex = index | 
		
	
	
		
			
				|  | @ -611,24 +660,14 @@ export default { | 
		
	
		
			
				|  |  |         this.form.onweek = [] |  |  |         this.form.onweek = [] | 
		
	
		
			
				|  |  |       } |  |  |       } | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     // 选择音频 |  |  |  | 
		
	
		
			
				|  |  |     selectAudioCont() { |  |  |  | 
		
	
		
			
				|  |  |       this.isMultiSelected = false |  |  |  | 
		
	
		
			
				|  |  |       this.mulitText = '选择' |  |  |  | 
		
	
		
			
				|  |  |       this.selectAudioVisible = true |  |  |  | 
		
	
		
			
				|  |  |     }, |  |  |  | 
		
	
		
			
				|  |  |     // 音频选中-单选 |  |  |  | 
		
	
		
			
				|  |  |     audioCheckedHandle(index) { |  |  |  | 
		
	
		
			
				|  |  |       this.audioChecked = index |  |  |  | 
		
	
		
			
				|  |  |       console.log(this.audioChecked) |  |  |  | 
		
	
		
			
				|  |  |     }, |  |  |  | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  |     // 素材选择 - 取消按钮 |  |  |     // 素材选择 - 取消按钮 | 
		
	
		
			
				|  |  |     cancelContSelect (type) { |  |  |     cancelContSelect (type) { | 
		
	
		
			
				|  |  |       this.isMultiSelected = false |  |  |       this.isMultiSelected = false | 
		
	
		
			
				|  |  |       if (type === 'audio') { |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       if (type == 'audio') { | 
		
	
		
			
				|  |  |         this.selectAudioVisible = false |  |  |         this.selectAudioVisible = false | 
		
	
		
			
				|  |  |         this.mulitText = '选择' |  |  |         this.mulitText = '选择' | 
		
	
		
			
				|  |  |         this.audioChecked = null |  |  |  | 
		
	
		
			
				|  |  |  |  |  |         this.audioChecked = -1 | 
		
	
		
			
				|  |  |       } else { |  |  |       } else { | 
		
	
		
			
				|  |  |         this.selectContVisible = false |  |  |         this.selectContVisible = false | 
		
	
		
			
				|  |  |         this.mulitText = '多选' |  |  |         this.mulitText = '多选' | 
		
	
	
		
			
				|  | @ -754,7 +793,7 @@ export default { | 
		
	
		
			
				|  |  |     left: 0; |  |  |     left: 0; | 
		
	
		
			
				|  |  |     width: 100%; |  |  |     width: 100%; | 
		
	
		
			
				|  |  |     height: 44px; |  |  |     height: 44px; | 
		
	
		
			
				|  |  |     background: rgba(0,0,0,.5); |  |  |  | 
		
	
		
			
				|  |  |  |  |  |     background: rgba(0, 0, 0, 0.5); | 
		
	
		
			
				|  |  |     text-align: center; |  |  |     text-align: center; | 
		
	
		
			
				|  |  |     .font-icon { |  |  |     .font-icon { | 
		
	
		
			
				|  |  |       width: 16px; |  |  |       width: 16px; | 
		
	
	
		
			
				|  | @ -823,7 +862,6 @@ export default { | 
		
	
		
			
				|  |  |       text-align: center; |  |  |       text-align: center; | 
		
	
		
			
				|  |  |       color: #fff; |  |  |       color: #fff; | 
		
	
		
			
				|  |  |       line-height: 14px; |  |  |       line-height: 14px; | 
		
	
		
			
				|  |  | 
 |  |  |  | 
		
	
		
			
				|  |  |     } |  |  |     } | 
		
	
		
			
				|  |  |   } |  |  |   } | 
		
	
		
			
				|  |  |   &:nth-child(odd) { |  |  |   &:nth-child(odd) { | 
		
	
	
		
			
				|  | @ -872,6 +910,7 @@ export default { | 
		
	
		
			
				|  |  |       display: flex; |  |  |       display: flex; | 
		
	
		
			
				|  |  |       font-size: 12px; |  |  |       font-size: 12px; | 
		
	
		
			
				|  |  |       color: #666; |  |  |       color: #666; | 
		
	
		
			
				|  |  |  |  |  |       height: 26px; | 
		
	
		
			
				|  |  |       line-height: 26px; |  |  |       line-height: 26px; | 
		
	
		
			
				|  |  |       .set_time { |  |  |       .set_time { | 
		
	
		
			
				|  |  |         display: flex; |  |  |         display: flex; | 
		
	
	
		
			
				|  | @ -891,8 +930,15 @@ export default { | 
		
	
		
			
				|  |  |         span.set_item { |  |  |         span.set_item { | 
		
	
		
			
				|  |  |           margin-right: 8px; |  |  |           margin-right: 8px; | 
		
	
		
			
				|  |  |         } |  |  |         } | 
		
	
		
			
				|  |  |  |  |  |         ::v-deep .el-form-item__content { | 
		
	
		
			
				|  |  |  |  |  |           height: 28px; | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |  |         ::v-deep .el-input__suffix { | 
		
	
		
			
				|  |  |  |  |  |           height: 26px; | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |       } |  |  |       } | 
		
	
		
			
				|  |  |       .set_audio { |  |  |       .set_audio { | 
		
	
		
			
				|  |  |  |  |  |         flex: 1; | 
		
	
		
			
				|  |  |         .audio_name { |  |  |         .audio_name { | 
		
	
		
			
				|  |  |           margin-right: 10px; |  |  |           margin-right: 10px; | 
		
	
		
			
				|  |  |         } |  |  |         } | 
		
	
	
		
			
				|  | @ -989,5 +1035,4 @@ export default { | 
		
	
		
			
				|  |  |     display: none; |  |  |     display: none; | 
		
	
		
			
				|  |  |   } |  |  |   } | 
		
	
		
			
				|  |  | } |  |  | } | 
		
	
		
			
				|  |  | 
 |  |  |  | 
		
	
		
			
				|  |  | </style> |  |  | </style> |