AutoGRAPH.NET Service GetStage — различия между версиями
Admin (обсуждение | вклад) (Новая страница: «q») |
Ivan (обсуждение | вклад) |
||
(не показано 17 промежуточных версий 3 участников) | |||
Строка 1: | Строка 1: | ||
+ | Возвращает отдельный отрезок по запрошенным ТС за период, по сути являющейся подмножеством информации [[AutoGRAPH.NET_Service_GetTrips|GetTrips]]. |
||
− | q |
||
+ | |||
+ | |||
+ | == JSON == |
||
+ | |||
+ | Вызов: |
||
+ | <pre>http://localhost/ServiceJSON/GetStage?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef102&IDs=d090286c-1fd6-4ef2-ae44-8091d04408d1&SD=20150509-0000&ED=20150512-0000&stageName=Motion&tripParams=*&tripTotalParams=*</pre> |
||
+ | |||
+ | Дата и время задаются в формате '''yyyyMMdd''' или '''yyyyMMdd-HHmm'''<br/> Если ID'ов больше одного - идентификаторы указывается через запятую. |
||
+ | |||
+ | Результат: [[Media:GetStage-result.json.txt|скачать файл]] |
||
+ | |||
+ | [[File:AutoGRAPHNET Service GetStage.png|RTENOTITLE]] |
||
+ | |||
+ | == WCF == |
||
+ | |||
+ | Определение: |
||
+ | <pre>Dictionary<Guid, RTripStage> GetStage(Guid schemaID, Guid[] IDs, string SD, string ED, string stageName, string[] tripParams, string[] tripTotalParams)</pre> |
||
+ | |||
+ | *schemaID – ID схемы |
||
+ | *IDs – список идентификаторов ТС (их можно получить с помощью [[AutoGRAPH.NET_Service_EnumDevices|EnumDevices]] – поле ID в классе RGroupItem) |
||
+ | *SD / ED – соответственно начало и конец временного периода. Время в UTC. |
||
+ | *stageName - название или алиас отрезка (GeoFence, Motion, ...). Название может быть маской, тогда возвращаются все отрезки, имена параметров которых подходят под маску. Например, если передать stageName="Tank*", то будут возвращены все баки (Tank1, Tank2, TankSummary и т.д.), если определены в схеме. |
||
+ | *tripParams - если !=null - то возвращаются только указанные рейсовые параметры. По умолчанию (если tripParams==*) - то все параметры. |
||
+ | *tripTotalParams - если !=null - то возвращаются только указанные итоговые параметры. По умолчанию (если tripTotalParams==*) - то все параметры. |
||
+ | |||
+ | Результат: |
||
+ | <pre>public class RTripStage // отрезки рейса (например "Остановки", "Заправки/сливы") |
||
+ | { |
||
+ | public string Name { get; set; } // название отрезка |
||
+ | public string[] Params { get; set; } // список имён колонок в отрезке - например "Motion", "Daylight", "Speed", "Speed Avg" |
||
+ | public RTripStageItem[] Items { get; set; } // строки отрезка |
||
+ | public RParameterStatus[] Statuses { get; set; } // список доступных статусов для данного параметра/отрезка |
||
+ | public Dictionary<string,object> Total { get; set; } // финальные данные по отрезку (как правило - суммарные данные по всем Items) |
||
+ | } |
||
+ | |||
+ | public class RTripStageItem |
||
+ | { |
||
+ | public int Index { get; set; } // Индекс отрезка (нумерация с 0) |
||
+ | public DateTime SD { get; set; } // дата/время начала отрезка (в UTC) |
||
+ | public DateTime ED { get; set; } // дата/время конца отрезка (в UTC) |
||
+ | public int Status { get; set; } // ID статуса (0 = выключенный, >0 = порядковый номер статуса) |
||
+ | public Guid StatusID { get; set; } // ID геозоны (если отрезок геозон) |
||
+ | public Guid[] StatusIDs { get; set; } // ID геозон (если есть перекрытия - тут может быть больше одного элемента) |
||
+ | public string Caption { get; set; } // имя статуса (Move, Park, ...), название геозоны (если отрезок геозон), ФИО водителя, ... |
||
+ | public object[] Values { get; set; } // значения для колонок в табличке отрезка (количество и порядок соответствуют RTripStage.Params) |
||
+ | } |
||
+ | </pre> |
Текущая версия на 15:26, 28 января 2021
Возвращает отдельный отрезок по запрошенным ТС за период, по сути являющейся подмножеством информации GetTrips.
JSON
Вызов:
http://localhost/ServiceJSON/GetStage?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef102&IDs=d090286c-1fd6-4ef2-ae44-8091d04408d1&SD=20150509-0000&ED=20150512-0000&stageName=Motion&tripParams=*&tripTotalParams=*
Дата и время задаются в формате yyyyMMdd или yyyyMMdd-HHmm
Если ID'ов больше одного - идентификаторы указывается через запятую.
Результат: скачать файл
WCF
Определение:
Dictionary<Guid, RTripStage> GetStage(Guid schemaID, Guid[] IDs, string SD, string ED, string stageName, string[] tripParams, string[] tripTotalParams)
- schemaID – ID схемы
- IDs – список идентификаторов ТС (их можно получить с помощью EnumDevices – поле ID в классе RGroupItem)
- SD / ED – соответственно начало и конец временного периода. Время в UTC.
- stageName - название или алиас отрезка (GeoFence, Motion, ...). Название может быть маской, тогда возвращаются все отрезки, имена параметров которых подходят под маску. Например, если передать stageName="Tank*", то будут возвращены все баки (Tank1, Tank2, TankSummary и т.д.), если определены в схеме.
- tripParams - если !=null - то возвращаются только указанные рейсовые параметры. По умолчанию (если tripParams==*) - то все параметры.
- tripTotalParams - если !=null - то возвращаются только указанные итоговые параметры. По умолчанию (если tripTotalParams==*) - то все параметры.
Результат:
public class RTripStage // отрезки рейса (например "Остановки", "Заправки/сливы") { public string Name { get; set; } // название отрезка public string[] Params { get; set; } // список имён колонок в отрезке - например "Motion", "Daylight", "Speed", "Speed Avg" public RTripStageItem[] Items { get; set; } // строки отрезка public RParameterStatus[] Statuses { get; set; } // список доступных статусов для данного параметра/отрезка public Dictionary<string,object> Total { get; set; } // финальные данные по отрезку (как правило - суммарные данные по всем Items) } public class RTripStageItem { public int Index { get; set; } // Индекс отрезка (нумерация с 0) public DateTime SD { get; set; } // дата/время начала отрезка (в UTC) public DateTime ED { get; set; } // дата/время конца отрезка (в UTC) public int Status { get; set; } // ID статуса (0 = выключенный, >0 = порядковый номер статуса) public Guid StatusID { get; set; } // ID геозоны (если отрезок геозон) public Guid[] StatusIDs { get; set; } // ID геозон (если есть перекрытия - тут может быть больше одного элемента) public string Caption { get; set; } // имя статуса (Move, Park, ...), название геозоны (если отрезок геозон), ФИО водителя, ... public object[] Values { get; set; } // значения для колонок в табличке отрезка (количество и порядок соответствуют RTripStage.Params) }