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