AutoGRAPH.NET Service GetTripTables — различия между версиями

Материал из TK
Перейти к: навигация, поиск
(WCF)
(JSON)
Строка 60: Строка 60:
 
Вызов:
 
Вызов:
 
<pre>
 
<pre>
http://localhost:8300/GetTripTables/DemoCEBIT/d090286c-1fd6-4ef2-ae44-8091d04408d1/20151006/20151007-2359/Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel
+
http://localhost:8300/GetTripTables/DemoCEBIT/d090286c-1fd6-4ef2-ae44-8091d04408d1/20151006/20151007-2359/Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel/0
http://localhost:8300/GetTripTables?schemaID=DemoCEBIT&IDs=d090286c-1fd6-4ef2-ae44-8091d04408d1&SD=20151006&ED=20151007-2359&onlineParams=Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel
+
http://localhost:8300/GetTripTables?schemaID=DemoCEBIT&IDs=d090286c-1fd6-4ef2-ae44-8091d04408d1&SD=20151006&ED=20151007-2359&onlineParams=Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel&tripSplitterIndex=0
 
</pre>
 
</pre>
   

Версия 13:46, 3 декабря 2015

Возвращает табличные данные по запрошенным ТС за период.

WCF

Определение:

Dictionary<Guid, RTripTables> GetTripTables(string schemaName, string deviceIDs, string SD, string ED, string onlineParams, int tripSplitterIndex)
  • schemaName – имя схемы
  • deviceIDs – список идентификаторов ТС (их можно получить с помощью EnumDevices – поле ID в классе RGroupItem)
  • SD / ED – соответственно начало и конец временного периода. Время местное по часовому поясу сервера.
  • 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; }      // массив данных по каждому параметру
    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 object[] Values { get; set; }        // значения, тип зависит от ReturnType
}

public enum AddValueType : int
{
    Curr = 0,    // текущее значение (например, уровень топлива)
    First = 1,   // первое значение в отрезке/рейса (например, время начала рейса или отрезка)
    Last = 2,    // последнее значение в отрезке/рейса (например, время конца рейса или отрезка)
    Diff = 3     // разница между точками (например расход топлива за рейс)
}

JSON

Вызов:

http://localhost:8300/GetTripTables/DemoCEBIT/d090286c-1fd6-4ef2-ae44-8091d04408d1/20151006/20151007-2359/Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel/0
http://localhost:8300/GetTripTables?schemaID=DemoCEBIT&IDs=d090286c-1fd6-4ef2-ae44-8091d04408d1&SD=20151006&ED=20151007-2359&onlineParams=Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel&tripSplitterIndex=0

Дата и время задаются в формате yyyyMMdd или yyyyMMdd-HHmm
Если ID'ов больше одного - идентификаторы указывается через запятую.

Результат: скачать файл

AutoGRAPHNET Service GetTripTables.png