Kaynağa Gözat

add 地图区域管理

18339543638 4 yıl önce
ebeveyn
işleme
a94fcf9e27

+ 1 - 0
jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/entity/geo/GeoEntity.java

@@ -35,6 +35,7 @@ public class GeoEntity  implements Serializable{
     private Geometry geometry;
 
     @Column
+    @JsonCodec
     @NotNull(message = "实体属性不能为空", groups = CreateGroup.class)
     @Schema(description = "实体属性")
     @ColumnType(jdbcType = JDBCType.VARCHAR,javaType = Property.class)

+ 8 - 1
jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/GeoController.java

@@ -42,7 +42,14 @@ public class GeoController  implements ReactiveServiceCrudController<GeoEntity,
 
     @PostMapping("/_search/geo.json")
     public Mono<?> search(@RequestBody Mono<QueryParamEntity> filter){
-        return geoService.queryPager(filter);
+
+        return geoService.queryPager(filter)
+            .map(PagerResult::getData)
+            .map(result->{
+                GeoPayload geoPayload = new GeoPayload();
+                geoPayload.setFeatures(result);
+                return geoPayload;
+            });
     }
 
     @PostMapping("/geo.json")

+ 2 - 0
jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/request/GeoPayload.java

@@ -1,5 +1,6 @@
 package org.jetlinks.community.device.web.request;
 
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
 import lombok.Data;
 import org.jetlinks.community.device.entity.geo.GeoEntity;
 import java.util.*;
@@ -12,6 +13,7 @@ import java.util.*;
  */
 @Data
 public class GeoPayload {
+    @JsonIgnoreProperties(allowSetters = true)
     private String type;
     private List<GeoEntity> features;
 }