AutoGRAPH.NET Service GetTripTables — различия между версиями
Admin (обсуждение | вклад) (→WCF) |
|||
(не показано 12 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
Возвращает табличные данные по запрошенным ТС за период. |
Возвращает табличные данные по запрошенным ТС за период. |
||
+ | |||
+ | == JSON == |
||
+ | |||
+ | Вызов: |
||
+ | <pre>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 |
||
+ | </pre> |
||
+ | |||
+ | Дата и время задаются в формате '''yyyyMMdd''' или '''yyyyMMdd-HHmm'''<br/>Если ID'ов больше одного - идентификаторы указывается через запятую. |
||
+ | |||
+ | Результат: [[Media:GetTrips-result.json.txt|скачать файл]] |
||
+ | |||
+ | [[File:AutoGRAPHNET Service GetTripTables.png|RTENOTITLE]] |
||
== WCF == |
== WCF == |
||
Определение: |
Определение: |
||
− | <pre>Dictionary<Guid, RTripTables> GetTripTables( |
+ | <pre>Dictionary<Guid, RTripTables> GetTripTables(Guid schemaID, string IDs, string SD, string ED, string[] onlineParams, int tripSplitterIndex)</pre> |
− | * |
+ | *schemaID – ID схемы |
− | * |
+ | *IDs – список идентификаторов ТС (их можно получить с помощью [[AutoGRAPH.NET_Service_EnumDevices|EnumDevices]] – поле ID в классе RGroupItem) |
− | *SD / ED – соответственно начало и конец временного периода. Время |
+ | *SD / ED – соответственно начало и конец временного периода. Время в UTC. |
− | *onlineParams - один или больше табличных параметров |
+ | *onlineParams - один или больше табличных параметров. Отсутствующие у приборов параметры игнорируются и в ответе также отсутствуют |
+ | *tripSplitterIndex - идентификатор разбиения на рейсы (по умолчанию 0), -1 если не разбивать на рейсы |
||
Результат: |
Результат: |
||
+ | <pre>public class RTripTables |
||
− | <pre> |
||
− | public class RTripTables |
||
{ |
{ |
||
public Guid ID { get; set; } // ID ТС |
public Guid ID { get; set; } // ID ТС |
||
Строка 35: | Строка 47: | ||
public string Name { get; set; } // название параметра |
public string Name { get; set; } // название параметра |
||
public string Caption { get; set; } // описание параметра |
public string Caption { get; set; } // описание параметра |
||
− | public object[] Values { get; set; } // массив данных по каждому параметру |
+ | public object[] Values { get; set; } // массив данных по каждому параметру (тип зависит от ReturnType) |
public RParameterStatus[] Statuses { get; set; } // список возможных статусов отрезка |
public RParameterStatus[] Statuses { get; set; } // список возможных статусов отрезка |
||
Строка 43: | Строка 55: | ||
public string Format { get; set; } // формат отображения |
public string Format { get; set; } // формат отображения |
||
+ | |||
− | public object[] Values { get; set; } // значения, тип зависит от ReturnType |
||
} |
} |
||
− | public enum AddValueType |
+ | public enum AddValueType : int |
{ |
{ |
||
Curr = 0, // текущее значение (например, уровень топлива) |
Curr = 0, // текущее значение (например, уровень топлива) |
||
Строка 54: | Строка 66: | ||
} |
} |
||
</pre> |
</pre> |
||
− | |||
− | == JSON == |
||
− | |||
− | Вызов: <pre>http://localhost:8300/GetTripTables/DemoCEBIT/d090286c-1fd6-4ef2-ae44-8091d04408d1/20151006/20151007-2359/Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel</pre> |
||
− | |||
− | Дата и время задаются в формате '''yyyyMMdd''' или '''yyyyMMdd-HHmm'''<br/>Если ID'ов больше одного - идентификаторы указывается через запятую. |
||
− | |||
− | Результат: [[Media:GetTrips-result.json.txt|скачать файл]] |
||
− | |||
− | [[File:AutoGRAPHNET Service GetTripTables.png]] |
Текущая версия на 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 // разница между точками (например расход топлива за рейс) }