feat(competition): 实现比赛创建功能并集成后端API
- 新增比赛创建页面,包含基本信息、组别管理和题目配置三个步骤 - 添加 OSS 图片上传组件,支持海报上传到阿里云OSS - 集成后端API:获取房间列表、创建活动、创建队伍和创建题目 - 优化表单数据绑定和验证逻辑,使用防抖减少频繁更新 - 修复组别管理Excel导入的数据填充问题 - 更新类型定义,添加CommonResponse和比赛相关接口类型
This commit is contained in:
42
apps/admin/src/service/api/competition.ts
Normal file
42
apps/admin/src/service/api/competition.ts
Normal file
@ -0,0 +1,42 @@
|
||||
import { request } from '../request'
|
||||
|
||||
/** 房间相关接口 */
|
||||
export function fetchGetRoomList() {
|
||||
return request<App.Service.Response<Api.Competition.Room[]>>({
|
||||
url: '/Base/ActivityMain/GetActivity_RoomList',
|
||||
method: 'get',
|
||||
})
|
||||
}
|
||||
|
||||
// 现在服务端把活动新建弄成了三个接口:
|
||||
// 1. 创建活动
|
||||
// 2. 创建活动房间
|
||||
// 3. 创建活动队伍
|
||||
// 但是业务要求最后一步创建
|
||||
|
||||
/** 创建活动基础信息 */
|
||||
export function fetchCreateActivity(data: Api.Competition.CreateRoomRequest) {
|
||||
return request<App.Service.Response<Api.Common.CommonResponse>>({
|
||||
url: '/Base/ActivityMain/AddActivity',
|
||||
method: 'post',
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
||||
/** 创建活动队伍 */
|
||||
export function fetchCreateTeamList(data: Api.Competition.CreateTeamListRequest[]) {
|
||||
return request<App.Service.Response<Api.Common.CommonResponse>>({
|
||||
url: '/Base/ActivityMain/AddActivity_TeamList',
|
||||
method: 'post',
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
||||
/** 创建活动题目 */
|
||||
export function fetchCreateQuestion(data: Api.Competition.CreateQuestionRequest[]) {
|
||||
return request<App.Service.Response<Api.Common.CommonResponse>>({
|
||||
url: '/Base/ActivityMain/AddOrUpdateActivity_Question',
|
||||
method: 'post',
|
||||
data,
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user