// 地块信息管理系统类型定义 // 地块基本信息 export interface Field { id: string; code: string; // 地块编号 name: string; // 地块名称 area: number; // 面积(亩) perimeter: number; // 周长(米) // 位置信息 location: string; // 所在位置 coordinates: GeoCoordinate[]; // 边界坐标点 centerPoint: { lat: number; lng: number; }; // 土地属性 soilType: SoilType; // 土壤类型 landUseType: LandUseType; // 土地利用类型 plantingMode: PlantingMode; // 种植模式 // 权属信息 owner: string; // 权属人 ownerPhone?: string; // 联系电话 contractStartDate?: string; // 承包开始日期 contractEndDate?: string; // 承包结束日期 contractPeriod?: number; // 承包期限(年) certificateNumber?: string; // 确权证号 // 标签和分类 tags: string[]; // 标签 category?: string; // 分类 // 附件 photos: string[]; // 照片 documents: FieldDocument[]; // 文档(合同扫描件等) // 状态 status: 'normal' | 'pending'; // 使用状态:正常、待确认 // 元数据 createdAt: string; updatedAt: string; createdBy: string; currentVersion: number; // 当前版本号 // 额外属性 elevation?: number; // 海拔(米) slope?: number; // 坡度(度) aspect?: string; // 坡向 waterSource?: string; // 水源情况 remarks?: string; // 备注 } // 地理坐标 export interface GeoCoordinate { lat: number; lng: number; } // 土壤类型 export type SoilType = | 'sandy' // 沙土 | 'loamy' // 壤土 | 'clay' // 粘土 | 'silt' // 淤泥土 | 'peat' // 泥炭土 | 'saline' // 盐碱土 | 'other'; // 其他 // 土地利用类型 export type LandUseType = | 'farmland' // 耕地 | 'garden' // 园地 | 'forestland' // 林地 | 'grassland' // 草地 | 'other'; // 其他 // 种植模式 export type PlantingMode = | 'open-field' // 露地 | 'greenhouse' // 大棚 | 'orchard' // 果园 | 'paddy' // 水田 | 'dryland'; // 旱地 // 灌溉方式 export type IrrigationType = | 'drip' // 滴灌 | 'sprinkler' // 喷灌 | 'flood' // 漫灌 | 'micro-sprinkler' // 微喷 | 'none'; // 无灌溉 // 地块文档 export interface FieldDocument { id: string; name: string; type: 'contract' | 'certificate' | 'permit' | 'other'; // 文档类型 url: string; size: number; // 文件大小(字节) uploadedAt: string; uploadedBy: string; } // 地块版本历史 export interface FieldVersion { id: string; fieldId: string; version: number; changeType: 'create' | 'update-boundary' | 'update-attributes' | 'merge' | 'split'; changes: FieldVersionChange[]; coordinates?: GeoCoordinate[]; // 历史边界 attributes?: Partial; // 历史属性 changedBy: string; changedAt: string; remarks?: string; } // 版本变更详情 export interface FieldVersionChange { field: string; // 字段名 oldValue: any; newValue: any; } // 地块标签 export interface FieldTag { id: string; name: string; color: string; category?: string; // 标签分类 description?: string; createdAt: string; } // 地块分类 export interface FieldCategory { id: string; name: string; parentId?: string; children?: FieldCategory[]; icon?: string; color?: string; } // 地图图层类型 export type MapLayerType = | 'satellite' // 卫星影像 | 'street' // 电子地图 | 'terrain' // 地形图 | 'hybrid'; // 混合 // 绘制工具类型 export type DrawToolType = | 'none' // 无 | 'point' // 点 | 'line' // 线 | 'polygon' // 多边形 | 'rectangle' // 矩形 | 'circle'; // 圆形 // 编辑模式 export type EditMode = | 'view' // 查看 | 'draw' // 绘制 | 'edit' // 编辑 | 'split' // 分割 | 'merge'; // 合并 // GIS文件格式 export type GISFileFormat = 'kml' | 'shp' | 'geojson' | 'gpx'; // 空间查询类型 export type SpatialQueryType = | 'point-in-polygon' // 点在面内 | 'polygon-intersect' // 面相交 | 'polygon-adjacent' // 面相邻 | 'buffer'; // 缓冲区 // 遥感影像数据 export interface SatelliteImage { id: string; fieldId: string; date: string; // 影像日期 source: string; // 数据源(如Landsat, Sentinel等) cloudCover: number; // 云量百分比 resolution: number; // 分辨率(米) url: string; // 影像URL thumbnail?: string; // 缩略图 ndvi?: number; // 归一化植被指数 evi?: number; // 增强型植被指数 } // 地块统计查询条件 export interface FieldQueryCondition { soilType?: SoilType[]; plantingMode?: PlantingMode[]; minArea?: number; maxArea?: number; tags?: string[]; owner?: string; status?: Field['status'][]; } // 地块统计结果 export interface FieldStatistics { totalCount: number; totalArea: number; averageArea: number; bySoilType: Record; byPlantingMode: Record; byStatus: Record; }