AutoGRAPH.NET Service EnumDrivers
Возвращает список водителей и групп в указанной схеме (аналогично EnumDevices или EnumGeoFences). Иерархия собирается путем сопоставления ID ⇔ ParentID и начинается с верхнего уровня, у которого ParentID==null.
JSON
Вызов:
http://localhost/ServiceJSON/EnumDrivers?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef102
Параметр schemaID – ID схемы, которые возвращаются EnumSchemas.
Посмотреть пример на Kendo UI Dojo
WCF
Определение:
REnumDevices EnumDrivers(Guid schemaID)
Результат:
public class REnumDrivers { public Guid ID { get; set; } // идентификатор схемы public RGroupItem[] Groups { get; set; } // все группы водителей в схеме public RDriverItem[] Items { get; set; } // все водители в схеме public RVirtualTree[] VirtualTrees { get; set; } // виртуальные деревья в схеме для объектов типа "водители" public Guid? Assigned { get; set; } // назначенное аутентифицированному пользователю виртуальное дерево из списка VirtualTrees } public class RGroupItem { public Guid ID { get; set; } // уникальный ID объекта в схеме public Guid? ParentID { get; set; } // ID-родительской группы public string Name { get; set; } // название группы } public class RDriverItem : RGroupItem { public string DriverID { get; set; } // номер карты водителя public RProperty[] Properties { get; set; } // список свойств водителя (включая унаследованные) public string Image { get; set; } // имя файла с изображением водителя (.png) } 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, Driver = 16, Implement = 17, Task = 18, CheckDays = 19 } public class RVirtualTree { public Guid ID { get; set; } public string Name { get; set; } }