From 2d410989d32380d31ae3fe6d42aa3b3ba9e09d00 Mon Sep 17 00:00:00 2001 From: lrj <owen.stl@gmail.com> Date: 星期五, 03 十月 2025 22:13:29 +0800 Subject: [PATCH] UI优化和bug修复: 1.调整小程序消息列表图标样式 2.优化web端比赛晋级页面布局 3.修复小程序消息列表日期显示问题 --- backend/src/main/resources/graphql/player.graphqls | 307 ++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 266 insertions(+), 41 deletions(-) diff --git a/backend/src/main/resources/graphql/player.graphqls b/backend/src/main/resources/graphql/player.graphqls index 71bea78..8ab03f6 100644 --- a/backend/src/main/resources/graphql/player.graphqls +++ b/backend/src/main/resources/graphql/player.graphqls @@ -1,67 +1,292 @@ extend type Query { - activityPlayerApplications(name: String, page: Int, size: Int): [ActivityPlayerApplicationResponse!]! - activityPlayerDetail(id: ID!): ActivityPlayerDetailResponse + myActivityPlayer(activityId: ID!): ActivityPlayer + activityPlayerApplications(name: String, activityId: ID, state: Int, page: Int, size: Int): PlayerApplicationPageResponse + # 椤圭洰璇勫涓撶敤鏌ヨ锛屽寘鍚墍鏈夐樁娈垫暟鎹紙鍖呮嫭澶嶈禌銆佸喅璧涳級 + projectReviewApplications(name: String, activityId: ID, state: Int, page: Int, size: Int): ProjectReviewApplicationPageResponse + # 鑾峰彇鎸囧畾閫夋墜鐨勬墍鏈夎瘎濮旇瘎鍒嗙姸鎬� + judgeRatingsForPlayer(activityPlayerId: ID!): [JudgeRatingStatusResponse!]! + # 鑾峰彇鎸囧畾閫夋墜鐨勫钩鍧囧垎 + averageScoreForPlayer(activityPlayerId: ID!): Float + + # 鑾峰彇褰撳墠璇勫淇℃伅 + currentJudgeInfo: CurrentJudgeInfoResponse + # 妫�鏌ヨ瘎濮旀槸鍚﹀湪鎸囧畾姣旇禌闃舵鐨勮瘎濮斿垪琛ㄤ腑 + isJudgeInActivity(stageId: ID!, judgeId: ID!): Boolean + # 鑾峰彇鎸囧畾璇勫瀵归�夋墜鐨勮瘎鍒嗘槑缁� + judgeRatingDetail(activityPlayerId: ID!, judgeId: ID!): CurrentJudgeRatingResponse + # 鑾峰彇褰撳墠璇勫瀵归�夋墜鐨勮瘎鍒� + currentJudgeRating(activityPlayerId: ID!): CurrentJudgeRatingResponse + activityPlayerDetail(id: ID!): ActivityPlayerDetailResponse + # 寰俊绔幏鍙栭�夋墜鎶ュ悕鐘舵�� + getPlayerRegistrationState(activityId: ID!): PlayerRegistrationResponse + # 鑾峰彇姣旇禌鏅嬬骇鍒楄〃 + promotionCompetitions(name: String, page: Int, size: Int): [PromotionCompetitionResponse!]! + # 鑾峰彇鍙檵绾у弬璧涜�呭垪琛� + promotableParticipants(currentStageId: ID!): PromotableParticipantsResponse } extend type Mutation { - saveActivityPlayerRating(input: ActivityPlayerRatingInput!): Boolean! + approveActivityPlayer(activityPlayerId: ID!, feedback: String): Boolean + rejectActivityPlayer(activityPlayerId: ID!, feedback: String!): Boolean + updatePlayerFeedback(activityPlayerId: ID!, feedback: String!): Boolean + # 寰俊绔彁浜ゆ椿鍔ㄦ姤鍚� + submitActivityRegistration(input: ActivityRegistrationInput!): ActivityRegistrationResponse + # 淇濆瓨璇勫璇勫垎 + saveActivityPlayerRating(input: ActivityPlayerRatingInput!): Boolean + # 鎵ц瀛﹀憳鏅嬬骇鎿嶄綔 + promoteParticipants(input: PromotionInput!): PromotionResult +} + +type ActivityPlayer { + id: ID! + activityId: ID! + playerId: ID! + stageId: ID + state: Int + stateName: String + createTime: String + player: Player + activity: Activity +} + +type Player { + id: ID! + name: String + phone: String +} + +type PlayerApplicationPageResponse { + content: [ActivityPlayerApplicationResponse] + totalElements: Int + page: Int + size: Int +} + +type ProjectReviewApplicationPageResponse { + content: [ActivityPlayerApplicationResponse] + totalElements: Int + page: Int + size: Int +} + +# 璇勫璇勫垎鐘舵�佸搷搴� +type JudgeRatingStatusResponse { + judgeId: ID! + judgeName: String! + hasRated: Boolean! + ratingTime: String + totalScore: Float +} + +# 褰撳墠璇勫淇℃伅鍝嶅簲 +type CurrentJudgeInfoResponse { + judgeId: ID! + judgeName: String! + title: String + company: String +} + +# 褰撳墠璇勫璇勫垎鍝嶅簲 +type CurrentJudgeRatingResponse { + id: ID! + totalScore: Float + status: Int + remark: String + items: [CurrentJudgeRatingItemResponse!]! +} + +# 璇勫垎椤瑰搷搴� +type CurrentJudgeRatingItemResponse { + ratingItemId: ID! + ratingItemName: String! + score: Float + weightedScore: Float } type ActivityPlayerApplicationResponse { - id: ID - playerName: String! - activityName: String! - phone: String - applyTime: String! - state: Int + id: ID + playerName: String + activityName: String + projectName: String + phone: String + applyTime: String + state: Int + ratingCount: Int + averageScore: Float } -# 姣旇禌鎶ュ悕璇︽儏鍝嶅簲锛堢敤浜庤瘎鍒嗛〉闈級 type ActivityPlayerDetailResponse { - id: ID! - playerInfo: PlayerInfoResponse! - activityName: String! - description: String - submissionFiles: [SubmissionMediaResponse!]! - ratingForm: RatingFormResponse + id: ID + playerInfo: PlayerInfoResponse + regionInfo: RegionInfoResponse + activityName: String + projectName: String + description: String + feedback: String + state: Int + stageId: ID + submissionFiles: [SubmissionMediaResponse] + ratingForm: RatingFormResponse } -# 瀛﹀憳淇℃伅鍝嶅簲 type PlayerInfoResponse { - id: ID! - name: String! - phone: String - description: String - avatarUrl: String + id: ID + name: String + phone: String + gender: Int + birthday: String + education: String + introduction: String + description: String + avatarUrl: String + avatar: MediaResponse } -# 鎻愪氦璧勬枡鍝嶅簲 +type RegionInfoResponse { + id: ID + name: String + fullPath: String +} + type SubmissionMediaResponse { - id: ID! - name: String! - url: String! - fileExt: String - fileSize: Int - mediaType: Int + id: ID + name: String + url: String + fileExt: String + fileSize: Int + mediaType: Int + thumbUrl: String } -# 璇勫垎琛ㄥ崟鍝嶅簲 type RatingFormResponse { - schemeId: ID! - schemeName: String! - items: [RatingItemResponse!]! - totalMaxScore: Int! + schemeId: ID + schemeName: String + items: [RatingItemResponse] + totalMaxScore: Int } -# 璇勫垎鎻愪氦杈撳叆绫诲瀷 +# 閫夋墜鎶ュ悕鐘舵�佸搷搴旂被鍨� +type PlayerRegistrationStateResponse { + activityId: ID! + playerId: ID + registrationState: String + canRegister: Boolean + registrationTime: String + projectName: String +} + +# 閫夋墜鎶ュ悕鍝嶅簲绫诲瀷锛堢敤浜巔layerRegistration鍜実etPlayerRegistrationState鏌ヨ锛� +type PlayerRegistrationResponse { + id: ID + status: Int + registrationTime: String + reviewStatus: Int + reviewComment: String +} + +# 濯掍綋鏂囦欢杈撳叆绫诲瀷 +input MediaFileInput { + name: String + path: String + fileExt: String + fileSize: Int + mediaType: Int +} + +# 閫夋墜鎶ュ悕淇℃伅杈撳叆绫诲瀷 +input PlayerRegistrationInput { + name: String! + phone: String! + birthDate: String + gender: Int + education: String + introduction: String + description: String + avatarMediaId: String +} + +# 娲诲姩鎶ュ悕杈撳叆绫诲瀷 +input ActivityRegistrationInput { + activityId: ID! + playerInfo: PlayerRegistrationInput! + regionId: ID + projectName: String! + description: String + mediaFiles: [MediaFileInput] + attachmentMediaIds: [String] +} + +# 娲诲姩鎶ュ悕鍝嶅簲绫诲瀷 +type ActivityRegistrationResponse { + success: Boolean! + message: String + registrationId: ID + playerId: ID + userId: ID + activityPlayerId: ID +} + +# 璇勫璇勫垎杈撳叆绫诲瀷 input ActivityPlayerRatingInput { - activityPlayerId: ID! - ratings: [ActivityPlayerRatingItemInput!]! - comment: String + activityPlayerId: ID! + stageId: ID + ratings: [ActivityPlayerRatingItemInput!]! + comment: String } -# 璇勫垎椤圭洰杈撳叆绫诲瀷 +# 璇勫垎椤硅緭鍏ョ被鍨� input ActivityPlayerRatingItemInput { - itemId: ID! - score: Int! + itemId: ID! + score: Float! +} + +# 姣旇禌鏅嬬骇鍒楄〃鍝嶅簲绫诲瀷 +type PromotionCompetitionResponse { + id: ID! + competitionId: ID! + competitionName: String! + stageName: String! + maxParticipants: Int + currentCount: Int! + status: Int + startTime: String + endTime: String + sortOrder: Int + state: Int +} + +# 鍙檵绾у弬璧涜�呭垪琛ㄥ搷搴旂被鍨� +type PromotableParticipantsResponse { + participants: [PromotableParticipantResponse!]! + selectableCount: Int + totalCount: Int + previousStageName: String + currentStageName: String +} + +# 鍙檵绾у弬璧涜�呭搷搴旂被鍨� +type PromotableParticipantResponse { + id: ID! + playerName: String + projectName: String + phone: String + averageScore: Float + ratingCount: Int + applyTime: String + state: Int + playerId: ID +} + +# 鏅嬬骇鎿嶄綔杈撳叆绫诲瀷 +input PromotionInput { + competitionId: ID! + participantIds: [ID!]! + targetStageId: ID! +} + +# 鏅嬬骇鎿嶄綔缁撴灉绫诲瀷 +type PromotionResult { + success: Boolean! + message: String + promotedCount: Int } \ No newline at end of file -- Gitblit v1.8.0