feat(后台比赛): 比赛列表带上每场几道题、几人参加,按开始时间排,复制出来的旧比赛不再跑到最前面

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
xuyueandClaude Opus 5.5 committed 2026-10-13 14:07:24 +08:00
1 parent c59e31eeb2
commit 591c7bcab9
2 files changed
+38 -4

No files matched your search

+8 -1
View File
@@ -394,7 +394,13 @@ export const adminContestSchema = z.object({
contestType: z.enum(["Public", "Password Protected"]),
})
export const adminContestListSchema = paginatedSchema(adminContestSchema)
/** 后台比赛列表的一行:比赛本身,加几道题、几人参加(交过题的人数) */
export const adminContestListItemSchema = adminContestSchema.extend({
problemCount: z.number().int(),
participantCount: z.number().int(),
})
export const adminContestListSchema = paginatedSchema(adminContestListItemSchema)
export const createContestRequestSchema = z.object({
title: z.string().trim().min(1).max(128),
@@ -1008,6 +1014,7 @@ export type CreateProblemRequest = z.infer<typeof createProblemRequestSchema>
export type AdminContest = z.infer<typeof adminContestSchema>
export type AdminContestList = z.infer<typeof adminContestListSchema>
export type AdminContestListItem = z.infer<typeof adminContestListItemSchema>
export type AdminUser = z.infer<typeof adminUserSchema>
export type AdminUserList = z.infer<typeof adminUserListSchema>
export type CheckUsernamesResponse = z.infer<typeof checkUsernamesResponseSchema>