You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.7 KiB

package com.youlai.boot.mini.service;
import com.youlai.boot.mini.model.entity.MiniAiTaskMedia;
import com.youlai.boot.mini.model.form.AiFourPanelGenerateForm;
import com.youlai.boot.mini.model.form.AiSingleImageCallbackForm;
import com.youlai.boot.mini.model.form.AiSingleImageGenerateForm;
import com.youlai.boot.mini.model.form.AiVideoGenerateForm;
import com.youlai.boot.mini.model.entity.MiniAiGenerationTask;
import com.youlai.boot.mini.model.form.AiFourPanelCallbackForm;
import com.youlai.boot.mini.model.vo.AiVideoCallbackVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.youlai.boot.mini.model.query.AiTaskMediaQuery;
import com.youlai.boot.mini.model.vo.AiGenerationTaskVO;
import com.youlai.boot.mini.model.vo.UserUploadMediaVO;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
public interface AiGenerationService {
List<String> uploadReferenceFile(List<MultipartFile> images, List<MultipartFile> videos, Long userId);
String createAndGenerateImage(AiSingleImageGenerateForm form, Long userId);
String createAndGenerateFourPanel(AiFourPanelGenerateForm form, Long userId);
boolean handleTaskCallback(AiSingleImageCallbackForm form);
String createAndGenerateVideo(AiVideoGenerateForm form, Long userId);
boolean handleVideoTaskCallback(AiVideoCallbackVO vo);
boolean handleFourPanelCallback(AiFourPanelCallbackForm form);
MiniAiGenerationTask getTaskByUuid(String uuid);
List<UserUploadMediaVO> getRecentUploadVO(Long userId);
boolean deleteUploadMedia(Long userId, String uuid);
IPage<AiGenerationTaskVO> getMyAiGenerateHistory(AiTaskMediaQuery query, Long userId);
void setMiniProgramState(String miniProgramState);
void handleTimeoutTasks();
}