package com.zhitan.engine.repository; import com.zhitan.engine.entity.DataItem; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Repository; import java.time.LocalDateTime; import java.util.List; /** * 数据项数据访问层 */ @Repository public interface DataItemRepository extends JpaRepository { /** * 根据索引ID和时间编码查询数据项 * * @param indexId 索引ID * @param timeCode 时间编码 * @return 数据项 */ @Query("SELECT d FROM DataItem d WHERE d.indexId = :indexId AND d.timeCode = :timeCode") DataItem findByIndexIdAndTimeCode(@Param("indexId") String indexId, @Param("timeCode") String timeCode); /** * 根据索引ID和时间类型查询数据项 * * @param indexId 索引ID * @param timeType 时间类型 * @return 数据项列表 */ List findByIndexIdAndTimeType(String indexId, String timeType); /** * 根据索引ID和数据时间范围查询数据项 * * @param indexId 索引ID * @param startTime 开始时间 * @param endTime 结束时间 * @return 数据项列表 */ List findByIndexIdAndDataTimeBetween(String indexId, LocalDateTime startTime, LocalDateTime endTime); }