package org.sxkj.resource.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.sxkj.common.model.OdmUrlDto; import org.sxkj.resource.entity.MediaFileEntity; import org.sxkj.resource.model.EventHistoryDto; import org.sxkj.resource.model.MediaFileQueryParam; import org.sxkj.resource.model.MediaJobDTO; import org.sxkj.resource.model.SearchMediaParam; import org.sxkj.resource.vo.JobStatisticsTimeVoBo; import org.sxkj.resource.vo.MediaFileCountVO; import java.time.LocalDateTime; import java.util.List; /** * @author sean * @version 0.2 * @date 2021/12/9 */ @Mapper public interface IFileMapper extends BaseMapper { Page getPage(@Param("page") Page mediaFileEntityPage, @Param("workspaceId") String workspaceId, @Param("query") MediaFileQueryParam mediaFileQueryParam); Page mediaPage(@Param("page") Page mediaFileEntityPage, @Param("workspaceId") String workspaceId, @Param("param") SearchMediaParam param); /** * 查询odm * * @param workspaceId * @param dkbhList * @param * @return */ List getOdm(@Param("workspaceId") String workspaceId, List dkbhList, @Param("startTime") String startTime, @Param("endTime") String endTime); Page mediaDetail(Page mediaJobDTOPage, @Param("jobId") String jobId, @Param("fileAddress") String fileAddress); /** * 查询媒体文件信息 * * @param objectKey * @return */ MediaFileEntity getMediaFileByObjectKey(@Param("objectKey") String objectKey); /** * 媒体文件信息更新 * * @param objectKey * @param objectName * @return */ int updateMediaFileByObjectKey(@Param("objectKey") String objectKey, @Param("minObjectKey") String objectName); MediaFileEntity getMediaFieByTid(@Param("deviceId") String deviceId, @Param("timestamp") String timestamp); /** * 批量删除媒体文件 * * @param ids 要删除的文件的 objectKey 列表 * @return 删除的记录数量 */ int batchDeleteByKeys(@Param("ids") List ids); /** * 根据类型获取数据成果数量 * @param resultType 成果类型:0图片,1=视频,2=ai,3=三维,4=正射 * @return 成果数量 */ MediaFileCountVO getMediaFileCountByResultType(@Param("resultType") Integer resultType, @Param("areaCode") String areaCode, @Param("deptIdList") List deptIdList, @Param("permissionCondition") String permissionCondition); /** * 获取三维成果面积 * @param resultType * @param areaCode * @param deptIdList * @param permissionCondition * @return */ MediaFileCountVO calculateTheThreeDimensionalArea(@Param("resultType") Integer resultType, @Param("areaCode") String areaCode, @Param("deptIdList") List deptIdList, @Param("permissionCondition") String permissionCondition); /** * * @param resultType * @param areaCode * @return */ MediaFileCountVO getCountByResultType(@Param("resultType") Integer resultType, @Param("areaCode") String areaCode); public List findNearByMediaUrl(EventHistoryDto dto); public ListtimeEventNumStatistics(@Param("startDate") LocalDateTime startDate,@Param("endDate") LocalDateTime endDate, @Param("areaCode")String areaCode, @Param("formatTime") String formatTime); public Long countEventNumStatistics(@Param("startDate") LocalDateTime startDate,@Param("endDate") LocalDateTime endDate, @Param("areaCode")String areaCode); }