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

Материал из TK
Перейти к: навигация, поиск
(WCF)
Строка 20: Строка 20:
   
 
public class RGeofenceItem : RGroupItem {
 
public class RGeofenceItem : RGroupItem {
  +
public RProperty[] Properties { get; set; } // список свойств геозоны (включая унаследованные)
  +
}
   
  +
public class RProperty
  +
{
  +
public bool Inherited { get; set; } // унаследованное (true) или собственное (false) свойство
  +
public RPropType Type { get; set; } // тип свойства
  +
public string Name { get; set; } // название свойства
  +
public object Value { get; set; } // значение (типа свойства зависит от поля Type)
  +
}
  +
  +
public enum RPropType : int // типы свойств
  +
{
  +
String = 0,
  +
Number = 1,
  +
Date = 2,
  +
TareTable = 3,
  +
Time = 4,
  +
Memo = 5,
  +
Color = 6,
  +
Bool = 7,
  +
Radio = 8,
  +
Image = 9,
  +
File = 10,
  +
ProgressBar = 11,
  +
Combobox = 12,
  +
FileLink = 13,
  +
Device = 14,
  +
GeoFence = 15
 
}
 
}
 
</pre>
 
</pre>

Версия 15:40, 27 октября 2015

Возвращает список геозон и групп в указанной схеме (аналогично EnumDevices). Иерархия собирается путем сопоставления ID ⇔ ParentID и начинается с верхнего уровня, у которого ParentID=null.

WCF

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

REnumDevices EnumDevices(string schemaName)

Результат:

public class REnumGeofences {
  public RGroupItem[] Groups { get; set; } // все группы геозон в схеме
  public RGeofenceItem[] Items { get; set; } // все геозоны в схеме
}

public class RGroupItem {
  public Guid ID { get; set; }          // уникальный ID геозоны в схеме
  public Guid? ParentID { get; set; }   // ID родительской группы
  public string Name { get; set; }      // название группы
}

public class RGeofenceItem : RGroupItem {
  public RProperty[] Properties { get; set; } // список свойств геозоны (включая унаследованные)
}

public class RProperty
{
    public bool Inherited { get; set; }     // унаследованное (true) или собственное (false) свойство
    public RPropType Type { get; set; }     // тип свойства
    public string Name { get; set; }        // название свойства
    public object Value { get; set; }       // значение (типа свойства зависит от поля Type)
}

public enum RPropType : int                 // типы свойств
{
    String = 0,
    Number = 1,
    Date = 2,
    TareTable = 3,
    Time = 4,
    Memo = 5,
    Color = 6,
    Bool = 7,
    Radio = 8,
    Image = 9,
    File = 10,
    ProgressBar = 11,
    Combobox = 12,
    FileLink = 13,
    Device = 14,
    GeoFence = 15
}

JSON

Вызов:

http://localhost:8300/EnumGeoFences/Demo

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

AutoGRAPHNET Service EnumGeoFences.png