Files
ShaFaFanXin/管理后台/src/api/case.ts

57 lines
1.4 KiB
TypeScript

import request from '@/utils/request'
export interface Case {
id: number
title: string
description: string
beforeImages: string[]
afterImages: string[]
serviceType: string
price: number
materials: string
duration: number
status: string
views: number
likes: number
user: any
createdAt: string
updatedAt: string
}
export interface QueryParams {
serviceType?: string
status?: string
page?: number
limit?: number
}
// 获取案例列表
export const getCaseList = (params?: QueryParams) => {
return request.get<any, { code: number; message: string; data: { list: Case[]; total: number; page: number; pageSize: number } }>('/cases', { params })
}
// 获取案例详情
export const getCaseDetail = (id: number) => {
return request.get<any, { code: number; message: string; data: Case }>(`/cases/${id}`)
}
// 创建案例
export const createCase = (data: Partial<Case>) => {
return request.post<any, { code: number; message: string; data: Case }>('/cases', data)
}
// 更新案例
export const updateCase = (id: number, data: Partial<Case>) => {
return request.patch<any, { code: number; message: string; data: Case }>(`/cases/${id}`, data)
}
// 删除案例
export const deleteCase = (id: number) => {
return request.delete<any, { code: number; message: string }>(`/cases/${id}`)
}
// 点赞案例
export const likeCase = (id: number) => {
return request.post<any, { code: number; message: string }>(`/cases/${id}/like`)
}