|  |  | @ -7,11 +7,13 @@ | 
			
		
	
		
			
				
					|  |  |  |         <el-col :span="18"> | 
			
		
	
		
			
				
					|  |  |  |           <div class="input_wrap"> | 
			
		
	
		
			
				
					|  |  |  |             <span class="input_label">名称</span> | 
			
		
	
		
			
				
					|  |  |  |             <el-form-item prop="relaase_name" :rules="[{ required: true, message: '请输入名称', trigger: 'blur' }]"> | 
			
		
	
		
			
				
					|  |  |  |               <el-input v-model="form.relaase_name" :placeholder="changePlaceholder" class="input_name" /> | 
			
		
	
		
			
				
					|  |  |  |             </el-form-item> | 
			
		
	
		
			
				
					|  |  |  |           </div> | 
			
		
	
		
			
				
					|  |  |  |         </el-col> | 
			
		
	
		
			
				
					|  |  |  |         <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('form')">发布</el-button> | 
			
		
	
		
			
				
					|  |  |  |           <el-button round type="primary">关闭</el-button> | 
			
		
	
		
			
				
					|  |  |  |         </el-col> | 
			
		
	
		
			
				
					|  |  |  |       </el-row> | 
			
		
	
	
		
			
				
					|  |  | @ -26,16 +28,14 @@ | 
			
		
	
		
			
				
					|  |  |  |             <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 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 == 2}]" label-width="100px"> | 
			
		
	
		
			
				
					|  |  |  |             <el-radio-group v-model="form.release_cycle" @change="clearCheckbox()"> | 
			
		
	
		
			
				
					|  |  |  |               <el-radio :label="1">每天</el-radio> | 
			
		
	
		
			
				
					|  |  |  |               <el-radio :label="2">每周</el-radio> | 
			
		
	
		
			
				
					|  |  |  |             </el-radio-group> | 
			
		
	
		
			
				
					|  |  |  |           </el-form-item> | 
			
		
	
		
			
				
					|  |  |  |           <el-form-item v-if="form.release_cycle == 2" :class="{'weekly_margin': form.release_cycle == 2}" prop="release_weekly" :rules="[ | 
			
		
	
		
			
				
					|  |  |  |               { required: true, message: '请选择周期时间', trigger: 'change' }, | 
			
		
	
		
			
				
					|  |  |  |             ]"> | 
			
		
	
		
			
				
					|  |  |  |           <el-form-item v-if="form.release_cycle == 2" :class="{'weekly_margin': form.release_cycle == 2}" prop="release_weekly"> | 
			
		
	
		
			
				
					|  |  |  |             <el-checkbox-group v-model="selectWeekly"> | 
			
		
	
		
			
				
					|  |  |  |               <el-checkbox v-for="item in weeklyList" :key="item.id" :label="item.id" :value="item.id" name="type">{{ item.name }}</el-checkbox> | 
			
		
	
		
			
				
					|  |  |  |             </el-checkbox-group> | 
			
		
	
	
		
			
				
					|  |  | @ -123,11 +123,11 @@ | 
			
		
	
		
			
				
					|  |  |  |         <!-- 素材库 --> | 
			
		
	
		
			
				
					|  |  |  |         <div v-if="activeIndex === 0"> | 
			
		
	
		
			
				
					|  |  |  |           <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="tabItem(index)">{{ item.name }}<span>{{ item.num }}</span> | 
			
		
	
		
			
				
					|  |  |  |             </li> | 
			
		
	
		
			
				
					|  |  |  |           </ul> | 
			
		
	
		
			
				
					|  |  |  |           <div class="material_list" style="min-height: 260px"> | 
			
		
	
		
			
				
					|  |  |  |             <MaterialList ref="MaterialList" :is-multi-selected="isMultiSelected" :mulit-text="mulitText" /> | 
			
		
	
		
			
				
					|  |  |  |             <MaterialList ref="MaterialList" :is-multi-selected="isMultiSelected" :mulit-text="mulitText" :activeItemIndex="activeItemIndex" /> | 
			
		
	
		
			
				
					|  |  |  |           </div> | 
			
		
	
		
			
				
					|  |  |  |         </div> | 
			
		
	
		
			
				
					|  |  |  |         <!-- 主题库 --> | 
			
		
	
	
		
			
				
					|  |  | @ -396,7 +396,7 @@ export default { | 
			
		
	
		
			
				
					|  |  |  |     this.selectedMaterial = [] | 
			
		
	
		
			
				
					|  |  |  |     this.selectedMaterial = JSON.parse(localStorage.getItem('selectedMaterial')) | 
			
		
	
		
			
				
					|  |  |  |     // 素材类型格式处理 | 
			
		
	
		
			
				
					|  |  |  |     if (this.selectedMaterial.length != 0) { | 
			
		
	
		
			
				
					|  |  |  |     if (this.selectedMaterial) { | 
			
		
	
		
			
				
					|  |  |  |       this.selectedMaterial.forEach((item, key) => { | 
			
		
	
		
			
				
					|  |  |  |         this.materialPostfix[key] = item.deposit_url.substring( | 
			
		
	
		
			
				
					|  |  |  |           item.deposit_url.lastIndexOf('.') + 1, | 
			
		
	
	
		
			
				
					|  |  | @ -417,9 +417,13 @@ export default { | 
			
		
	
		
			
				
					|  |  |  |   }, | 
			
		
	
		
			
				
					|  |  |  |   methods: { | 
			
		
	
		
			
				
					|  |  |  |     // 发布提交 | 
			
		
	
		
			
				
					|  |  |  |     releaseSubmit () { | 
			
		
	
		
			
				
					|  |  |  |       console.log(this.form) | 
			
		
	
		
			
				
					|  |  |  |     releaseSubmit (formName) { | 
			
		
	
		
			
				
					|  |  |  |       this.$refs[formName].validate((valid) => { | 
			
		
	
		
			
				
					|  |  |  |         if (valid) { | 
			
		
	
		
			
				
					|  |  |  |           this.form.orga_id = this.orga_id | 
			
		
	
		
			
				
					|  |  |  |           // 先判断编辑还是新增 | 
			
		
	
		
			
				
					|  |  |  |           this.form.actual_end = this.publishType == 0 ? null : '' | 
			
		
	
		
			
				
					|  |  |  |           if (this.form.release_device) { | 
			
		
	
		
			
				
					|  |  |  |             if (this.form.release_device == 1) { | 
			
		
	
		
			
				
					|  |  |  |               this.form.release_deviceDTOs = [] | 
			
		
	
		
			
				
					|  |  |  |             } else { | 
			
		
	
	
		
			
				
					|  |  | @ -433,9 +437,9 @@ export default { | 
			
		
	
		
			
				
					|  |  |  |                 return json | 
			
		
	
		
			
				
					|  |  |  |               }) | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |           } | 
			
		
	
		
			
				
					|  |  |  |           this.form.release_type = this.publishType | 
			
		
	
		
			
				
					|  |  |  |       // 先判断编辑还是新增 | 
			
		
	
		
			
				
					|  |  |  |       this.form.actual_end = this.publishType == 0 ? null : '' | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |           if (this.publishType == 0) { | 
			
		
	
		
			
				
					|  |  |  |             this.form.release_cycle = 0 | 
			
		
	
		
			
				
					|  |  |  |             this.form.release_weekly = null | 
			
		
	
	
		
			
				
					|  |  | @ -449,6 +453,7 @@ export default { | 
			
		
	
		
			
				
					|  |  |  |             this.form.release_start = arrDate[0] | 
			
		
	
		
			
				
					|  |  |  |             this.form.release_end = arrDate[1] | 
			
		
	
		
			
				
					|  |  |  |           } | 
			
		
	
		
			
				
					|  |  |  |           if (this.selectedMaterial) { | 
			
		
	
		
			
				
					|  |  |  |             this.form.release_materialDTOs = this.selectedMaterial.map((item, index) => { | 
			
		
	
		
			
				
					|  |  |  |               const json = {} | 
			
		
	
		
			
				
					|  |  |  |               if (item.material_type == 0) { | 
			
		
	
	
		
			
				
					|  |  | @ -468,6 +473,7 @@ export default { | 
			
		
	
		
			
				
					|  |  |  |               json.ranking = index + 1 | 
			
		
	
		
			
				
					|  |  |  |               return json | 
			
		
	
		
			
				
					|  |  |  |             }) | 
			
		
	
		
			
				
					|  |  |  |             // 判断最外层是否有bgm | 
			
		
	
		
			
				
					|  |  |  |             const isBgm = this.selectedMaterial.find(item => { | 
			
		
	
		
			
				
					|  |  |  |               return item.material_type == 2 | 
			
		
	
		
			
				
					|  |  |  |             }) | 
			
		
	
	
		
			
				
					|  |  | @ -484,6 +490,14 @@ export default { | 
			
		
	
		
			
				
					|  |  |  |                 this.$message.error(res.msg) | 
			
		
	
		
			
				
					|  |  |  |               } | 
			
		
	
		
			
				
					|  |  |  |             }) | 
			
		
	
		
			
				
					|  |  |  |           } else { | 
			
		
	
		
			
				
					|  |  |  |             this.$message.error('请选择发布内容!') | 
			
		
	
		
			
				
					|  |  |  |           } | 
			
		
	
		
			
				
					|  |  |  |         } else { | 
			
		
	
		
			
				
					|  |  |  |           console.log('error submit!!'); | 
			
		
	
		
			
				
					|  |  |  |           return false; | 
			
		
	
		
			
				
					|  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |       }); | 
			
		
	
		
			
				
					|  |  |  |     }, | 
			
		
	
		
			
				
					|  |  |  |     // 获取设备列表 | 
			
		
	
		
			
				
					|  |  |  |     ReqDeviceList () { | 
			
		
	
	
		
			
				
					|  |  | @ -661,8 +675,10 @@ export default { | 
			
		
	
		
			
				
					|  |  |  |       this.isMultiSelected = false | 
			
		
	
		
			
				
					|  |  |  |       this.mulitText = '多选' | 
			
		
	
		
			
				
					|  |  |  |     }, | 
			
		
	
		
			
				
					|  |  |  |     tab (index) { | 
			
		
	
		
			
				
					|  |  |  |     // 子菜单-tab | 
			
		
	
		
			
				
					|  |  |  |     tabItem (index) { | 
			
		
	
		
			
				
					|  |  |  |       this.activeItemIndex = index | 
			
		
	
		
			
				
					|  |  |  |       console.log(this.activeItemIndex) | 
			
		
	
		
			
				
					|  |  |  |     }, | 
			
		
	
		
			
				
					|  |  |  |     // 多选btn | 
			
		
	
		
			
				
					|  |  |  |     multiSelectBtn (type) { | 
			
		
	
	
		
			
				
					|  |  | 
 |