package com.jjt.calc.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jjt.calc.domain.TwinCalcHourYhj;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * 印花机1小时统计数据Mapper接口
 *
 * @author wukai
 * @date 2025-03-06
 */
public interface TwinCalcHourYhjMapper extends BaseMapper<TwinCalcHourYhj> {
    /**
     * 查询印花机1小时统计数据
     *
     * @param id 印花机1小时统计数据主键
     * @return 印花机1小时统计数据
     */
    public TwinCalcHourYhj selectTwinCalcHourYhjById(Long id);

    /**
     * 查询印花机1小时统计数据列表
     *
     * @param twinCalcHourYhj 印花机1小时统计数据
     * @return 印花机1小时统计数据集合
     */
    public List<TwinCalcHourYhj> selectTwinCalcHourYhjList(TwinCalcHourYhj twinCalcHourYhj);

    /**
     * 新增印花机1小时统计数据
     *
     * @param twinCalcHourYhj 印花机1小时统计数据
     * @return 结果
     */
    public int insertTwinCalcHourYhj(TwinCalcHourYhj twinCalcHourYhj);

    /**
     * 修改印花机1小时统计数据
     *
     * @param twinCalcHourYhj 印花机1小时统计数据
     * @return 结果
     */
    public int updateTwinCalcHourYhj(TwinCalcHourYhj twinCalcHourYhj);

    /**
     * 删除印花机1小时统计数据
     *
     * @param id 印花机1小时统计数据主键
     * @return 结果
     */
    public int deleteTwinCalcHourYhjById(Long id);

    /**
     * 批量删除印花机1小时统计数据
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTwinCalcHourYhjByIds(Long[] ids);

    /**
     * 按时间和小时删除数据
     *
     * @param date 时间
     * @param hour 小时
     */
    void deleteTwinCalcHourYhj(@Param("date") Date date, @Param("hour") int hour);

    /**
     * 查询数据库最后一条记录
     * @return 结果
     */
    TwinCalcHourYhj lastRecord();
}
