保存本地对routes.ts的修改

Change-Id: I4f4dbd8069893d7363e251130791dc0594be44e1
diff --git a/src/api/commentApi.ts b/src/api/commentApi.ts
new file mode 100644
index 0000000..360e659
--- /dev/null
+++ b/src/api/commentApi.ts
@@ -0,0 +1,77 @@
+import axios from 'axios';
+import type { Comment, CommentFormData, CommentReply, ReplyFormData } from './otherType';
+
+const API_BASE_URL = '/api';
+
+class CommentAPI {
+  /**
+   * 添加评论
+   */
+  static addComment(data: CommentFormData): Promise<Comment> {
+    return axios.post<Comment>(`${API_BASE_URL}/comments`, data)
+      .then(response => response.data);
+  }
+
+  /**
+   * 删除评论
+   */
+  static deleteComment(commentId: number): Promise<void> {
+    return axios.delete(`${API_BASE_URL}/comments/${commentId}`);
+  }
+
+  /**
+   * 更新评论
+   */
+  static updateComment(commentId: number, data: CommentFormData): Promise<Comment> {
+    return axios.put<Comment>(`${API_BASE_URL}/comments/${commentId}`, data)
+      .then(response => response.data);
+  }
+
+  /**
+   * 获取单个评论
+   */
+  static getCommentById(commentId: number): Promise<Comment> {
+    return axios.get<Comment>(`${API_BASE_URL}/comments/${commentId}`)
+      .then(response => response.data);
+  }
+
+  /**
+   * 获取帖子下的所有评论
+   */
+  static getCommentsByPostId(postId: number): Promise<Comment[]> {
+    return axios.get<Comment[]>(`${API_BASE_URL}/comments/post/${postId}`)
+      .then(response => response.data);
+  }
+
+  /**
+   * 添加回复
+   */
+  static addReply(commentId: number, data: ReplyFormData): Promise<CommentReply> {
+    return axios.post<CommentReply>(`${API_BASE_URL}/comments/${commentId}/replies`, data)
+      .then(response => response.data);
+  }
+
+  /**
+   * 获取评论的所有回复
+   */
+  static getReplies(commentId: number): Promise<CommentReply[]> {
+    return axios.get<CommentReply[]>(`${API_BASE_URL}/comments/${commentId}/replies`)
+      .then(response => response.data);
+  }
+
+  /**
+   * 点赞评论
+   */
+  static likeComment(commentId: number): Promise<void> {
+    return axios.post(`${API_BASE_URL}/comments/${commentId}/like`);
+  }
+
+  /**
+   * 举报评论
+   */
+  static reportComment(commentId: number, reason: string): Promise<void> {
+    return axios.post(`${API_BASE_URL}/comments/${commentId}/report`, { reason });
+  }
+}
+
+export default CommentAPI;
\ No newline at end of file