package org.jeecg.modules.ZyNrgcc.mapper;

import java.util.List;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.ZyNrgcc.entity.BuZyNrgccOnline;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

/**
 * @Description: bu_zy_nrgcc_online
 * @Author: jeecg-boot
 * @Date:   2025-12-05
 * @Version: V1.0
 */
public interface BuZyNrgccOnlineMapper extends BaseMapper<BuZyNrgccOnline> {

    /**
     * 根据月份查询历史数据
     * @param page 分页对象
     * @param tableName 表名
     * @return
     */
    IPage<BuZyNrgccOnline> queryHistoryDataByMonth(Page<BuZyNrgccOnline> page, @Param("tableName") String tableName);
    
    /**
     * 根据时间范围查询历史数据
     * @param page 分页对象
     * @param tableName 表名
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return
     */
    IPage<BuZyNrgccOnline> queryHistoryDataByTimeRange(Page<BuZyNrgccOnline> page, @Param("tableName") String tableName, 
                                             @Param("startTime") String startTime, @Param("endTime") String endTime);

    /**
     * 更新历史数据
     * @param entity 要更新的实体
     * @param tableName 表名
     * @return
     */
    boolean updateHistoricalData(@Param("entity") BuZyNrgccOnline entity, @Param("tableName") String tableName);


}