修复种子封面路径

Change-Id: I9e5560fbdf226bd0ede9e35b8dbc1249ed67ced4
diff --git a/src/pages/Forum/posts-detail/PostDetailPage.jsx b/src/pages/Forum/posts-detail/PostDetailPage.jsx
index f703fd6..2e4874a 100644
--- a/src/pages/Forum/posts-detail/PostDetailPage.jsx
+++ b/src/pages/Forum/posts-detail/PostDetailPage.jsx
@@ -14,11 +14,11 @@
   // 如果是 /images/... ,替换成 /uploads/post/...
   if (url.startsWith('/images/')) {
     // 这里把 /images/ 替换成 /uploads/post/
-    return `http://localhost:8080/uploads/post/${url.slice('/images/'.length)}`;
+    return `http://localhost:5011/uploads/post/${url.slice('/images/'.length)}`;
   }
 
   // 其它情况默认直接拼接,不加斜杠
-  return `http://localhost:8080${url.startsWith('/') ? '' : '/'}${url}`;
+  return `http://localhost:5011${url.startsWith('/') ? '' : '/'}${url}`;
 };
 
 
@@ -26,7 +26,7 @@
 export function formatAvatarUrlNoDefault(avatarUrl) {
   if (!avatarUrl) return '';
   if (avatarUrl.startsWith('http')) return avatarUrl;
-  return `http://localhost:8080${avatarUrl}`;
+  return `http://localhost:5011${avatarUrl}`;
 }
 
 const PostDetailPage = () => {
diff --git a/src/pages/Forum/posts-main/components/PostList.jsx b/src/pages/Forum/posts-main/components/PostList.jsx
index f152c87..5d14fdd 100644
--- a/src/pages/Forum/posts-main/components/PostList.jsx
+++ b/src/pages/Forum/posts-main/components/PostList.jsx
@@ -10,7 +10,7 @@
 const formatImageUrl = (url) => {
   if (!url) return '';
   const filename = url.split('/').pop(); // 提取文件名部分
-  return `http://localhost:8080/uploads/post/${filename}`;
+  return `http://localhost:5011/uploads/post/${filename}`;
 };
 
 const PostList = ({ search }) => {
diff --git a/src/pages/FriendMoments/FriendMoments.jsx b/src/pages/FriendMoments/FriendMoments.jsx
index 9595b8b..c642772 100644
--- a/src/pages/FriendMoments/FriendMoments.jsx
+++ b/src/pages/FriendMoments/FriendMoments.jsx
@@ -9,7 +9,7 @@
 const formatImageUrl = (url) => {
   if (!url) return '';
   const filename = url.split('/').pop(); // 提取文件名部分
-  return `http://localhost:8080/uploads/post/${filename}`;
+  return `http://localhost:5011/uploads/dynamic/${filename}`;
 };
 
 const FriendMoments = () => {
diff --git a/src/pages/SeedList/SeedDetail/SeedDetail.jsx b/src/pages/SeedList/SeedDetail/SeedDetail.jsx
index 10cf65d..16c6d01 100644
--- a/src/pages/SeedList/SeedDetail/SeedDetail.jsx
+++ b/src/pages/SeedList/SeedDetail/SeedDetail.jsx
@@ -23,7 +23,7 @@
   const formatImageUrl = (url) => {
     if (!url) return '';
     const filename = url.split('/').pop();
-    return `http://localhost:8080/uploads/torrents/${filename}`;
+    return `http://localhost:5011/uploads/torrents/${filename}`;
   };
 
   useEffect(() => {
diff --git a/src/pages/SeedList/SeedList.css b/src/pages/SeedList/SeedList.css
index f53a9a3..cf5502c 100644
--- a/src/pages/SeedList/SeedList.css
+++ b/src/pages/SeedList/SeedList.css
@@ -1,235 +1,234 @@
-      
-      .seed-list-container {
-        background: #333;
-      }
-      
-      /* 搜索、排序控件 */
-      .controls {
-        display: flex;
-        justify-content: center;
-        gap: 16px;
-        padding: 10px 20px;
-        background-color: #5F4437;
-      }
-      
-      .search-input {
-        padding: 6px 10px;
-        border-radius: 6px;
-        border: none;
-        width: 200px;
-      }
-      
-      .sort-select {
-        padding: 6px;
-        border-radius: 6px;
-        border: none;
-      }
-      
-      /* 标签过滤 */
-      .tag-filters {
-        background-color: #5F4437;
-        display: flex;
-        justify-content: center;
-        flex-wrap: wrap;
-        gap: 8px;
-        padding: 10px;
-      }
-      
-      .tag-button {
-        background-color: #b38867;
-        color: white;
-        border: none;
-        border-radius: 20px;
-        padding: 6px 12px;
-        cursor: pointer;
-      }
-      
-      .active-tag {
-        background-color: #d17c4f;
-      }
-      
-      .clear-filter-btn {
-        background: transparent;
-        border: none;
-        color: #888;
-        font-size: 1rem;
-        cursor: pointer;
-        margin-left: 4px;
-      }
-      
-      /* 去除 Link 组件默认的下划线和文字颜色变化 */
-      .seed-item-link {
-        text-decoration: none;
-        color: inherit;
-        display: block; /* 确保整个卡片可点击 */
-      }
-      
-      .clear-filter-btn:hover {
-        color: red;
-      }
-      
-      /* 卡片展示 */
-      .seed-list-content {
-        padding: 20px;
-        background-color: #5F4437;
-      }
-      
-      .seed-list-card {
-        background-color: #e9ded2;
-        color: #333;
-        border-radius: 8px;
-        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
-        overflow: hidden;
-      }
-      
-      .seed-list-header {
-        display: grid;
-        grid-template-columns: 180px 2fr 1fr 1fr 1fr 1fr;
-        align-items: center;
-        justify-items: center; /* 新增:水平居中 */
-        padding: 12px 16px;
-        background-color: #BA929A;
-        font-weight: bold;
-      }
-      
-      .seed-list-body {
-        display: flex;
-        flex-direction: column;
-      }
-      
-      .seed-item {
-        display: grid;
-        grid-template-columns: 180px 2fr 1fr 1fr 1fr 1fr;
-        align-items: center;
-        justify-items: center; /* 新增:水平居中 */
-        padding: 12px 16px;
-        border-top: 1px solid #ccc;
-      }
-      
-      .seed-item-cover {
-        margin-left: -50px;
-        width: 100px;
-        height: 140px;
-        object-fit: cover;
-        border-radius: 6px;
-        flex-shrink: 0;
-      }
-      
-      .seed-item-title {
-        width: 100%;
-        margin-left: -100px;
-        text-align: center; 
-      }
-      
-      .seed-title-row {
-        display: flex;
-        flex-direction: column;
-        align-items: center; /* 新增:垂直居中 */
-        gap: 8px;
-      }
-      
-      .seed-title {
-        font-size: 1.1rem;
-        margin: 0;
-        font-weight: bold;
-      }
-      
-      .seed-tags {
-        margin-top: 4px;
-        display: flex;
-        flex-wrap: wrap;
-        gap: 4px;
-        justify-content: center; /* 标签水平居中 */
-        max-width: 100%;         /* 限制最大宽度以触发换行 */
-        word-break: break-word;  /* 避免长标签溢出 */
-      }
-      
-      
-      .seed-item-actions {
-        display: flex;
-        flex-direction: row;
-        gap: 8px;
-        justify-content: center; /* 新增:操作按钮水平居中 */
-      }
-      
-      .seed-header-cover {
-        width: 180px;
-        flex-shrink: 0;
-        text-align: center; 
-      }
-      
-      .seed-header-title {
-        margin-left: -100px;
-      }
+.seed-list-container {
+  background: #333;
+}
 
-      .seed-header-size,
-      .seed-header-upload-time,
-      .seed-header-downloads,
-      .seed-header-actions {
-        text-align: center; /* 新增:文字居中 */
-      }
-      
-      .seed-info {
-        display: flex;
-        justify-content: space-between;
-        font-size: 0.9rem;
-        color: #666;
-        margin-bottom: 8px;
-      }
-      
-      .tag-label {
-        background-color: #eee;
-        border-radius: 4px;
-        padding: 2px 6px;
-        font-size: 12px;
-      }
-      
-      .btn-primary,
-      .btn-secondary,
-      .btn-outline {
-        padding: 6px 12px;
-        border: none;
-        border-radius: 6px;
-        cursor: pointer;
-        font-size: 0.9rem;
-        text-align: center;
-        white-space: nowrap;
-        transition: background-color 0.2s ease;
-      }
-      
-      .btn-primary {
-        background-color: #007bff;
-        color: white;
-      }
-      
-      .btn-primary:hover {
-        background-color: #0056b3;
-      }
-      
-      .btn-secondary {
-        background-color: #28a745;
-        color: white;
-      }
-      
-      .btn-secondary:hover {
-        background-color: #218838;
-      }
-      
-      .btn-outline {
-        background-color: transparent;
-        border: 1px solid #ccc;
-        color: #333;
-      }
-      
-      .btn-outline:hover {
-        background-color: #f8f9fa;
-      }
-      .seed-cover {
-        width: 100%;
-        height: 180px;
-        object-fit: cover;
-        border-radius: 8px;
-        margin-bottom: 12px;
-      }
+/* 搜索、排序控件 */
+.controls {
+  display: flex;
+  justify-content: center;
+  gap: 16px;
+  padding: 10px 20px;
+  background-color: #5F4437;
+}
 
-          
\ No newline at end of file
+.search-input {
+  padding: 6px 10px;
+  border-radius: 6px;
+  border: none;
+  width: 200px;
+}
+
+.sort-select {
+  padding: 6px;
+  border-radius: 6px;
+  border: none;
+}
+
+/* 标签过滤 */
+.tag-filters {
+  background-color: #5F4437;
+  display: flex;
+  justify-content: center;
+  flex-wrap: wrap;
+  gap: 8px;
+  padding: 10px;
+}
+
+.tag-button {
+  background-color: #b38867;
+  color: white;
+  border: none;
+  border-radius: 20px;
+  padding: 6px 12px;
+  cursor: pointer;
+}
+
+.active-tag {
+  background-color: #d17c4f;
+}
+
+.clear-filter-btn {
+  background: transparent;
+  border: none;
+  color: #888;
+  font-size: 1rem;
+  cursor: pointer;
+  margin-left: 4px;
+}
+
+.clear-filter-btn:hover {
+  color: red;
+}
+
+/* 去除 Link 组件默认的下划线和文字颜色变化 */
+.seed-item-link {
+  text-decoration: none;
+  color: inherit;
+  display: block;
+}
+
+/* 卡片展示 */
+.seed-list-content {
+  padding: 20px;
+  background-color: #5F4437;
+}
+
+.seed-list-card {
+  background-color: #e9ded2;
+  color: #333;
+  border-radius: 8px;
+  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
+  overflow: hidden;
+}
+
+.seed-list-header {
+  display: grid;
+  grid-template-columns: 180px 2fr 1fr 1fr 1fr 1fr;
+  align-items: center;
+  justify-items: center;
+  padding: 12px 16px;
+  background-color: #BA929A;
+  font-weight: bold;
+}
+
+.seed-list-body {
+  display: flex;
+  flex-direction: column;
+}
+
+.seed-item {
+  display: grid;
+  grid-template-columns: 180px 2fr 1fr 1fr 1fr 1fr;
+  align-items: center;
+  justify-items: center;
+  padding: 12px 16px;
+  border-top: 1px solid #ccc;
+}
+
+.seed-item-cover {
+  width: 100px;
+  height: 140px;
+  object-fit: cover;
+  border-radius: 6px;
+  flex-shrink: 0;
+}
+
+.seed-item-title {
+  width: 100%;
+  text-align: center;
+}
+
+.seed-title-row {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  gap: 8px;
+}
+
+.seed-title {
+  font-size: 1.1rem;
+  margin: 0;
+  font-weight: bold;
+}
+
+.seed-tags {
+  margin-top: 4px;
+  display: flex;
+  flex-wrap: wrap;
+  gap: 4px;
+  justify-content: center;
+  max-width: 100%;
+  word-break: break-word;
+}
+
+.seed-item-actions {
+  display: flex;
+  flex-direction: row;
+  gap: 8px;
+  justify-content: center;
+}
+
+.seed-header-cover {
+  width: 180px;
+  flex-shrink: 0;
+  text-align: center;
+}
+
+.seed-header-title,
+.seed-header-size,
+.seed-header-upload-time,
+.seed-header-downloads,
+.seed-header-actions {
+  text-align: center;
+}
+
+.seed-info {
+  display: flex;
+  justify-content: space-between;
+  font-size: 0.9rem;
+  color: #666;
+  margin-bottom: 8px;
+}
+
+.tag-label {
+  background-color: #eee;
+  border-radius: 4px;
+  padding: 2px 6px;
+  font-size: 12px;
+}
+
+.btn-primary,
+.btn-secondary,
+.btn-outline {
+  padding: 6px 12px;
+  border: none;
+  border-radius: 6px;
+  cursor: pointer;
+  font-size: 0.9rem;
+  text-align: center;
+  white-space: nowrap;
+  transition: background-color 0.2s ease;
+}
+
+.btn-primary {
+  background-color: #007bff;
+  color: white;
+}
+
+.btn-primary:hover {
+  background-color: #0056b3;
+}
+
+.btn-secondary {
+  background-color: #28a745;
+  color: white;
+}
+
+.btn-secondary:hover {
+  background-color: #218838;
+}
+
+.btn-outline {
+  background-color: transparent;
+  border: 1px solid #ccc;
+  color: #333;
+}
+
+.btn-outline:hover {
+  background-color: #f8f9fa;
+}
+
+.seed-cover {
+  width: 100%;
+  height: 180px;
+  object-fit: cover;
+  border-radius: 8px;
+  margin-bottom: 12px;
+}
+.seed-item-cover {
+    width: 100px;
+    height: auto;
+    object-fit: cover;
+    border-radius: 4px;
+    margin-right: 12px;
+}
diff --git a/src/pages/SeedList/SeedList.jsx b/src/pages/SeedList/SeedList.jsx
index be8d13f..a010840 100644
--- a/src/pages/SeedList/SeedList.jsx
+++ b/src/pages/SeedList/SeedList.jsx
@@ -72,7 +72,8 @@
         setErrorMsg('');
         try {
             const params = buildQueryParams();
-            const response = await axios.post('/seeds/list', params);
+            const response = await axios.get('/seeds/list', params);
+            // const response = await axios.get('/seeds/list', { params });
             const data = response.data;
 
             if (data.code !== 0) {
@@ -275,13 +276,14 @@
                                     
                                    <Link to={`/seed/${seed.id}`} key={index} className="seed-item-link">
                                         <div className="seed-item">
-                                            {seed.image_url && (
+                                            {seed.imageUrl && (
                                                 <img
-                                                    src={seed.image_url}
+                                                    src={seed.imageUrl}
                                                     alt={seed.title}
                                                     className="seed-item-cover"
                                                 />
                                             )}
+
                                             <div className="seed-item-title">
                                                 <div className="seed-title-row">
                                                     <h3 className="seed-title">{seed.title}</h3>