|
@@ -7,46 +7,52 @@
|
|
<el-form-item class="sort" :label="(index + 1).toString()">
|
|
<el-form-item class="sort" :label="(index + 1).toString()">
|
|
<el-link icon="el-icon-close" :underline="false" />
|
|
<el-link icon="el-icon-close" :underline="false" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item v-if="'date' in item" label="时间:">
|
|
|
|
- <el-date-picker v-model="item.date" type="datetimerange" start-placeholder="开始日期" end-placeholder="结束日期"
|
|
|
|
- value-format="yyyy-MM-dd HH:mm:ss" />
|
|
|
|
- </el-form-item>
|
|
|
|
<el-form-item v-if="'title' in item" label="标题:">
|
|
<el-form-item v-if="'title' in item" label="标题:">
|
|
- <el-input v-model="item.title" placeholder="请输入标题" />
|
|
|
|
|
|
+ <el-input v-model="item.title" placeholder="请输入内容标题" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item v-if="'model' in item" label="模式:">
|
|
<el-form-item v-if="'model' in item" label="模式:">
|
|
- <el-select v-model="item.model" placeholder="请选择模式" @change="getModel(item)">
|
|
|
|
- <!-- <el-option v-for="item in contentOptions" :key="item.value" :label="item.label" :value="Number(item.value)" /> -->
|
|
|
|
|
|
+ <el-select v-model="item.model" placeholder="请选择模式">
|
|
|
|
+ <el-option v-for="item in modelOptions" :key="item.value" :label="item.label" :value="item.value" />
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item v-if="'description' in item" label="简介:">
|
|
<el-form-item v-if="'description' in item" label="简介:">
|
|
<el-input v-model="item.description" type="textarea" rows="4" placeholder="请输入简介" />
|
|
<el-input v-model="item.description" type="textarea" rows="4" placeholder="请输入简介" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item v-if="'contentName' in item" label="内容:">
|
|
<el-form-item v-if="'contentName' in item" label="内容:">
|
|
- <el-input v-model="item.contentName" prefix-icon="el-icon-search" placeholder="选择内容" @focus="getDialog(index)" />
|
|
|
|
|
|
+ <el-input v-model="item.contentName" prefix-icon="el-icon-search" placeholder="选择内容" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item v-if="'forwardType' in item" label="跳转方式:">
|
|
<el-form-item v-if="'forwardType' in item" label="跳转方式:">
|
|
- <el-select v-model="item.forwardType" placeholder="请选择跳转方式" @change="getForwardType(item)">
|
|
|
|
- <!-- <el-option v-for="item in typeOptions" :key="item.value" :label="item.label" :value="Number(item.value)" /> -->
|
|
|
|
|
|
+ <el-select v-model="item.forwardType" placeholder="请选择跳转方式" @change="changeForwardType($event, index)">
|
|
|
|
+ <el-option v-for="item in forwardTypeOptions" :key="item.value" :label="item.label" :value="item.value" />
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item v-if="'forwardUrl' in item" label="跳转地址:">
|
|
<el-form-item v-if="'forwardUrl' in item" label="跳转地址:">
|
|
<el-input v-model="item.forwardUrl" placeholder="请输入跳转地址" />
|
|
<el-input v-model="item.forwardUrl" placeholder="请输入跳转地址" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
+ <el-form-item v-if="'contentId' in item" label="专区页面:">
|
|
|
|
+ <el-select v-model="item.contentId" placeholder="请选择跳转专区">
|
|
|
|
+ <el-option v-for="item in sceneOptions" :key="item.value" :value="item.value" :label="item.label" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
<el-form-item v-if="'isCustom' in item" label="封面模式:">
|
|
<el-form-item v-if="'isCustom' in item" label="封面模式:">
|
|
<el-select v-model="item.isCustom" placeholder="选择封面模式">
|
|
<el-select v-model="item.isCustom" placeholder="选择封面模式">
|
|
- <!-- <el-option v-for="item in coverOptions" :key="item.value" :label="item.label" :value="Number(item.value)" /> -->
|
|
|
|
|
|
+ <el-option v-for="item in coverOptions" :key="item.value" :label="item.label" :value="Number(item.value)" />
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item v-if="'pic' in item" label="图片:">
|
|
<el-form-item v-if="'pic' in item" label="图片:">
|
|
- <Upload listType="picture-card" :url="item.pic" @upload="getUpload($event, index)" />
|
|
|
|
|
|
+ <Upload listType="picture-card" :url="item.pic" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item v-if="'sort' in item" label="排序:">
|
|
<el-form-item v-if="'sort' in item" label="排序:">
|
|
<el-input-number v-model="item.sort" />
|
|
<el-input-number v-model="item.sort" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
+ <el-form-item v-if="'list' in item" label="列表:">
|
|
|
|
+ <el-table>
|
|
|
|
+ <el-table-column></el-table-column>
|
|
|
|
+ </el-table>
|
|
|
|
+ </el-form-item>
|
|
<el-form-item>
|
|
<el-form-item>
|
|
<el-button>清空</el-button>
|
|
<el-button>清空</el-button>
|
|
- <el-button type="primary">提交</el-button>
|
|
|
|
|
|
+ <el-button type="primary" @click="getSubmit">提交</el-button>
|
|
<el-button type="primary" plain>上架</el-button>
|
|
<el-button type="primary" plain>上架</el-button>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-form>
|
|
</el-form>
|
|
@@ -68,7 +74,10 @@
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
|
|
+import { list } from '@/api/operation/scene'
|
|
|
|
+import { coverMixin } from '@/mixin/index'
|
|
export default {
|
|
export default {
|
|
|
|
+ mixins: [coverMixin],
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
// 模块
|
|
// 模块
|
|
@@ -79,9 +88,6 @@ export default {
|
|
mouldList: [],
|
|
mouldList: [],
|
|
// 模块选择
|
|
// 模块选择
|
|
mouldOptions: [{
|
|
mouldOptions: [{
|
|
- value: 'date',
|
|
|
|
- label: '时间'
|
|
|
|
- }, {
|
|
|
|
value: 'title',
|
|
value: 'title',
|
|
label: '标题'
|
|
label: '标题'
|
|
}, {
|
|
}, {
|
|
@@ -97,9 +103,6 @@ export default {
|
|
value: 'forwardType',
|
|
value: 'forwardType',
|
|
label: '跳转方式'
|
|
label: '跳转方式'
|
|
}, {
|
|
}, {
|
|
- value: 'forwardUrl',
|
|
|
|
- label: '跳转地址'
|
|
|
|
- }, {
|
|
|
|
value: 'isCustom',
|
|
value: 'isCustom',
|
|
label: '封面模式'
|
|
label: '封面模式'
|
|
}, {
|
|
}, {
|
|
@@ -109,25 +112,103 @@ export default {
|
|
value: 'sort',
|
|
value: 'sort',
|
|
label: '排序'
|
|
label: '排序'
|
|
}, {
|
|
}, {
|
|
- value: 11,
|
|
|
|
|
|
+ value: 'list',
|
|
label: '列表'
|
|
label: '列表'
|
|
- }]
|
|
|
|
|
|
+ }],
|
|
|
|
+ // 模板类型
|
|
|
|
+ modelOptions: [{
|
|
|
|
+ value: 0,
|
|
|
|
+ label: '自动推荐内容'
|
|
|
|
+ }, {
|
|
|
|
+ value: 1,
|
|
|
|
+ label: '手动推荐内容'
|
|
|
|
+ }],
|
|
|
|
+ // 跳转方式
|
|
|
|
+ forwardTypeOptions: [{
|
|
|
|
+ value: 0,
|
|
|
|
+ label: '跳转广播',
|
|
|
|
+ type: 2
|
|
|
|
+ }, {
|
|
|
|
+ value: 1,
|
|
|
|
+ label: '跳转歌曲',
|
|
|
|
+ type: 11
|
|
|
|
+ }, {
|
|
|
|
+ value: 2,
|
|
|
|
+ label: '跳转歌单',
|
|
|
|
+ type: 10
|
|
|
|
+ }, {
|
|
|
|
+ value: 3,
|
|
|
|
+ label: '跳转专辑',
|
|
|
|
+ type: 8
|
|
|
|
+ }, {
|
|
|
|
+ value: 4,
|
|
|
|
+ label: '跳转节目',
|
|
|
|
+ type: 6
|
|
|
|
+ }, {
|
|
|
|
+ value: 7,
|
|
|
|
+ label: '跳转专区',
|
|
|
|
+ type: 16
|
|
|
|
+ }, {
|
|
|
|
+ value: 5,
|
|
|
|
+ label: '跳转H5内链'
|
|
|
|
+ }, {
|
|
|
|
+ value: 6,
|
|
|
|
+ label: '跳转H5外链'
|
|
|
|
+ }],
|
|
|
|
+ // 专区模块
|
|
|
|
+ sceneOptions: []
|
|
}
|
|
}
|
|
},
|
|
},
|
|
mounted() {
|
|
mounted() {
|
|
-
|
|
|
|
|
|
+ this.getSceneList()
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
// 新增模块
|
|
// 新增模块
|
|
getPush() {
|
|
getPush() {
|
|
- let index = this.list.length
|
|
|
|
- this.list[index] = {}
|
|
|
|
|
|
+ let item = {}
|
|
this.mouldList.map(i => {
|
|
this.mouldList.map(i => {
|
|
- this.list[index][i] = null
|
|
|
|
|
|
+ item[i] = null
|
|
})
|
|
})
|
|
|
|
+ this.list.push(item)
|
|
this.dialogVisible = false
|
|
this.dialogVisible = false
|
|
},
|
|
},
|
|
|
|
|
|
|
|
+ // 跳转方式
|
|
|
|
+ changeForwardType(e, index) {
|
|
|
|
+ [5, 6].includes(e) ? [
|
|
|
|
+ this.list[index].forwardUrl = null,
|
|
|
|
+ delete this.list[index].contentName,
|
|
|
|
+ delete this.list[index].contentId,
|
|
|
|
+ ] : [7].includes(e) ? [
|
|
|
|
+ this.list[index].contentId = null,
|
|
|
|
+ delete this.list[index].contentName,
|
|
|
|
+ delete this.list[index].forwardUrl
|
|
|
|
+ ] : [
|
|
|
|
+ this.list[index].contentName = null,
|
|
|
|
+ delete this.list[index].forwardUrl,
|
|
|
|
+ delete this.list[index].contentId,
|
|
|
|
+ ]
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ // 爱听专区
|
|
|
|
+ getSceneList() {
|
|
|
|
+ list().then(res => {
|
|
|
|
+ if (res.code === 0) {
|
|
|
|
+ res.data.map(i => {
|
|
|
|
+ this.sceneOptions.push({
|
|
|
|
+ value: i.id,
|
|
|
|
+ label: i.name
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ // 提交
|
|
|
|
+ getSubmit() {
|
|
|
|
+ console.log(this.list);
|
|
|
|
+ },
|
|
|
|
+
|
|
// 返回
|
|
// 返回
|
|
close() {
|
|
close() {
|
|
this.$tab.closeOpenPage("/operation/recommend");
|
|
this.$tab.closeOpenPage("/operation/recommend");
|