package com.fs.watch.service;

import com.fs.watch.domain.WatchBasicInfo;
import com.fs.watch.domain.vo.GnssVo;
import com.fs.watch.param.WatchDataQueryParam;

import java.util.List;
import java.util.Map;

/**
* @author Administrator
* @description 针对表【watch_basic_info(设备基础数据)】的数据库操作Service
* @createDate 2024-10-15 11:06:50
*/
public interface WatchBasicInfoService{
    /**
     * 新增数据
     *
     * @param watchBasicInfo 实例对象
     * @return 实例对象
     */
    Boolean insert(WatchBasicInfo watchBasicInfo);

    /**
     * 通过ID查询单条数据
     *
     * @param  deviceId 主键
     * @return 实例对象
     */
    WatchBasicInfo queryByDeviceId(String deviceId);

    /**
     * 根据deviceId查询最新数据
     * @param deviceId
     * @return
     */
    WatchBasicInfo queryLastByDeviceId(String deviceId);

    List<GnssVo> queryGnssByDateAndDeviceId(String date, String deviceId);

    Map<String, Object> queryOverviewsByDateAndDeviceId(String date, String deviceId);

    List<WatchBasicInfo> page(WatchDataQueryParam param);

    List<GnssVo> queryGnssByDate(String starTime, String endTime, String deviceId);
}
