chore(web): 收口前几轮后台改动(品牌 / 媒资上传 / 轮播图 / 类型管理 / 操作日志 / App 用户)
为什么:这些改动在前几轮就已完成并在 :3005 验证过,但一直留在工作区没有入库。 下一步 3-4 的四个页面依赖其中的公共样式入口(src/styles/business/index.css)与 api/admin 的公共类型(PageResult 等),如果不先收口,新页面的提交就会夹带旧改动, 既说不清 diff 边界,也让 index.css 这类多轮共用的文件长期处于半提交状态。 本提交只做归档,不改行为: - 品牌与接口基址改成 FruitShorts / 短剧服务(.env.*、README、vite 代理) - 去掉前端 mock 数据目录(src/data、src/permissions、stores/auth),改为走真实接口 - 新增 api/admin 下的接口封装与 src/utils/uploader.ts(媒资分片直传) - 新增/改造:轮播图管理、类型管理、操作日志、App 用户管理、后台布局与公共样式
This commit is contained in:
1 parent
40546bfd01
commit
44c2c46a68
59 files changed
+4082
-982
No files matched your search
@@ -0,0 +1,70 @@
|
||||
import request from '@/axios'
|
||||
import type {
|
||||
DramaCategory,
|
||||
DramaItem,
|
||||
DramaReviewAction,
|
||||
DramaSaveData,
|
||||
PageResult
|
||||
} from './types'
|
||||
|
||||
export interface DramaPageParams {
|
||||
pageIndex?: number
|
||||
pageSize?: number
|
||||
keyword?: string
|
||||
status?: string
|
||||
categoryId?: number
|
||||
isHot?: boolean
|
||||
}
|
||||
|
||||
export const pageDramasApi = (params: DramaPageParams) => {
|
||||
return request.get<PageResult<DramaItem>>({ url: '/admin/dramas/page', params })
|
||||
}
|
||||
|
||||
export const getDramaApi = (id: number) => {
|
||||
return request.get<DramaItem>({ url: `/admin/dramas/${id}` })
|
||||
}
|
||||
|
||||
export const createDramaApi = (data: DramaSaveData) => {
|
||||
return request.post<number>({ url: '/admin/dramas', data })
|
||||
}
|
||||
|
||||
export const updateDramaApi = (id: number, data: DramaSaveData) => {
|
||||
return request.put<void>({ url: `/admin/dramas/${id}`, data })
|
||||
}
|
||||
|
||||
export const deleteDramaApi = (id: number) => {
|
||||
return request.delete<void>({ url: `/admin/dramas/${id}` })
|
||||
}
|
||||
|
||||
/** 审核与发布:submit / approve / reject / publish / offline */
|
||||
export const changeDramaStatusApi = (id: number, action: DramaReviewAction, reason?: string) => {
|
||||
return request.post<void>({ url: `/admin/dramas/${id}/${action}`, data: { reason } })
|
||||
}
|
||||
|
||||
/** 下拉选项(短剧表单用),只返回 id/name */
|
||||
export const listDramaCategoryOptionsApi = () => {
|
||||
return request.get<DramaCategory[]>({ url: '/admin/dicts/drama-category' })
|
||||
}
|
||||
|
||||
export interface DramaCategorySaveData {
|
||||
name: string
|
||||
sort?: number
|
||||
status?: number
|
||||
}
|
||||
|
||||
/** 类型管理列表,带短剧数量 */
|
||||
export const listDramaCategoriesApi = () => {
|
||||
return request.get<DramaCategory[]>({ url: '/admin/drama-categories' })
|
||||
}
|
||||
|
||||
export const createDramaCategoryApi = (data: DramaCategorySaveData) => {
|
||||
return request.post<number>({ url: '/admin/drama-categories', data })
|
||||
}
|
||||
|
||||
export const updateDramaCategoryApi = (id: number, data: DramaCategorySaveData) => {
|
||||
return request.put<void>({ url: `/admin/drama-categories/${id}`, data })
|
||||
}
|
||||
|
||||
export const deleteDramaCategoryApi = (id: number) => {
|
||||
return request.delete<void>({ url: `/admin/drama-categories/${id}` })
|
||||
}
|
||||
Reference in new issue
Block a user