package com.skyversation.poiaddr.bean; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; import lombok.NoArgsConstructor; import java.util.List; @NoArgsConstructor @Data public class Zerenwangluo { @JsonProperty("objectIdFieldName") private String objectIdFieldName; @JsonProperty("displayField") private String displayField; @JsonProperty("globalIdFieldName") private String globalIdFieldName; @JsonProperty("geometryType") private String geometryType; @JsonProperty("geometry") private String geometry; @JsonProperty("spatialReference") private SpatialReferenceDTO spatialReference; @JsonProperty("fields") private List fields; @JsonProperty("features") private List features; @JsonProperty("baseLayerInfo") private BaseLayerInfoDTO baseLayerInfo; @JsonProperty("geosceneVersion") private String geosceneVersion; @NoArgsConstructor @Data public static class SpatialReferenceDTO { @JsonProperty("wkid") private Integer wkid; @JsonProperty("latestWkid") private Integer latestWkid; } @NoArgsConstructor @Data public static class BaseLayerInfoDTO { @JsonProperty("id") private Integer id; @JsonProperty("name") private String name; @JsonProperty("currentVersion") private String currentVersion; @JsonProperty("cimVersion") private String cimVersion; @JsonProperty("type") private String type; @JsonProperty("parentLayer") private ParentLayerDTO parentLayer; @JsonProperty("defaultVisibility") private Boolean defaultVisibility; @JsonProperty("minScale") private Integer minScale; @JsonProperty("maxScale") private Integer maxScale; @JsonProperty("canScaleSymbols") private Boolean canScaleSymbols; @JsonProperty("geometryType") private String geometryType; @JsonProperty("description") private String description; @JsonProperty("copyrightText") private String copyrightText; @JsonProperty("relationships") private List relationships; @JsonProperty("dataVersioned") private Boolean dataVersioned; @JsonProperty("isDataArchived") private Boolean isDataArchived; @JsonProperty("archivingInfo") private ArchivingInfoDTO archivingInfo; @JsonProperty("supportsStatistics") private Boolean supportsStatistics; @JsonProperty("supportsAdvancedQueries") private Boolean supportsAdvancedQueries; @JsonProperty("supportsCoordinatesQuantization") private Boolean supportsCoordinatesQuantization; @JsonProperty("supportsDatumTransformation") private Boolean supportsDatumTransformation; @JsonProperty("hasMetadata") private Boolean hasMetadata; @JsonProperty("extent") private ExtentDTO extent; @JsonProperty("sourceSpatialReference") private SourceSpatialReferenceDTO sourceSpatialReference; @JsonProperty("drawingInfo") private DrawingInfoDTO drawingInfo; @JsonProperty("hasAttachments") private Boolean hasAttachments; @JsonProperty("htmlPopupType") private String htmlPopupType; @JsonProperty("displayField") private String displayField; @JsonProperty("typeIdField") private String typeIdField; @JsonProperty("subtypeField") private String subtypeField; @JsonProperty("maxRecordCount") private Integer maxRecordCount; @JsonProperty("supportedQueryFormats") private String supportedQueryFormats; @JsonProperty("capabilities") private String capabilities; @JsonProperty("useStandardizedQueries") private Boolean useStandardizedQueries; @JsonProperty("geosceneVersion") private String geosceneVersion; @JsonProperty("objectIdField") private String objectIdField; @JsonProperty("geometryField") private GeometryFieldDTO geometryField; @JsonProperty("fields") private List fields; @NoArgsConstructor @Data public static class ParentLayerDTO { @JsonProperty("id") private Integer id; @JsonProperty("name") private String name; } @NoArgsConstructor @Data public static class ArchivingInfoDTO { @JsonProperty("supportsQueryWithHistoricMoment") private Boolean supportsQueryWithHistoricMoment; @JsonProperty("startArchivingMoment") private Integer startArchivingMoment; } @NoArgsConstructor @Data public static class ExtentDTO { @JsonProperty("spatialReference") private SpatialReferenceDTO spatialReference; @JsonProperty("xmin") private Double xmin; @JsonProperty("ymin") private Double ymin; @JsonProperty("xmax") private Double xmax; @JsonProperty("ymax") private Double ymax; @NoArgsConstructor @Data public static class SpatialReferenceDTO { @JsonProperty("wkid") private Integer wkid; @JsonProperty("latestWkid") private Integer latestWkid; } } @NoArgsConstructor @Data public static class SourceSpatialReferenceDTO { @JsonProperty("wkid") private Integer wkid; @JsonProperty("latestWkid") private Integer latestWkid; } @NoArgsConstructor @Data public static class DrawingInfoDTO { @JsonProperty("renderer") private RendererDTO renderer; @JsonProperty("scaleSymbols") private Boolean scaleSymbols; @JsonProperty("transparency") private Integer transparency; @JsonProperty("labelingInfo") private List labelingInfo; @NoArgsConstructor @Data public static class RendererDTO { @JsonProperty("type") private String type; @JsonProperty("symbol") private SymbolDTO symbol; @NoArgsConstructor @Data public static class SymbolDTO { @JsonProperty("type") private String type; @JsonProperty("style") private String style; @JsonProperty("color") private List color; @JsonProperty("outline") private OutlineDTO outline; @NoArgsConstructor @Data public static class OutlineDTO { @JsonProperty("type") private String type; @JsonProperty("style") private String style; @JsonProperty("color") private List color; @JsonProperty("width") private Double width; } } } @NoArgsConstructor @Data public static class LabelingInfoDTO { @JsonProperty("expression") private String expression; } } @NoArgsConstructor @Data public static class GeometryFieldDTO { @JsonProperty("domain") private Object domain; @JsonProperty("length") private Integer length; @JsonProperty("name") private String name; @JsonProperty("alias") private Object alias; @JsonProperty("type") private String type; } @NoArgsConstructor @Data public static class FieldsDTO { @JsonProperty("domain") private Object domain; @JsonProperty("length") private Integer length; @JsonProperty("name") private String name; @JsonProperty("alias") private Object alias; @JsonProperty("type") private String type; } } @NoArgsConstructor @Data public static class FieldsDTO { @JsonProperty("length") private Integer length; @JsonProperty("name") private String name; @JsonProperty("alias") private Object alias; @JsonProperty("type") private String type; } @NoArgsConstructor @Data public static class FeaturesDTO { @JsonProperty("attributes") private AttributesDTO attributes; @JsonProperty("geometry") private GeometryDTO geometry; @NoArgsConstructor @Data public static class AttributesDTO { @JsonProperty("工作站联系人") private String 工作站联系人; @JsonProperty("网格编码") private String 网格编码; @JsonProperty("特注") private Object 特注; @JsonProperty("Shape__Length") private Double shapeLength; // @JsonProperty("备注") // private String 备注; // @JsonProperty("所属区县") // private String 所属区县; // @JsonProperty("所属街道") // private String 所属街道; @JsonProperty("所属大居") private Object 所属大居; // @JsonProperty("坐标x") // private String 坐标x; // @JsonProperty("坐标y") // private String 坐标y; @JsonProperty("联系电话") private String 联系电话; @JsonProperty("Shape__Area") private Double shapeArea; @JsonProperty("地址") private String 地址; @JsonProperty("四至范围") private String 四至范围; @JsonProperty("街道代码") private String 街道代码; // @JsonProperty("objectid") // private Integer objectid; @JsonProperty("面积") private Double 面积; @JsonProperty("网格名称") private String 网格名称; } @NoArgsConstructor @Data public static class GeometryDTO { @JsonProperty("rings") private List>> rings; } } }