package com.ruoyi.other.emind.mapper; import com.ruoyi.other.emind.domain.EmindStation; import com.ruoyi.other.emind.dto.EmindIncomeHistoryDto; import com.ruoyi.other.emind.dto.EmindMainTotalDto; import org.apache.ibatis.annotations.Param; import java.time.LocalDate; import java.time.LocalDateTime; import java.math.BigDecimal; import java.util.List; import java.util.Map; import java.util.Set; public interface EmindStorageDashboardMapper { int upsertSnapshot(@Param("station") EmindStation station, @Param("data") EmindMainTotalDto data, @Param("incomeToday") BigDecimal incomeToday, @Param("syncedAt") LocalDateTime syncedAt); int deleteCurve(@Param("stationId") Long stationId); int insertCurve(@Param("stationId") Long stationId, @Param("points") List points, @Param("syncedAt") LocalDateTime syncedAt); int upsertDaily(@Param("stationId") Long stationId, @Param("rows") List rows, @Param("syncedAt") LocalDateTime syncedAt); List> selectStations(@Param("platformNames") List platformNames); List> selectSnapshotRows(@Param("stationId") Long stationId, @Param("platformNames") List platformNames); List> selectDailyRows(@Param("stationId") Long stationId, @Param("platformNames") List platformNames, @Param("startDate") LocalDate startDate, @Param("endDate") LocalDate endDate); List> selectCurveRows(@Param("stationId") Long stationId, @Param("platformNames") List platformNames); List> selectEnergyBlockRows(@Param("stationId") Long stationId, @Param("platformNames") List platformNames); void deleteByStationIdDay(@Param("stationId") Long stationId, @Param("dateSet") Set dateSet); }