package com.data.emqx.mapper;

import com.data.emqx.domain.DeviceAlarm;
import com.data.emqx.domain.DeviceAlarmUwb;
import com.data.emqx.domain.DeviceHeart;
import com.data.emqx.domain.DeviceWeightRfid;

/**
 * @author licd
 * @className DeviceDataMapper
 * @description 设备数据Mapper
 * @date 2026/03/23
 */
public interface DeviceDataMapper {

    /**
     * 统计称重&标签数据数量
     */
    int countWeightRfidByDeviceIdAndSeqNum(String deviceId, Long seqNum);

    /**
     * 插入称重&标签数据
     */
    void insertWeightRfid(DeviceWeightRfid deviceWeightRfid);

    /**
     * 统计告警数据数量
     */
    int countAlarmByDeviceIdAndSeqNum(String deviceId, Long seqNum);

    /**
     * 插入告警数据
     */
    void insertAlarm(DeviceAlarm deviceAlarm);

    /**
     * 统计心跳数据数量
     */
    int countHeartByDeviceIdAndSendTime(String deviceId, Long sendTime);

    /**
     * 插入心跳数据
     */
    void insertHeart(DeviceHeart deviceHeart);

    /**
     * 插入告警UWB数据
     */
    void insertAlarmUwb(DeviceAlarmUwb deviceAlarmUwb);

}
