package com.ld.igds.oa.service; import com.ld.igds.models.OAGps; import com.ld.igds.oa.dto.AssetData; import com.ld.igds.oa.dto.GpsData; import com.ld.igds.oa.dto.GpsLocationData; import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Map; public interface CoreGpsService { /** * 从页面刷新设备信息到缓存 * * @param companyId * @param list */ void setCacheGpsData(String companyId, List list); /** * 根据IP更新GPS设备状态 * * @param address * @param port * @param status */ void updateGpsStatus(String address, Integer port, String status); /** * 根据phone更新数据库中GPS设备信息,没有则新增 * * @param data */ void updateGps(GpsData data); /** * 根据phone查询数据库中GPS设备信息 * @param phone * @return */ GpsData getGpsByPhone(String phone); /** * 更新缓存中GPS设备信息 * @param data * @return */ Map updateCacheListGpsData(GpsData data); /** * 获取缓存中GPS设备信息 * @param companyId * @return */ Map cacheListGpsData(String companyId); /** * 更新缓存中设备位置信息 * @param data * @return */ Map updateCacheLocationData(GpsLocationData data); /** * 获取缓存中设备位置信息 * @param companyId * @return */ Map cacheListLocationData(String companyId); /** * 根据id更新数据库GPS位置信息,若id不存在则新增 * * @param data */ void updateGpsRecord(GpsLocationData data); /** * 更新缓存中设备位置信息 * @param data * @return */ Map updateCacheTimeData(GpsLocationData data); /** * 获取缓存中设备位置信息 * @param companyId * @return */ Map cacheListTimeData(String companyId); /** * 获取GPS设备sn信息 * @param companyId * @return */ GpsData getCacheBySerialNum(String companyId,String serialNum); /** * 查询固定资产设备(只获取状态正常、绑定有GPS设备的资产设备) * @param companyId * @return */ List getAsset(@Param("companyId") String companyId); }