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

Материал из TK
Перейти к: навигация, поиск
 
(не показано 7 промежуточных версий 1 участника)
Строка 1: Строка 1:
 
Возвращает информацию о геозонах (списки точки для полигонов, радиус точки, название, ....)
 
Возвращает информацию о геозонах (списки точки для полигонов, радиус точки, название, ....)
  +
  +
== JSON ==
  +
Вызов:<pre>http://localhost/ServiceJSON/GetGeofences?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef1022&IDs=c39410d2-db39-439f-9110-f59e70daa5a8,63dd6102-dfb2-4fe4-9962-5f05adda0551,312050df-4c41-4d0b-ad33-eb6b83838fae
  +
</pre>
  +
  +
Результат: [[Media:GetGeofences-result.json.txt|скачать файл]]
  +
  +
[[File:AutoGRAPHNET Service GetGeofences.png|RTENOTITLE]]
   
 
== WCF ==
 
== WCF ==
   
Определение:&nbsp;<syntaxhighlight lang="csharp">
+
Определение:
Dictionary<Guid, RGeoFence> GetGeofences(string schemaName, Guid[] IDs)
+
<pre>Dictionary<Guid, RGeoFence> GetGeofences(string schemaID, Guid[] IDs)</pre>
</syntaxhighlight>
 
   
*если ID принадлежит группе - возвращаются ВСЕ её вложенные геозоны, сама группа в результирующий набор не попадает
+
*если ID принадлежит группе - возвращаются ВСЕ её вложенные геозоны с полной иерархией всех нижевложенных групп, сами группы&nbsp;в результирующий набор не попадает
*если ID принадлежит элементу - возвращается информация по нему. Допускается смешивание ID элементов разных типов в одном запросе.
+
*если ID принадлежит элементу - возвращается информация по нему. Допускается смешивание ID элементов разных типов (групп и элементов) в одном запросе.
   
Результат:&nbsp;<syntaxhighlight lang="csharp">
+
Результат:
public class RGeoFence
+
<pre>public class RGeoFence
 
{
 
{
 
public Guid ID { get; set; } // ID геозоны
 
public Guid ID { get; set; } // ID геозоны
  +
public Guid? ParentID { get; set; } // ID родительской группы
 
public string Name { get; set; } // название геозоны
 
public string Name { get; set; } // название геозоны
 
public string ImageName { get; set; } // имя файла изображения
 
public string ImageName { get; set; } // имя файла изображения
   
  +
&nbsp; public int Fill { get; set; } // RGBA цвет заливки
  +
&nbsp; public int Line { get; set; } // RGBA цвет линии
 
public bool IsPolygon { get; set; } // true, если полигон; false, если точка
 
public bool IsPolygon { get; set; } // true, если полигон; false, если точка
 
public double R { get; set; } // радиус точки в метрах. Для полигонов всегда 0
 
public double R { get; set; } // радиус точки в метрах. Для полигонов всегда 0
 
public double[] Lat { get; set; } // массив широт точек
 
public double[] Lat { get; set; } // массив широт точек
 
public double[] Lng { get; set; } // массив долгот точек
 
public double[] Lng { get; set; } // массив долгот точек
  +
  +
public RGeoFenceHole[] Holes { get; set; } // вырезы в геозоне. Если NULL - вырезов в геозоне нет.
 
}
 
}
</syntaxhighlight>
 
   
  +
public class RGeoFenceHole
*количество широт и долгот всегда равно
 
  +
{
*если IsPolygon==true - массив Lat/Lng содержит три или более элементов. Если IsPolygon==false - массив содержит один элемент.
 
  +
&nbsp; &nbsp; public double[] Lat { get; set; } // массив широт
  +
&nbsp; &nbsp; public double[] Lng { get; set; } // массив долгот
  +
}
   
  +
</pre>
== JSON ==
 
   
  +
*количество широт и долгот всегда равно
Вызов:&nbsp;<pre>http://localhost:8300/GetGeofences/Demo/c39410d2-db39-439f-9110-f59e70daa5a8,63dd6102-dfb2-4fe4-9962-5f05adda0551,312050df-4c41-4d0b-ad33-eb6b83838fae</pre>
 
  +
*если IsPolygon==true - массив Lat/Lng содержит три или более элементов. Если IsPolygon==false - массив содержит один элемент.
 
  +
*Fill и Color хранят RGBA значение цвета
Результат:&nbsp;[[GetGeofences-result.json.txt|скачать файл]]
 
 
[[File:AutoGRAPHNET Service GetGeofences.png]]
 

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

Возвращает информацию о геозонах (списки точки для полигонов, радиус точки, название, ....)

JSON

Вызов:

http://localhost/ServiceJSON/GetGeofences?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef1022&IDs=c39410d2-db39-439f-9110-f59e70daa5a8,63dd6102-dfb2-4fe4-9962-5f05adda0551,312050df-4c41-4d0b-ad33-eb6b83838fae

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

RTENOTITLE

WCF

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

Dictionary<Guid, RGeoFence> GetGeofences(string schemaID, Guid[] IDs)
  • если ID принадлежит группе - возвращаются ВСЕ её вложенные геозоны с полной иерархией всех нижевложенных групп, сами группы в результирующий набор не попадает
  • если ID принадлежит элементу - возвращается информация по нему. Допускается смешивание ID элементов разных типов (групп и элементов) в одном запросе.

Результат:

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

   public int Fill { get; set; }          // RGBA цвет заливки
   public int Line { get; set; }          // RGBA цвет линии
   public bool IsPolygon { get; set; }    // true, если полигон; false, если точка
   public double R { get; set; }          // радиус точки в метрах. Для полигонов всегда 0
   public double[] Lat { get; set; }      // массив широт точек
   public double[] Lng { get; set; }      // массив долгот точек

   public RGeoFenceHole[] Holes { get; set; } // вырезы в геозоне. Если NULL - вырезов в геозоне нет.
}

public class RGeoFenceHole
{
    public double[] Lat { get; set; } // массив широт
    public double[] Lng { get; set; } // массив долгот
}

  • количество широт и долгот всегда равно
  • если IsPolygon==true - массив Lat/Lng содержит три или более элементов. Если IsPolygon==false - массив содержит один элемент.
  • Fill и Color хранят RGBA значение цвета