package com.ard.data.noflyzone.domain;
|
|
import com.ard.common.annotation.Excel;
|
import com.ard.common.core.domain.BaseEntity;
|
import com.ard.data.noflyzone.utils.NoFlyZoneUtils;
|
import lombok.AllArgsConstructor;
|
import lombok.Data;
|
import lombok.NoArgsConstructor;
|
|
import java.util.List;
|
|
/**
|
* 禁飞区管理对象 ard_no_fly_zone
|
*
|
* @author ard
|
* @date 2025-10-14
|
*/
|
@Data
|
@NoArgsConstructor
|
@AllArgsConstructor
|
public class ArdNoFlyZone extends BaseEntity
|
{
|
private static final long serialVersionUID = 1L;
|
|
/** 主键 */
|
private String id;
|
|
/** 禁飞区名称 */
|
@Excel(name = "禁飞区名称")
|
private String name;
|
|
/** 数据json */
|
@Excel(name = "数据json")
|
private FeatureCollection geojson;
|
|
/** 禁飞区外接矩形 */
|
private ArdNoFlyBox ardNoFlyBox;
|
|
private List<Vertex> vertices;
|
|
// 懒加载 / 动态计算
|
public ArdNoFlyBox getArdNoFlyBox() {
|
if (ardNoFlyBox == null && geojson != null) {
|
ardNoFlyBox = NoFlyZoneUtils.getArdNoFlyBox(geojson);
|
}
|
return ardNoFlyBox;
|
}
|
|
public List<Vertex> getVertices() {
|
if (vertices == null && geojson != null) {
|
vertices = NoFlyZoneUtils.toVertexes(geojson);
|
}
|
return vertices;
|
}
|
|
}
|