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 uploadReferenceFile(List images, List 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 getRecentUploadVO(Long userId); boolean deleteUploadMedia(Long userId, String uuid); IPage getMyAiGenerateHistory(AiTaskMediaQuery query, Long userId); void setMiniProgramState(String miniProgramState); }