package com.prolog.rdc.tms.service;

import com.prolog.rdc.tms.model.dto.*;
import com.prolog.rdc.tms.model.dto.g7.CurrentGpsLocationDTO;
import com.prolog.rdc.tms.model.dto.g7.CurrentTemperatureDTO;
import com.prolog.rdc.tms.model.vo.*;
import com.prolog.rdc.tms.model.vo.g7.CurrentTemperatureVO;
import com.prolog.rdc.tms.model.vo.g7.HistoryLocationByGpsnoVO;

import java.util.List;

/**
 * 
 *
 * G7设备调用接口服务层
 *
 * @className :G7Service
 * @author :fanzw
 * @creationTime :2022/11/28
 * @description :
 *
 * @modifier :fanzw
 * @modifyTime :2022/11/28
 * @reviseRemarks:
 *
 * @version :1.0.0
 *
 */
public interface G7Service {

	/**
	 * 车辆当前定位V1.0
	 *
	 * @param
	 * @return
	 */
	List<CurrentLocationDTO> currentLocationCall(List<CurrentLocationVO> vos) throws Exception;

	/**
	 * 设备车辆当前温度查询接口
	 *
	 * @param
	 * @return
	 */
	List<CurrentTemperatureDTO> currentTemperatureCall(CurrentTemperatureVO vo) throws Exception;

	/**
	 * 设备历史轨迹查询接口
	 *
	 * @param
	 * @return
	 */
	List<HistoryLocationByGpsnoDTO> historyLocationByGpsnoCall(HistoryLocationByGpsnoVO vo) throws Exception;

	/**
	 * 车辆历史轨迹查询接口
	 *
	 * @param
	 * @return
	 */
	List<HistoryLocationByGpsnoDTO> historyLocationByVehCall(HistoryLocationByGpsnoVO vo) throws Exception;

	/**
	 * 查询车辆事件报表接口
	 *
	 * @param
	 * @return
	 */
	List<TruckEventDTO> truckEventCall(TruckEventVO vo) throws Exception;

	/**
	 * 冷链报警列表接口
	 *
	 * @param
	 * @return
	 */
	List<ColdchainAlarmDTO> coldchainAlarmCall(ColdchainAlarmVO vo) throws Exception;

	/**
	 * 设备位置和状态查询
	 *
	 * @param
	 * @return
	 */
	List<CurrentGpsLocationDTO> simpleCurrentsByGpsnos(CurrentTemperatureVO vo) throws Exception;
}
