feat: 添加排行榜分数编辑和题目详情展示功能

- 在排行榜详情页中,添加队伍题目分数编辑功能,支持批量保存
- 新增打字机组件用于题目答案的动态展示
- 优化游戏页面的答题数量统计逻辑,使用 UserAnswerFont 解析
- 更新题目导入工具,支持更多 JSON 格式
- 调整游戏倒计时逻辑,优先使用题目详情中的时间
- 移除排行榜中的部分冗余列,优化界面显示
This commit is contained in:
2026-03-05 18:08:17 +08:00
parent ed3c815cd7
commit e8cd6732d7
29 changed files with 1879 additions and 1238 deletions

View File

@ -95,3 +95,11 @@ export function fetchGetCurrentQuestionByRoomID(RoomID: number) {
},
})
}
/** 根据QuestionDetaiID查询题目详情 */
export function fetchGetQuestionDetailByID(QuestionDetailID: number) {
return request<App.Service.Response<Api.Competition.QuestionListDetailRound>>({
url: `/Base/ActivityMain/GetQuestionListDetailByID/?QuestionID=${QuestionDetailID}`,
method: 'get',
})
}

View File

@ -1,10 +1,25 @@
import { request } from '../request'
/** get user list */
export function fetchRankList(data?: Api.Rank.UserSearchParams) {
export function fetchRankList(MainID: number, RoundType = 0) {
return request<Api.Rank.CommonRecord>({
url: '/admin/v1/class/pagelist',
method: 'post',
data: data || {},
url: `/Base/ActivityMain/GetTeamsTotal/list?MainID=${MainID}&RoundType=${RoundType}`,
method: 'get',
})
}
/** 获取队伍排名详情 */
export function fetchRankDetail(MainID: number, RoundType = 0) {
return request<Api.Rank.CommonRecord>({
url: `/Base/ActivityMain/GetTeamsTotal?MainID=${MainID}&RoundType=${RoundType}`,
method: 'get',
})
}
/** 根据队伍 id获取具体的题目分数 */
export function fetchTeamQuestionScore(TeamID: number) {
return request<Api.Rank.CommonRecord>({
url: `/Base/ActivityMain/GetTeamQuestionUseByTeamID?TeamID=${TeamID}`,
method: 'get',
})
}

View File

@ -10,19 +10,10 @@ export function updateCurrentQuestionUse(TeamGroupID: number) {
}
/** 评委对其进行打分 */
export function updateScore(Id: number, ResultPotins: number) {
export function updateScore(data: { Id: number, ResultPotins: number, QuestionDetailID: number, QuestionId: number }[]) {
return request<App.Service.Response>({
url: `/Base/ActivityMain/UpdateTeamQuestionUseOne?Id=${Id}&ResultPotins=${ResultPotins}`,
url: `/Base/ActivityMain/UpdateTeamQuestionResultList`,
method: 'post',
data: { Id, ResultPotins },
})
}
/** 评委更新状态 (Correct/Wrong) */
export function updateScoreStatus(Id: number, Status: number) {
return request<App.Service.Response>({
url: `/Base/ActivityMain/UpdateTeamQuestionUseOneStatus?Id=${Id}&Status=${Status}`,
method: 'post',
data: { Id, Status },
data,
})
}