Files
aida_back/src/main/java/com/ai/da/service/GlobalAwardService.java

52 lines
1.6 KiB
Java
Raw Normal View History

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;
import com.ai.da.model.vo.ContestantCountVO;
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
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);
void checkSecurityToken(String email, String securityToken);
/**
* 导出参赛者列表为 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 参赛者数量和最大参赛者编号
2026-04-13 10:22:43 +08:00
*/
ContestantCountVO getContestantCount();
2026-01-16 16:37:03 +08:00
}