|
@@ -52,6 +52,7 @@
|
|
|
:total="totalCount"/>
|
|
|
<detail v-if="detailsDialog.show"
|
|
|
v-model="detailsDialog.show"
|
|
|
+ :singerData="singerData"
|
|
|
:exData="detailsDialog.exData"
|
|
|
@success="init"></detail>
|
|
|
<playList v-if="playListDialog.show"
|
|
@@ -108,7 +109,9 @@ export default {
|
|
|
time: [],
|
|
|
searchForm: {},
|
|
|
tableData: [],
|
|
|
- tableUrl: '/department/list'
|
|
|
+ tableUrl: '/department/list',
|
|
|
+ singerData: [], // 歌手列表
|
|
|
+ musicData: [] // 当前歌手曲库
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
@@ -127,19 +130,52 @@ export default {
|
|
|
type: 'warning'
|
|
|
}).then(async () => {
|
|
|
const data = await this.$fetch('/api/auth/department/del', { id: row.id })
|
|
|
- if (data.code == 200) {
|
|
|
+ if (data.code === 200) {
|
|
|
this.$message.success('删除成功')
|
|
|
this.init()
|
|
|
}
|
|
|
}).catch(() => {})
|
|
|
},
|
|
|
+ // 设置歌单弹窗
|
|
|
editPlayList (row) {
|
|
|
this.playListDialog.exData = row
|
|
|
this.playListDialog.show = true
|
|
|
+ },
|
|
|
+ // 获取所有歌手列表
|
|
|
+ async fetchSingerList () {
|
|
|
+ const api = '/v1/user/singer/list'
|
|
|
+ const { code, data } = await this.$fetch(api, {
|
|
|
+ page: 1,
|
|
|
+ page_size: 10000
|
|
|
+ }, 'get')
|
|
|
+ if (this.tableData && (data.data || data.list) && code === 200) {
|
|
|
+ this.singerData = (data.data || data.list).map(item => ({
|
|
|
+ ...item,
|
|
|
+ value: item.id,
|
|
|
+ label: item.user_name
|
|
|
+ }))
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 获取歌手曲库
|
|
|
+ async fetchMusicList () {
|
|
|
+ const api = '/v1/user/song/list'
|
|
|
+ const { code, data } = await this.$fetch(api, {
|
|
|
+ page: 1,
|
|
|
+ page_size: 10000,
|
|
|
+ id: ''
|
|
|
+ }, 'get')
|
|
|
+ if (this.tableData && (data.data || data.list) && code === 200) {
|
|
|
+ this.musicData = (data.data || data.list).map(item => ({
|
|
|
+ ...item,
|
|
|
+ value: item.id,
|
|
|
+ label: item.user_name
|
|
|
+ }))
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
mounted () {
|
|
|
this.init()
|
|
|
+ this.fetchSingerList()
|
|
|
},
|
|
|
}
|
|
|
</script>
|