|
@@ -1,119 +1,161 @@
|
|
|
<template>
|
|
|
<div class="app-container">
|
|
|
<el-form label-width="100px" size="small">
|
|
|
- <div>
|
|
|
- <el-row>
|
|
|
- <el-col :span="12">
|
|
|
- <el-form-item label="播客封面:">
|
|
|
- <imageUpload />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="12">
|
|
|
- <el-form-item label="播客名称:">
|
|
|
- <el-input placeholder="请输入播客名称" />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="播客分类:">
|
|
|
- <el-select placeholder="请选择播客分类">
|
|
|
- <el-option />
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="资源平台:">
|
|
|
- <el-input disabled />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-form-item label="音乐简介:">
|
|
|
- <el-input type="textarea" rows="4" placeholder="请输入音乐简介" />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="付费类型:">
|
|
|
- <el-select placeholder="请选择付费类型">
|
|
|
- <el-option />
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="原价:">
|
|
|
- <el-input placeholder="请输入原价" />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="折扣价:">
|
|
|
- <el-input placeholder="请输入折扣价" />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="标签分类:">
|
|
|
- <el-select placeholder="请选择标签分类">
|
|
|
- <el-option />
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="关联节目:">
|
|
|
- <el-button type="primary" @click="dialogVisible = true">关联</el-button>
|
|
|
- <el-button disabled>解除关联</el-button>
|
|
|
- <el-table>
|
|
|
- <el-table-column label="ID" align="center"></el-table-column>
|
|
|
- <el-table-column label="节目名称" align="center"></el-table-column>
|
|
|
- <el-table-column label="当前状态" align="center"></el-table-column>
|
|
|
- <el-table-column label="操作" align="center">
|
|
|
- <template>
|
|
|
- <el-button>解除关联</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item>
|
|
|
- <el-button @click="getCancel">取消</el-button>
|
|
|
- <el-button type="primary" @click="getSubmit">提交</el-button>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
+ <!-- <el-row>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="播客封面:">
|
|
|
+ <imageUpload />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="播客名称:">
|
|
|
+ <el-input placeholder="请输入播客名称" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="播客分类:">
|
|
|
+ <el-select placeholder="请选择播客分类">
|
|
|
+ <el-option />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="资源平台:">
|
|
|
+ <el-input disabled />
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-form-item label="音乐简介:">
|
|
|
+ <el-input type="textarea" rows="4" placeholder="请输入音乐简介" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="付费类型:">
|
|
|
+ <el-select placeholder="请选择付费类型">
|
|
|
+ <el-option />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="原价:">
|
|
|
+ <el-input placeholder="请输入原价" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="折扣价:">
|
|
|
+ <el-input placeholder="请输入折扣价" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="标签分类:">
|
|
|
+ <el-select placeholder="请选择标签分类">
|
|
|
+ <el-option />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item> -->
|
|
|
+ <el-form-item label="关联节目:" style="width: 1000px">
|
|
|
+ <el-button type="primary" @click="getPage">关联</el-button>
|
|
|
+ <el-button @click="getDelete">解除关联</el-button>
|
|
|
+ <el-table :data="tableData1" height="229px" @selection-change="selectionChange">
|
|
|
+ <el-table-column type="selection" align="center" />
|
|
|
+ <el-table-column prop="id" label="节目ID" align="center" width="150px" />
|
|
|
+ <el-table-column prop="name" label="节目名称" align="center" show-overflow-tooltip />
|
|
|
+ <el-table-column prop="platformId" label="资源平台" align="center" width="100px" />
|
|
|
+ <el-table-column prop="status" label="当前状态" align="center" width="100px"
|
|
|
+ :formatter="statusFormatter" />
|
|
|
+ </el-table>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-button @click="getCancel">取消</el-button>
|
|
|
+ <el-button type="primary" @click="getSubmit">提交</el-button>
|
|
|
+ </el-form-item>
|
|
|
</el-form>
|
|
|
|
|
|
<!-- 关联弹窗 -->
|
|
|
<el-dialog :visible.sync="dialogVisible" title="关联节目" width="1000px">
|
|
|
- <el-form inline size="mini">
|
|
|
+ <el-form :model="form2" inline size="mini">
|
|
|
<el-form-item label="ID:">
|
|
|
- <el-input placeholder="请输入节目ID" />
|
|
|
+ <el-input v-model="form2.id" placeholder="请输入节目ID" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="节目名称:">
|
|
|
- <el-input placeholder="请输入节目名称" />
|
|
|
+ <el-input v-model="form2.name" placeholder="请输入节目名称" />
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
<el-button icon="el-icon-search" type="primary">搜索</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
- <el-table>
|
|
|
- <el-table-column type="selection" />
|
|
|
- <el-table-column label="ID" align="center" />
|
|
|
- <el-table-column label="节目名称" align="center" />
|
|
|
- <el-table-column label="当前状态" align="center" />
|
|
|
+ <el-table :data="tableData2" v-loading="loading" :row-key="getRowKey"
|
|
|
+ @selection-change="handleSelectionChange" @toggleRowSelection="handleToggleRowSelection">
|
|
|
+ <el-table-column type="selection" reserve-selection align="center" />
|
|
|
+ <el-table-column prop="id" label="节目ID" align="center" width="150px"/>
|
|
|
+ <el-table-column prop="name" label="节目名称" align="center" show-overflow-tooltip/>
|
|
|
+ <el-table-column prop="platformId" label="资源平台" align="center" width="100px"/>
|
|
|
+ <el-table-column prop="status" label="当前状态" align="center" width="100px" :formatter="statusFormatter" />
|
|
|
</el-table>
|
|
|
- <!-- <pagination
|
|
|
- v-show="total>0"
|
|
|
- :total="total"
|
|
|
- :page.sync="form.pageNum"
|
|
|
- :limit.sync="form.pageSize"
|
|
|
- @pagination="getList"
|
|
|
- />-->
|
|
|
- <div slot="footer">
|
|
|
- <el-button>取消</el-button>
|
|
|
- <el-button type="primary">关联</el-button>
|
|
|
- </div>
|
|
|
+ <pagination v-show="total>0" :total="total" :page.sync="form2.pageNum" :limit.sync="form2.pageSize"
|
|
|
+ @pagination="getPage" />
|
|
|
</el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import { getProgrammePage } from '@/api/music/blog'
|
|
|
+import { statusMixin } from '../mixin/index'
|
|
|
import imageUpload from "@/components/Upload/index";
|
|
|
export default {
|
|
|
+ mixins: [statusMixin],
|
|
|
components: {
|
|
|
imageUpload,
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
- // 弹窗
|
|
|
+ // 遮罩层
|
|
|
+ loading: true,
|
|
|
+ // 表单
|
|
|
+ form2: {
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 10
|
|
|
+ },
|
|
|
+ // 弹窗
|
|
|
dialogVisible: false,
|
|
|
+ // 列表
|
|
|
+ tableData1: [],
|
|
|
+ tableData2: [],
|
|
|
+ total: 0,
|
|
|
+ // 解除关联
|
|
|
+ delete_list: []
|
|
|
};
|
|
|
},
|
|
|
methods: {
|
|
|
+ // 关联
|
|
|
+ getPage() {
|
|
|
+ this.loading = true
|
|
|
+ this.dialogVisible = true,
|
|
|
+ getProgrammePage(this.form2).then(res => {
|
|
|
+ if (res.code === 0) {
|
|
|
+ console.log(res.data);
|
|
|
+ this.tableData2 = res.data.records
|
|
|
+ this.total = res.data.total
|
|
|
+ this.loading = false
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ // 多选
|
|
|
+ handleSelectionChange(e) {
|
|
|
+ this.tableData1 = e;
|
|
|
+ },
|
|
|
+ getRowKey(row) {
|
|
|
+ return row.id;
|
|
|
+ },
|
|
|
+ selectionChange(e) {
|
|
|
+ this.delete_list = e
|
|
|
+ },
|
|
|
+ // 解除关联
|
|
|
+ getDelete() {
|
|
|
+ this.delete_list.map(i => {
|
|
|
+ let index = this.tableData1.findIndex(j => j.id === i.id)
|
|
|
+ this.tableData1.splice(index, 1)
|
|
|
+ this.tableData2
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
getCancel() {
|
|
|
this.$tab.closeOpenPage("/music/blog");
|
|
|
- this.$refs.form.resetFields();
|
|
|
},
|
|
|
- getSubmit() {},
|
|
|
+ getSubmit() { },
|
|
|
+
|
|
|
+ // 字典翻译
|
|
|
+ statusFormatter(row) {
|
|
|
+ return this.selectDictLabel(this.statusOptions, row.status)
|
|
|
+ }
|
|
|
},
|
|
|
};
|
|
|
</script>
|