AutoGRAPH.NET Service GetStage — различия между версиями
Admin (обсуждение | вклад) (Новая страница: «q») |
Admin (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
+ | Возвращает отдельный отрезок по запрошенным ТС за период, по сути являющейся подмножеством информации [[AutoGRAPH.NET_Service_GetTrips|GetTrips]]. |
||
− | q |
||
+ | |||
+ | == WCF == |
||
+ | |||
+ | Определение: <syntaxhighlight lang="csharp"> |
||
+ | Dictionary<Guid, RTripStage> GetStage(string schemaName, string deviceIDs, string SD, string ED, string stageName) |
||
+ | </syntaxhighlight> |
||
+ | <ul style="line-height: 20.7999992370605px;"> |
||
+ | <li>schemaName – имя схемы</li> |
||
+ | <li>deviceIDs – список идентификаторов ТС (их можно получить с помощью [http://wiki.tk-chel.ru/AutoGRAPH.NET Service EnumDevices EnumDevices] – поле ID в классе RGroupItem)</li> |
||
+ | <li>SD / ED – соответственно начало и конец временного периода. Время местное по часовому поясу сервера.</li> |
||
+ | <li>stageName - название отрезка (GeoFence, Motion, ...)</li> |
||
+ | </ul> |
||
+ | |||
+ | Результат: <syntaxhighlight lang="csharp"> |
||
+ | 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; } |
||
+ | public DateTime ED { get; set; } |
||
+ | 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) |
||
+ | } |
||
+ | </syntaxhighlight> |
||
+ | |||
+ | == JSON == |
||
+ | |||
+ | Вызов: <pre>http://localhost:8300/GetStage/Demo/d090286c-1fd6-4ef2-ae44-8091d04408d1/20150509-0000/20150511-2359/Motion</pre> |
||
+ | |||
+ | Результат: [[Media:GetStage-result.json.txt|скачать файл]] |
||
+ | |||
+ | [[File:AutoGRAPHNET Service GetStage.png]] |
Версия 12:18, 14 мая 2015
Возвращает отдельный отрезок по запрошенным ТС за период, по сути являющейся подмножеством информации GetTrips.
WCF
Определение:
Dictionary<Guid, RTripStage> GetStage(string schemaName, string deviceIDs, string SD, string ED, string stageName)
- schemaName – имя схемы
- deviceIDs – список идентификаторов ТС (их можно получить с помощью Service EnumDevices EnumDevices – поле ID в классе RGroupItem)
- SD / ED – соответственно начало и конец временного периода. Время местное по часовому поясу сервера.
- stageName - название отрезка (GeoFence, Motion, ...)
Результат:
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; }
public DateTime ED { get; set; }
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)
}
JSON
Вызов:
http://localhost:8300/GetStage/Demo/d090286c-1fd6-4ef2-ae44-8091d04408d1/20150509-0000/20150511-2359/Motion
Результат: скачать файл