Files
tyapi-frontend/src/api/article.js
2025-11-24 16:06:44 +08:00

46 lines
2.0 KiB
JavaScript

import request from '@/utils/request'
// 文章管理API
export const articleApi = {
// ==================== 用户端API ====================
// 文章查询
getArticles: (params) => request.get('/articles', { params }),
getArticleDetail: (id) => request.get(`/articles/${id}`),
// 分类查询
getCategories: () => request.get('/article-categories'),
getCategoryDetail: (id) => request.get(`/article-categories/${id}`),
// 标签查询
getTags: () => request.get('/article-tags'),
getTagDetail: (id) => request.get(`/article-tags/${id}`),
// ==================== 管理员端API ====================
// 统计信息
getArticleStats: () => request.get('/admin/articles/stats'),
// 文章管理
getArticlesForAdmin: (params) => request.get('/admin/articles', { params }),
createArticle: (data) => request.post('/admin/articles', data),
updateArticle: (id, data) => request.put(`/admin/articles/${id}`, data),
deleteArticle: (id) => request.delete(`/admin/articles/${id}`),
// 文章状态管理
publishArticle: (id) => request.post(`/admin/articles/${id}/publish`),
schedulePublishArticle: (id, data) => request.post(`/admin/articles/${id}/schedule-publish`, data),
updateSchedulePublishArticle: (id, data) => request.post(`/admin/articles/${id}/update-schedule-publish`, data),
cancelSchedulePublishArticle: (id) => request.post(`/admin/articles/${id}/cancel-schedule`),
archiveArticle: (id) => request.post(`/admin/articles/${id}/archive`),
setFeatured: (id, data) => request.put(`/admin/articles/${id}/featured`, data),
// 分类管理
createCategory: (data) => request.post('/admin/article-categories', data),
updateCategory: (id, data) => request.put(`/admin/article-categories/${id}`, data),
deleteCategory: (id) => request.delete(`/admin/article-categories/${id}`),
// 标签管理
createTag: (data) => request.post('/admin/article-tags', data),
updateTag: (id, data) => request.put(`/admin/article-tags/${id}`, data),
deleteTag: (id) => request.delete(`/admin/article-tags/${id}`)
}