2026-01-16 16:37:03 +08:00
|
|
|
|
package com.ai.da.service;
|
|
|
|
|
|
|
|
|
|
|
|
import com.ai.da.model.dto.ContestantDTO;
|
2026-01-20 13:14:50 +08:00
|
|
|
|
import com.ai.da.model.vo.CheckOTPVO;
|
2026-01-16 16:37:03 +08:00
|
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
|
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
|
|
|
|
public interface GlobalAwardService {
|
|
|
|
|
|
String uploadPdf(MultipartFile file, String email) throws Exception;
|
2026-01-20 13:14:50 +08:00
|
|
|
|
|
2026-01-16 16:37:03 +08:00
|
|
|
|
String uploadVideo(MultipartFile file, String email) throws Exception;
|
2026-01-20 13:14:50 +08:00
|
|
|
|
|
2026-01-16 16:37:03 +08:00
|
|
|
|
Map<String, Object> saveContestant(ContestantDTO request);
|
2026-01-20 13:14:50 +08:00
|
|
|
|
|
2026-01-21 14:59:41 +08:00
|
|
|
|
com.ai.da.model.dto.ContestantDTO getContestantByID(String email);
|
2026-01-20 13:14:50 +08:00
|
|
|
|
|
|
|
|
|
|
void checkEmail(String email);
|
|
|
|
|
|
|
2026-01-21 14:13:33 +08:00
|
|
|
|
CheckOTPVO checkCode(String email, String otp);
|
2026-01-21 14:34:43 +08:00
|
|
|
|
|
|
|
|
|
|
void checkSecurityToken(String email, String securityToken);
|
2026-02-04 13:41:09 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 导出参赛者列表为 Excel(二进制)
|
|
|
|
|
|
* @return Excel 文件的字节数组
|
|
|
|
|
|
*/
|
|
|
|
|
|
byte[] exportContestants() throws Exception;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 将参赛者列表导出并保存到服务端本地目录(使用服务配置的 uploadDir/exports)
|
|
|
|
|
|
*/
|
|
|
|
|
|
void saveContestantsToLocal() throws Exception;
|
2026-02-09 10:21:40 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
2026-04-13 11:47:20 +08:00
|
|
|
|
* 将参赛者文件打包为 ZIP 并返回字节数组(不落盘,直接响应给浏览器)
|
2026-02-09 10:21:40 +08:00
|
|
|
|
* @param minContestantNumber 最小参赛者编号
|
|
|
|
|
|
* @param maxContestantNumber 最大参赛者编号
|
2026-04-13 11:47:20 +08:00
|
|
|
|
* @return ZIP 文件的字节数组
|
2026-02-09 10:21:40 +08:00
|
|
|
|
*/
|
2026-04-13 11:47:20 +08:00
|
|
|
|
byte[] exportContestantFilesAsZip(Integer minContestantNumber, Integer maxContestantNumber) throws Exception;
|
2026-04-13 10:22:43 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 查询参赛者总数
|
|
|
|
|
|
* @return 参赛者数量
|
|
|
|
|
|
*/
|
|
|
|
|
|
long getContestantCount();
|
2026-01-16 16:37:03 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|