// 公共接口

// 修改格式
import qs from 'qs'

import request from '@/utils/request'

// 导入axios
import axios from 'axios';
export function getCategories() {
  return request({
    url: '/forum/categories',
    method: 'get'
  })
}

export function getPosts(params) {
  return request({
    url: '/forum/posts',
    method: 'get',
    params
  })
}

export function getPostDetail(id) {
  return request({
    url: `/forum/posts/${id}`,
    method: 'get'
  })
}

export function createPost(data) {
  // 使用 URLSearchParams 构建查询参数
  const params = new URLSearchParams();
  params.append('title', data.title);
  params.append('content', data.content);
  params.append('categoryId', data.categoryId);
  params.append('userId', data.userId);

  return request({
    url: '/forum/post', // 后端接口路径
    method: 'get',        // 使用 GET 请求
    params: params       // 通过 params 传递查询参数
  });
}
// 获取帖子的所有回复
export function getReplies(postId) {
  return request({
    url: `/forum/posts/${postId}/replies`,
    method: 'GET'
  });
}

// 创建新的回复
export function createReply(postId, replyData,userId) {
  // 创建FormData对象
  const formData = new FormData();
  // 添加回复内容
    formData.append('content', replyData);
    formData.append('userId', userId);
    formData.append('postId', postId);
  return request({
      url: `/forum/posts/${postId}/repliesed`,
      method: 'POST',
      data: formData,
  });
}

// 修改回复内容
export function updateReply(id, replyData) {
  return request({
    url: `/forum/replies/${id}`,
    method: 'put',
    data: replyData // 更新的回复数据
  });
}

// 删除回复
export function deleteReply(id) {
  return request({
    url: `/forum/replies/${id}`,
    method: 'delete'
  });
}