feat(admin-series-banner): 시리즈 배너 리스트 조회, 등록, 수정, 삭제, 순서 변경 기능 추가
This commit is contained in:
@@ -1,40 +1,89 @@
|
||||
import Vue from 'vue';
|
||||
import Vue from "vue";
|
||||
|
||||
async function getAudioContentSeriesList(page) {
|
||||
return Vue.axios.get("/admin/audio-content/series?page=" + (page - 1) + "&size=10");
|
||||
return Vue.axios.get("/admin/audio-content/series?page=" + (page - 1) + "&size=10");
|
||||
}
|
||||
|
||||
async function getAudioContentSeriesGenreList() {
|
||||
return Vue.axios.get('/admin/audio-content/series/genre');
|
||||
return Vue.axios.get("/admin/audio-content/series/genre");
|
||||
}
|
||||
|
||||
async function createAudioContentSeriesGenre(genre, is_adult) {
|
||||
return Vue.axios.post('/admin/audio-content/series/genre', {genre: genre, isAdult: is_adult})
|
||||
return Vue.axios.post("/admin/audio-content/series/genre", { genre: genre, isAdult: is_adult });
|
||||
}
|
||||
|
||||
async function updateAudioContentSeriesGenre(request) {
|
||||
return Vue.axios.put('/admin/audio-content/series/genre', request)
|
||||
return Vue.axios.put("/admin/audio-content/series/genre", request);
|
||||
}
|
||||
|
||||
async function updateAudioContentSeriesGenreOrders(ids) {
|
||||
return Vue.axios.put('/admin/audio-content/series/genre/orders', {ids: ids})
|
||||
return Vue.axios.put("/admin/audio-content/series/genre/orders", { ids: ids });
|
||||
}
|
||||
|
||||
async function searchSeriesList(searchWord) {
|
||||
return Vue.axios.get("/admin/audio-content/series/search?search_word=" + searchWord)
|
||||
return Vue.axios.get("/admin/audio-content/series/search?search_word=" + searchWord);
|
||||
}
|
||||
|
||||
// 시리즈 수정
|
||||
async function updateAudioContentSeries(request) {
|
||||
return Vue.axios.put('/admin/audio-content/series', request);
|
||||
return Vue.axios.put("/admin/audio-content/series", request);
|
||||
}
|
||||
|
||||
// ========================
|
||||
// 시리즈 배너 API
|
||||
// ========================
|
||||
// 배너 리스트 조회
|
||||
async function getSeriesBannerList(page = 1, size = 20) {
|
||||
return Vue.axios.get("/admin/audio-content/series/banner/list", {
|
||||
params: { page: page - 1, size }
|
||||
});
|
||||
}
|
||||
|
||||
// 배너 등록
|
||||
async function createSeriesBanner(bannerData) {
|
||||
const formData = new FormData();
|
||||
if (bannerData.image) formData.append("image", bannerData.image);
|
||||
const requestData = { seriesId: bannerData.seriesId };
|
||||
formData.append("request", JSON.stringify(requestData));
|
||||
return Vue.axios.post("/admin/audio-content/series/banner/register", formData, {
|
||||
headers: { "Content-Type": "multipart/form-data" }
|
||||
});
|
||||
}
|
||||
|
||||
// 배너 수정
|
||||
async function updateSeriesBanner(bannerData) {
|
||||
const formData = new FormData();
|
||||
if (bannerData.image) formData.append("image", bannerData.image);
|
||||
const requestData = { seriesId: bannerData.seriesId, bannerId: bannerData.bannerId };
|
||||
formData.append("request", JSON.stringify(requestData));
|
||||
return Vue.axios.put("/admin/audio-content/series/banner/update", formData, {
|
||||
headers: { "Content-Type": "multipart/form-data" }
|
||||
});
|
||||
}
|
||||
|
||||
// 배너 삭제
|
||||
async function deleteSeriesBanner(bannerId) {
|
||||
// 백엔드 사양이 불명확하여 쿼리 파라미터로 전송
|
||||
return Vue.axios.delete("/admin/audio-content/series/banner/" + bannerId);
|
||||
}
|
||||
|
||||
// 배너 순서 변경
|
||||
async function updateSeriesBannerOrder(ids) {
|
||||
return Vue.axios.put("/admin/audio-content/series/banner/orders", { ids });
|
||||
}
|
||||
|
||||
export {
|
||||
getAudioContentSeriesList,
|
||||
getAudioContentSeriesGenreList,
|
||||
createAudioContentSeriesGenre,
|
||||
updateAudioContentSeriesGenre,
|
||||
updateAudioContentSeriesGenreOrders,
|
||||
searchSeriesList,
|
||||
updateAudioContentSeries
|
||||
}
|
||||
getAudioContentSeriesList,
|
||||
getAudioContentSeriesGenreList,
|
||||
createAudioContentSeriesGenre,
|
||||
updateAudioContentSeriesGenre,
|
||||
updateAudioContentSeriesGenreOrders,
|
||||
searchSeriesList,
|
||||
updateAudioContentSeries,
|
||||
// series banner
|
||||
getSeriesBannerList,
|
||||
createSeriesBanner,
|
||||
updateSeriesBanner,
|
||||
deleteSeriesBanner,
|
||||
updateSeriesBannerOrder
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user