AutoGRAPH.NET Service GetTripTables — различия между версиями
Ivan (обсуждение | вклад) |
|||
| Строка 20: | Строка 20: | ||
*schemaID – ID схемы |
*schemaID – ID схемы |
||
*IDs – список идентификаторов ТС (их можно получить с помощью [[AutoGRAPH.NET_Service_EnumDevices|EnumDevices]] – поле ID в классе RGroupItem) |
*IDs – список идентификаторов ТС (их можно получить с помощью [[AutoGRAPH.NET_Service_EnumDevices|EnumDevices]] – поле ID в классе RGroupItem) |
||
| − | *SD / ED – соответственно начало и конец временного периода. Время |
+ | *SD / ED – соответственно начало и конец временного периода. Время в UTC. |
*onlineParams - один или больше табличных параметров. Отсутствующие у приборов параметры игнорируются и в ответе также отсутствуют |
*onlineParams - один или больше табличных параметров. Отсутствующие у приборов параметры игнорируются и в ответе также отсутствуют |
||
*tripSplitterIndex - идентификатор разбиения на рейсы (по умолчанию 0), -1 если не разбивать на рейсы |
*tripSplitterIndex - идентификатор разбиения на рейсы (по умолчанию 0), -1 если не разбивать на рейсы |
||
Текущая версия на 14:23, 15 октября 2020
Возвращает табличные данные по запрошенным ТС за период.
JSON
Вызов:
http://localhost/ServiceJSON/GetTripTables?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef102&IDs=d090286c-1fd6-4ef2-ae44-8091d04408d1&SD=20151006&ED=20151007-2359&onlineParams=Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel&tripSplitterIndex=0
Дата и время задаются в формате yyyyMMdd или yyyyMMdd-HHmm
Если ID'ов больше одного - идентификаторы указывается через запятую.
Результат: скачать файл
WCF
Определение:
Dictionary<Guid, RTripTables> GetTripTables(Guid schemaID, string IDs, string SD, string ED, string[] onlineParams, int tripSplitterIndex)
- schemaID – ID схемы
- IDs – список идентификаторов ТС (их можно получить с помощью EnumDevices – поле ID в классе RGroupItem)
- SD / ED – соответственно начало и конец временного периода. Время в UTC.
- onlineParams - один или больше табличных параметров. Отсутствующие у приборов параметры игнорируются и в ответе также отсутствуют
- tripSplitterIndex - идентификатор разбиения на рейсы (по умолчанию 0), -1 если не разбивать на рейсы
Результат:
public class RTripTables
{
public Guid ID { get; set; } // ID ТС
public string Name { get; set; } // название ТС
public RTripTableItem[] Trips { get; set; }// список рейсов
}
public class RTripTableItem
{
public int Index { get; set; } // порядковый номер рейса (с 0)
public DateTime SD { get; set; } // дата/время начала рейса (в UTC)
public DateTime ED { get; set; } // дата/время конца рейса (в UTC)
public RPoint PointStart { get; set; } // координата начала рейса
public RPoint PointEnd { get; set; } // координата конца рейса
public DateTime[] DT { get; set; } // массив дата-времени для каждой табличной записи
public RTripTableValues[] Values { get; set; } // табличные данные этого рейса
}
public class RTripTableValues
{
public string Name { get; set; } // название параметра
public string Caption { get; set; } // описание параметра
public object[] Values { get; set; } // массив данных по каждому параметру (тип зависит от ReturnType)
public RParameterStatus[] Statuses { get; set; } // список возможных статусов отрезка
public ReturnType ReturnType { get; set; } // тип данных
public AddValueType ValueType { get; set; } // модификатор данных
public string Unit { get; set; } // единица измерения
public string Format { get; set; } // формат отображения
}
public enum AddValueType : int
{
Curr = 0, // текущее значение (например, уровень топлива)
First = 1, // первое значение в отрезке/рейса (например, время начала рейса или отрезка)
Last = 2, // последнее значение в отрезке/рейса (например, время конца рейса или отрезка)
Diff = 3 // разница между точками (например расход топлива за рейс)
}
