package com.bonus.canteen.core.device.service;

import java.util.List;
import com.bonus.canteen.core.device.domain.DeviceInfo;

/**
 * 设备资料Service接口
 * 
 * @author xsheng
 * @date 2025-05-25
 */
public interface IDeviceInfoService {
    /**
     * 查询设备资料
     * 
     * @param deviceId 设备资料主键
     * @return 设备资料
     */
    public DeviceInfo selectDeviceInfoByDeviceId(Long deviceId);

    /**
     * 查询设备资料列表
     * 
     * @param deviceInfo 设备资料
     * @return 设备资料集合
     */
    public List<DeviceInfo> selectDeviceInfoList(DeviceInfo deviceInfo);

    /**
     * 新增设备资料
     * 
     * @param deviceInfo 设备资料
     * @return 结果
     */
    public int insertDeviceInfo(DeviceInfo deviceInfo);

    /**
     * 修改设备资料
     * 
     * @param deviceInfo 设备资料
     * @return 结果
     */
    public int updateDeviceInfo(DeviceInfo deviceInfo);

    /**
     * 批量删除设备资料
     * 
     * @param deviceIds 需要删除的设备资料主键集合
     * @return 结果
     */
    public int deleteDeviceInfoByDeviceIds(Long[] deviceIds);

    /**
     * 删除设备资料信息
     * 
     * @param deviceId 设备资料主键
     * @return 结果
     */
    public int deleteDeviceInfoByDeviceId(Long deviceId);

    /**
     * 根据设备sn码更新设备最后使用时间
     * @param deviceSn 设备sn码
     */
    void updateTimeBySn(String deviceSn);
}
