From 9f8395fab13ca4b230a0f7d62636e209745c91d4 Mon Sep 17 00:00:00 2001 From: lrj <owen.stl@gmail.com> Date: 星期日, 28 九月 2025 14:16:18 +0800 Subject: [PATCH] feat: 完善注册流程的文件上传功能 --- backend/src/main/resources/graphql/player.graphqls | 115 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 114 insertions(+), 1 deletions(-) diff --git a/backend/src/main/resources/graphql/player.graphqls b/backend/src/main/resources/graphql/player.graphqls index 71bea78..b8e992f 100644 --- a/backend/src/main/resources/graphql/player.graphqls +++ b/backend/src/main/resources/graphql/player.graphqls @@ -1,10 +1,20 @@ extend type Query { - activityPlayerApplications(name: String, page: Int, size: Int): [ActivityPlayerApplicationResponse!]! + activityPlayerApplications(name: String, activityId: ID, page: Int, size: Int): [ActivityPlayerApplicationResponse!]! activityPlayerDetail(id: ID!): ActivityPlayerDetailResponse + + # 鎶ュ悕鐘舵�佹煡璇� + playerRegistration(activityId: ID!): PlayerRegistrationResponse + + # 璇勫垎鐩稿叧鏌ヨ + judgeRatingsForPlayer(activityPlayerId: ID!): [JudgeRatingStatusResponse!]! + currentJudgeRating(activityPlayerId: ID!): CurrentJudgeRatingResponse + averageScoreForPlayer(activityPlayerId: ID!): Float + currentJudgeInfo: CurrentJudgeInfoResponse } extend type Mutation { saveActivityPlayerRating(input: ActivityPlayerRatingInput!): Boolean! + submitActivityRegistration(input: ActivityRegistrationInput!): ActivityRegistrationResponse! } type ActivityPlayerApplicationResponse { @@ -20,6 +30,7 @@ type ActivityPlayerDetailResponse { id: ID! playerInfo: PlayerInfoResponse! + regionInfo: RegionInfoResponse activityName: String! description: String submissionFiles: [SubmissionMediaResponse!]! @@ -33,6 +44,13 @@ phone: String description: String avatarUrl: String +} + +# 鍖哄煙淇℃伅鍝嶅簲 +type RegionInfoResponse { + id: ID! + name: String! + fullPath: String } # 鎻愪氦璧勬枡鍝嶅簲 @@ -63,5 +81,100 @@ # 璇勫垎椤圭洰杈撳叆绫诲瀷 input ActivityPlayerRatingItemInput { itemId: ID! + score: Float! +} + +# 璇勫璇勫垎鐘舵�佸搷搴旂被鍨� +type JudgeRatingStatusResponse { + judgeId: ID! + judgeName: String! + hasRated: Boolean! + ratingTime: String + totalScore: Float +} + +# 褰撳墠璇勫璇勫垎鍝嶅簲绫诲瀷 +type CurrentJudgeRatingResponse { + id: ID! + totalScore: Float + status: Int + remark: String + items: [CurrentJudgeRatingItemResponse!]! +} + +# 褰撳墠璇勫璇勫垎椤瑰搷搴旂被鍨� +type CurrentJudgeRatingItemResponse { + ratingItemId: ID! + ratingItemName: String! + score: Float! + weightedScore: Float! +} + +# 璇勫垎椤圭洰鍒嗘暟鍝嶅簲绫诲瀷 +type RatingItemScoreResponse { + itemId: ID! + itemName: String! score: Int! + maxScore: Int! +} + +# 褰撳墠璇勫淇℃伅鍝嶅簲绫诲瀷 +type CurrentJudgeInfoResponse { + judgeId: ID! + judgeName: String! + title: String + company: String +} + +# 鎶ュ悕鎻愪氦杈撳叆绫诲瀷 +input ActivityRegistrationInput { + activityId: ID! + playerInfo: PlayerRegistrationInput! + regionId: ID + projectName: String + description: String + mediaFiles: [MediaFileInput!] + attachmentMediaIds: [String!] +} + +# 閫夋墜鎶ュ悕淇℃伅杈撳叆绫诲瀷 +input PlayerRegistrationInput { + name: String! + phone: String! + gender: Int + birthDate: String + education: String + introduction: String + description: String + avatarMediaId: String +} + + + +# 濯掍綋鏂囦欢杈撳叆绫诲瀷 +input MediaFileInput { + name: String! + path: String! + fileExt: String + fileSize: Int + mediaType: Int! +} + +# 鎶ュ悕鎻愪氦鍝嶅簲绫诲瀷 +type ActivityRegistrationResponse { + success: Boolean! + message: String + registrationId: ID + playerId: ID + userId: ID + activityPlayerId: ID +} + +# 鐜╁鎶ュ悕鐘舵�佸搷搴旂被鍨� +type PlayerRegistrationResponse { + id: ID + status: Int + registrationTime: String + reviewStatus: Int + reviewComment: String } \ No newline at end of file -- Gitblit v1.8.0