package com.ruoyi.energymeter.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.energymeter.pojo.EnergyMeterSyncCheckpoint; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; /** * 同步进度 Mapper。 */ @Mapper public interface EnergyMeterSyncCheckpointMapper extends BaseMapper { @Select("SELECT * FROM energy_meter_sync_checkpoint WHERE meter_id = #{meterId} " + "AND source_api = #{sourceApi} AND granularity = #{granularity} LIMIT 1") EnergyMeterSyncCheckpoint selectUnit(@Param("meterId") Long meterId, @Param("sourceApi") String sourceApi, @Param("granularity") String granularity); /** * 幂等写入进度,只允许前进,不因最近几天回查而后退。 */ int upsert(@Param("cp") EnergyMeterSyncCheckpoint cp); }