Compare commits
1 Commits
Author | SHA1 | Date |
---|---|---|
|
b9b9fd2f46 | 1 week ago |
@ -0,0 +1,63 @@
|
||||
import { get, post as httpPost, put, del } from './request';
|
||||
|
||||
// 类型定义
|
||||
export interface PostItem {
|
||||
id: number;
|
||||
title: string;
|
||||
content: string;
|
||||
userId: number;
|
||||
nickname: string;
|
||||
avatar: string;
|
||||
categoryId: number;
|
||||
categoryName: string;
|
||||
viewCount: number;
|
||||
likeCount: number;
|
||||
commentCount: number;
|
||||
createdAt: string;
|
||||
updatedAt: string;
|
||||
}
|
||||
|
||||
export interface CreatePostParams {
|
||||
title: string;
|
||||
content: string;
|
||||
categoryId: number;
|
||||
}
|
||||
|
||||
// API方法
|
||||
export default {
|
||||
// 获取帖子列表
|
||||
getPosts(params: { page?: number; size?: number; category?: number; sort?: string }) {
|
||||
return get<{ code: number; data: { total: number; list: PostItem[]; pages: number } }>('/posts', params);
|
||||
},
|
||||
|
||||
// 获取帖子详情
|
||||
getPostDetail(id: number) {
|
||||
return get<{ code: number; data: PostItem }>(`/posts/${id}`);
|
||||
},
|
||||
|
||||
// 创建帖子
|
||||
createPost(data: CreatePostParams) {
|
||||
return httpPost<{ code: number; data: { postId: number } }>('/posts', data);
|
||||
},
|
||||
|
||||
// 更新帖子
|
||||
updatePost(id: number, data: CreatePostParams) {
|
||||
return put<{ code: number; message: string }>(`/posts/${id}`, data);
|
||||
},
|
||||
|
||||
// 删除帖子
|
||||
deletePost(id: number) {
|
||||
return del<{ code: number; message: string }>(`/posts/${id}`);
|
||||
},
|
||||
|
||||
// 点赞/取消点赞帖子
|
||||
likePost(id: number) {
|
||||
return httpPost<{ code: number; message: string }>(`/posts/${id}/like`);
|
||||
},
|
||||
|
||||
// 获取用户的帖子列表
|
||||
getUserPosts(userId?: number) {
|
||||
const params = userId ? { userId } : {};
|
||||
return get<{ code: number; data: { total: number; list: PostItem[]; pages: number } }>('/posts', params);
|
||||
}
|
||||
};
|
Loading…
Reference in new issue