liusuyi
2025-11-20 c49aebafe55bca031c0c4f5c5fd45dad9ff46f32
ard-system/src/main/java/com/ard/data/noflyzone/domain/ArdNoFlyZone.java
@@ -1,17 +1,22 @@
package com.ard.data.noflyzone.domain;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
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.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.util.List;
/**
 * 禁飞区管理对象 ard_no_fly_zone
 * 
 * @author ruoyi
 * @author ard
 * @date 2025-10-14
 */
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
@@ -29,4 +34,25 @@
    /** 数据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;
    }
}