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

Материал из TK
Перейти к: навигация, поиск
 
(не показано 5 промежуточных версий 1 участника)
Строка 1: Строка 1:
 
Возвращает список инструментов и групп в указанной схеме (аналогично [[AutoGRAPH.NET_Service_EnumDevices|EnumDevices]]). Иерархия собирается путем сопоставления ID ⇔ ParentID и начинается с верхнего уровня, у которого ParentID=null.
 
Возвращает список инструментов и групп в указанной схеме (аналогично [[AutoGRAPH.NET_Service_EnumDevices|EnumDevices]]). Иерархия собирается путем сопоставления ID ⇔ ParentID и начинается с верхнего уровня, у которого ParentID=null.
  +
  +
== JSON ==
  +
  +
Вызов:
  +
<pre>http://localhost/ServiceJSON/EnumImplements?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef1022</pre>
   
 
== WCF ==
 
== WCF ==
Определение:<pre>REnumGeofences EnumImplements(string schemaID)</pre>
+
Определение:<pre>REnumGeofences EnumImplements(Guid schemaID)</pre>
   
 
Результат:
 
Результат:
<pre>public class REnumGeofences {
+
<pre>public class REnumImplements {
 
public string ID { get; set; } &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // идентификатор схемы
 
public string ID { get; set; } &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // идентификатор схемы
public RGroupItem[] Groups { get; set; } // все группы геозон в схеме
+
public RGroupItem[] Groups { get; set; } // все группы инструметов в схеме
public RImplementItem[] Items { get; set; } // все геозоны в схеме
+
public RImplementItem[] Items { get; set; } // все инструменты в схеме
  +
public RVirtualTree[] VirtualTrees { get; set; } // виртуальные деревья в схеме для объектов типа "инструменты"
  +
public Guid? &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Assigned &nbsp; &nbsp; { get; set; } // назначенное аутентифицированному пользователю виртуальное дерево из списка VirtualTrees
 
}
 
}
   
 
public class RGroupItem {
 
public class RGroupItem {
public Guid ID { get; set; } // уникальный ID геозоны в схеме
+
public Guid ID { get; set; } // уникальный ID инструмента в схеме
 
public Guid? ParentID { get; set; } // ID родительской группы
 
public Guid? ParentID { get; set; } // ID родительской группы
 
public string Name { get; set; } // название группы
 
public string Name { get; set; } // название группы
 
}
 
}
   
public class RImplementItem : RGroupItem {
+
public class RImplementItem&nbsp;: RGroupItem {
  +
&nbsp; public string ImplementID { get;set; } // идентификатор инструмента
public RProperty[] Properties { get; set; } // список свойств геозоны (включая унаследованные)
 
  +
public RProperty[] Properties { get; set; } // список свойств инструмента (включая унаследованные)
 
public string Image { get; set; }
 
public string Image { get; set; }
 
}
 
}
Строка 53: Строка 61:
 
CheckDays = 19
 
CheckDays = 19
 
}
 
}
</pre>
 
   
  +
public class RVirtualTree
== JSON ==
 
  +
{
 
  +
&nbsp; &nbsp; public Guid &nbsp; ID &nbsp; { get; set; }
Вызов:
 
  +
&nbsp; &nbsp; public string Name { get; set; }
<pre>http://localhost:8300/EnumImplements?schemaID=Demo
 
</pre>
+
}</pre>

Текущая версия на 10:07, 18 июня 2020

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

JSON

Вызов:

http://localhost/ServiceJSON/EnumImplements?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef1022

WCF

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

REnumGeofences EnumImplements(Guid schemaID)

Результат:

public class REnumImplements {
  public string ID { get; set; }           // идентификатор схемы
  public RGroupItem[] Groups { get; set; } // все группы инструметов в схеме
  public RImplementItem[] 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 RImplementItem : RGroupItem {
  public string ImplementID { get;set; }      // идентификатор инструмента
  public RProperty[] Properties { get; set; } // список свойств инструмента (включая унаследованные)
  public string Image { 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,
    Driver = 16,
    Implement = 17,
    Task = 18,
    CheckDays = 19
}

public class RVirtualTree
{
    public Guid   ID   { get; set; }
    public string Name { get; set; }
}