From f04f35b562760afbac0c477357e2a29f77aec3b9 Mon Sep 17 00:00:00 2001 From: lrj <owen.stl@gmail.com> Date: 星期四, 02 十月 2025 13:51:47 +0800 Subject: [PATCH] fix: 修复评审次数重复显示问题 --- web/src/api/projectReview.js | 73 ++++++++++++++++++++++++++---------- 1 files changed, 53 insertions(+), 20 deletions(-) diff --git a/web/src/api/projectReview.js b/web/src/api/projectReview.js index 37e9148..0808aa2 100644 --- a/web/src/api/projectReview.js +++ b/web/src/api/projectReview.js @@ -100,12 +100,31 @@ currentJudgeRating(activityPlayerId: $activityPlayerId) { id totalScore - comments - ratingItems { - itemId - itemName + status + remark + items { + ratingItemId + ratingItemName score - maxScore + weightedScore + } + } + } +` + +// 鑾峰彇鎸囧畾璇勫鐨勮瘎鍒嗘槑缁� +const GET_JUDGE_RATING_DETAIL_QUERY = ` + query GetJudgeRatingDetail($activityPlayerId: ID!, $judgeId: ID!) { + judgeRatingDetail(activityPlayerId: $activityPlayerId, judgeId: $judgeId) { + id + totalScore + status + remark + items { + ratingItemId + ratingItemName + score + weightedScore } } } @@ -126,15 +145,17 @@ */ export const getActiveActivities = async () => { try { - const data = await graphqlRequest(GET_ACTIVITY_STAGES_QUERY) + console.log('=== 璋冪敤 getActiveActivities ===') + const result = await graphqlRequest(GET_ACTIVITY_STAGES_QUERY) + console.log('GraphQL 杩斿洖鏁版嵁:', result) // 鍚庣宸茬粡杩囨护浜嗘瘮璧涢樁娈碉紝鐩存帴杩斿洖 - const activities = data.allActivityStages || [] + const activities = result.data.allActivityStages || [] + console.log('澶勭悊鍚庣殑 activities:', activities) - console.log('鑾峰彇鍒扮殑姣旇禌闃舵:', activities) return activities } catch (error) { - console.error('鑾峰彇姣旇禌闃舵澶辫触:', error) + console.error('getActiveActivities 閿欒:', error) throw new Error(error.message || '鑾峰彇姣旇禌闃舵澶辫触') } } @@ -144,13 +165,13 @@ */ export const getCompetitionProjects = async (activityId, page = 0, size = 10) => { try { - const data = await graphqlRequest(GET_COMPETITION_PROJECTS_QUERY, { + const result = await graphqlRequest(GET_COMPETITION_PROJECTS_QUERY, { activityId, page, size }) - const projects = data.activityPlayerApplications || [] + const projects = result.data.activityPlayerApplications || [] // 涓烘瘡涓」鐩幏鍙栬瘎鍒嗙粺璁� const enrichedProjects = await Promise.all( @@ -207,8 +228,8 @@ */ export const getProjectDetail = async (id) => { try { - const data = await graphqlRequest(GET_PROJECT_DETAIL_QUERY, { id }) - return data.activityPlayerDetail + const result = await graphqlRequest(GET_PROJECT_DETAIL_QUERY, { id }) + return result.data.activityPlayerDetail } catch (error) { throw new Error(error.message || '鑾峰彇椤圭洰璇︽儏澶辫触') } @@ -219,10 +240,10 @@ */ export const getRatingStats = async (activityPlayerId) => { try { - const data = await graphqlRequest(GET_RATING_STATS_QUERY, { activityPlayerId }) + const result = await graphqlRequest(GET_RATING_STATS_QUERY, { activityPlayerId }) - const ratings = data.judgeRatingsForPlayer || [] - const averageScore = data.averageScoreForPlayer || 0 + const ratings = result.data.judgeRatingsForPlayer || [] + const averageScore = result.data.averageScoreForPlayer || 0 // 鍙绠楀凡璇勫垎鐨勮瘎濮� const ratedJudges = ratings.filter(rating => rating.hasRated) @@ -248,10 +269,22 @@ */ export const getCurrentJudgeRating = async (activityPlayerId) => { try { - const data = await graphqlRequest(GET_CURRENT_JUDGE_RATING_QUERY, { activityPlayerId }) - return data.currentJudgeRating + const result = await graphqlRequest(GET_CURRENT_JUDGE_RATING_QUERY, { activityPlayerId }) + return result.data.currentJudgeRating } catch (error) { throw new Error(error.message || '鑾峰彇褰撳墠璇勫璇勫垎澶辫触') + } +} + +/** + * 鑾峰彇鎸囧畾璇勫鐨勮瘎鍒嗘槑缁� + */ +export const getJudgeRatingDetail = async (activityPlayerId, judgeId) => { + try { + const result = await graphqlRequest(GET_JUDGE_RATING_DETAIL_QUERY, { activityPlayerId, judgeId }) + return result.data.judgeRatingDetail + } catch (error) { + throw new Error(error.message || '鑾峰彇璇勫璇勫垎鏄庣粏澶辫触') } } @@ -260,8 +293,8 @@ */ export const submitRating = async (ratingInput) => { try { - const data = await graphqlRequest(SUBMIT_RATING_MUTATION, { input: ratingInput }) - return data.saveActivityPlayerRating + const result = await graphqlRequest(SUBMIT_RATING_MUTATION, { input: ratingInput }) + return result.data.saveActivityPlayerRating } catch (error) { throw new Error(error.message || '鎻愪氦璇勫垎澶辫触') } -- Gitblit v1.8.0