From c4a9cad1c50e89365e2a58b50e259af642ed3b8c Mon Sep 17 00:00:00 2001 From: Codex Assistant <codex@example.com> Date: 星期二, 07 十月 2025 16:12:20 +0800 Subject: [PATCH] feat(review): 调整评审详情展示顺序与样式,描述支持多行,项目信息列宽40/60 fix(auth): 登录页与首页循环跳转保护;api.ts 在登录页不再重定向;401分支在登录页不跳转 fix(router): /login 放行策略优化,避免死循环;评审列表跳转到 /project-review/:id/detail fix(frontend): 补齐 utils/appConfig.ts,避免启动白屏 fix(review): 详情页提交评分缺少stageId时回退使用项目详情的stageId feat(backend): ActivityPlayerDetailResponse.playerInfo 补充 avatarUrl/avatar,服务组装时填充用户头像 chore(dev): 启动脚本注入本地JWT密钥,重启前后端 --- web/src/views/next-list.vue | 14 ++++++++------ 1 files changed, 8 insertions(+), 6 deletions(-) diff --git a/web/src/views/next-list.vue b/web/src/views/next-list.vue index addeb22..a8200db 100644 --- a/web/src/views/next-list.vue +++ b/web/src/views/next-list.vue @@ -27,7 +27,6 @@ <el-icon><Search /></el-icon> 鎼滅储 </el-button> - <el-button @click="resetSearch">閲嶇疆</el-button> </div> </div> @@ -222,6 +221,7 @@ import { ElMessage, ElMessageBox } from 'element-plus' import { Search, TrophyBase, InfoFilled } from '@element-plus/icons-vue' import PromotionApi from '@/api/promotion' +import { getActivity } from '@/api/activity' const router = useRouter() @@ -393,6 +393,8 @@ selectedParticipants.value = selection } + + // 纭鏅嬬骇 const confirmPromotion = async () => { if (selectedParticipants.value.length === 0) { @@ -418,10 +420,10 @@ const participantIds = selectedParticipants.value.map(p => p.id) const result = await PromotionApi.promoteParticipants( - selectedCompetition.value.id, - participantIds, - null // 鐩爣闃舵ID锛岃繖閲屽彲浠ユ牴鎹渶瑕佽缃� - ) + selectedCompetition.value.competitionId, // 涓绘瘮璧汭D + participantIds, + selectedCompetition.value.id // 褰撳墠闃舵ID浣滀负鐩爣闃舵ID + ) if (result && result.success) { ElMessage.success(result.message || `鎴愬姛鏅嬬骇 ${result.promotedCount} 鍚嶄汉鍛榒) @@ -558,7 +560,7 @@ .search-toolbar { display: flex; align-items: center; - justify-content: space-between; + justify-content: flex-end; margin-bottom: 20px; padding: 16px; background-color: #f9fafb; -- Gitblit v1.8.0