package com.dji.sample.media.service; import com.dji.sample.common.model.PaginationData; import com.dji.sample.media.model.FileUploadDTO; import com.dji.sample.media.model.MediaFileEntity; import com.dji.sample.media.model.MediaJobDTO; import com.dji.sample.media.model.param.SearchMediaParam; import com.drew.imaging.ImageProcessingException; import java.io.IOException; import java.util.List; /** * @author sean * @version 0.2 * @date 2021/12/9 */ public interface IMediaService { /** * Check if the file has been uploaded by the fingerprint. * * @param workspaceId * @param fingerprint * @return */ Boolean fastUpload(String workspaceId, String fingerprint); /** * Save the basic information of the file to the database. * * @param workspaceId * @param file * @return */ Integer saveMediaFile(String workspaceId, FileUploadDTO file) throws ImageProcessingException, IOException; /** * Query tiny fingerprints about all files in this workspace based on the workspace id. * * @param workspaceId * @return */ List getAllTinyFingerprintsByWorkspaceId(String workspaceId); /** * Query the fingerprints that already exist in it based on the incoming tiny fingerprints data. * * @param workspaceId * @param tinyFingerprints * @return */ List getExistTinyFingerprints(String workspaceId, List tinyFingerprints); PaginationData mediaPage(String workspaceId, SearchMediaParam param); PaginationData mediaDetail(String jobId, Long page, Long pageSize); MediaFileEntity getMediaFieByTid(String timestamp); }