blob: 68b37d93ad099db5da70220215f9095e3dc8ced6 [file] [log] [blame]
Akane121765b61a72025-05-17 13:52:25 +08001// src/api/helpPost.js
2import { api } from './auth'; // 复用已有的axios实例
3
DREWae420b22025-06-02 14:07:20 +08004export const createHelpPost = (title, content, authorId, selectedImage) => {
Akane1217d1e9f712025-05-29 14:36:56 +08005 // 创建 FormData 对象
6 const formData = new FormData();
7 formData.append('title', title);
8 formData.append('content', content);
9 formData.append('authorId', authorId);
10
11 // 如果有图片,添加到 FormData
12 if (selectedImage) {
13 formData.append('image', selectedImage);
14 }
15
16 return api.post('/help/posts', formData);
Akane121765b61a72025-05-17 13:52:25 +080017};
18
DREWae420b22025-06-02 14:07:20 +080019export const getHelpPosts = (page = 1, size = 5) => {
Akane121765b61a72025-05-17 13:52:25 +080020 return api.get('/help/posts', {
21 params: { page, size }
22 });
23};
24
DREWae420b22025-06-02 14:07:20 +080025export const getHelpPostDetail = (postId) => {
Akane121765b61a72025-05-17 13:52:25 +080026 return api.get(`/help/posts/${postId}`);
27};
28
DREWae420b22025-06-02 14:07:20 +080029export const likeHelpPost = (postId, data) => {
Akane1217d1e9f712025-05-29 14:36:56 +080030 return api.post(`/help/posts/${postId}/like`, null, {
31 params: data
32 });
Akane121765b61a72025-05-17 13:52:25 +080033};
34
DREWae420b22025-06-02 14:07:20 +080035export const addHelpPostComment = (postId, commentData) => {
Akane1217d1e9f712025-05-29 14:36:56 +080036
Akane1217d1e9f712025-05-29 14:36:56 +080037
DREWae420b22025-06-02 14:07:20 +080038 return api.post(`/help/posts/${postId}/comments`, commentData);
Akane1217d1e9f712025-05-29 14:36:56 +080039};
40
DREWae420b22025-06-02 14:07:20 +080041export const deleteHelpPost = (postId, authorId) => {
Akane1217d1e9f712025-05-29 14:36:56 +080042 return api.delete(`/help/posts/${postId}`, {
43 params: { authorId }
44 });
Akane12173a7bb972025-06-01 01:05:27 +080045};
46
47
DREWae420b22025-06-02 14:07:20 +080048export const searchHelpPosts = (keyword, page = 1, size = 5) => {
Akane12173a7bb972025-06-01 01:05:27 +080049 return api.get('/help/posts/search', {
50 params: { keyword, page, size }
51 });
Akane121765b61a72025-05-17 13:52:25 +080052};