diff --git a/src/api/audio_content_series.js b/src/api/audio_content_series.js index b7bfbe6..f77959e 100644 --- a/src/api/audio_content_series.js +++ b/src/api/audio_content_series.js @@ -55,6 +55,13 @@ async function removeContentInTheSeries(seriesId, contentId) { ) } +async function updateSeriesOrders(ids) { + return Vue.axios.put( + "/creator-admin/audio-content/series/orders", + {ids: ids} + ) +} + export { getGenreList, getSeriesList, @@ -62,6 +69,7 @@ export { modifySeries, getSeriesDetail, getSeriesContent, + updateSeriesOrders, addingContentToTheSeries, removeContentInTheSeries, searchContentNotInSeries diff --git a/src/views/Content/ContentSeriesList.vue b/src/views/Content/ContentSeriesList.vue index 11752eb..e994149 100644 --- a/src/views/Content/ContentSeriesList.vue +++ b/src/views/Content/ContentSeriesList.vue @@ -22,48 +22,54 @@ - - - - - - - - - - {{ item.title }} - - - - - 수정 - - - 삭제 - - - - - - + + + + + + + + + {{ item.title }} + + + + + 수정 + + + 삭제 + + + + + + + import * as api from '@/api/audio_content_series'; +import Draggable from "vuedraggable"; export default { name: "ContentSeriesList", - + components: {Draggable}, data() { return { is_loading: false, @@ -497,6 +504,17 @@ export default { this.$router.push({name: 'ContentSeriesDetail', params: {seriesId: series.seriesId}}) }, + async onDropCallback(items) { + const ids = items.map((item) => { + return item.seriesId + }) + + const res = await api.updateSeriesOrders(ids) + if (res.status === 200 && res.data.success === true) { + this.notifySuccess(res.data.message) + } + }, + async getSeriesGenreList() { try { const res = await api.getGenreList()