提交1 bmad搭建与项目启动 - ok
This commit is contained in:
299
crop-x/apis/subModules/landInformation.js
Normal file
299
crop-x/apis/subModules/landInformation.js
Normal file
@@ -0,0 +1,299 @@
|
||||
/**
|
||||
* 地块信息管理系统 API 接口
|
||||
* Land Information System API
|
||||
*/
|
||||
|
||||
/**
|
||||
* 地块档案管理 API
|
||||
*/
|
||||
export const createFieldArchiveAPI = (api) => ({
|
||||
// 获取地块列表
|
||||
getFieldList: (params = {}) => {
|
||||
return api.get('/land/field/archive/list', { params });
|
||||
},
|
||||
|
||||
// 获取地块详情
|
||||
getFieldDetail: (fieldId) => {
|
||||
return api.get(`/land/field/archive/detail/${fieldId}`);
|
||||
},
|
||||
|
||||
// 创建地块档案
|
||||
createField: (fieldData) => {
|
||||
return api.post('/land/field/archive/create', fieldData);
|
||||
},
|
||||
|
||||
// 更新地块档案
|
||||
updateField: (fieldId, fieldData) => {
|
||||
return api.put(`/land/field/archive/update/${fieldId}`, fieldData);
|
||||
},
|
||||
|
||||
// 删除地块档案
|
||||
deleteField: (fieldId) => {
|
||||
return api.delete(`/land/field/archive/delete/${fieldId}`);
|
||||
},
|
||||
|
||||
// 地块分类标签
|
||||
getFieldCategories: () => {
|
||||
return api.get('/land/field/archive/categories');
|
||||
},
|
||||
|
||||
getFieldTags: () => {
|
||||
return api.get('/land/field/archive/tags');
|
||||
},
|
||||
|
||||
// 批量操作
|
||||
batchDeleteFields: (fieldIds) => {
|
||||
return api.post('/land/field/archive/batch-delete', { fieldIds });
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* 地块数字化地图管理 API
|
||||
*/
|
||||
export const createFieldMapAPI = (api) => ({
|
||||
// GIS地图管理
|
||||
getGISMapData: (params = {}) => {
|
||||
return api.get('/land/field/map/gis', { params });
|
||||
},
|
||||
|
||||
// 上传地块边界数据
|
||||
uploadFieldBoundary: (fieldId, boundaryData) => {
|
||||
return api.post(`/land/field/map/boundary/upload/${fieldId}`, boundaryData);
|
||||
},
|
||||
|
||||
// 数字化绘制与编辑
|
||||
saveFieldDrawing: (drawingData) => {
|
||||
return api.post('/land/field/map/drawing/save', drawingData);
|
||||
},
|
||||
|
||||
getFieldDrawing: (fieldId) => {
|
||||
return api.get(`/land/field/map/drawing/${fieldId}`);
|
||||
},
|
||||
|
||||
// 空间数据管理
|
||||
getSpatialData: (params = {}) => {
|
||||
return api.get('/land/field/map/spatial-data', { params });
|
||||
},
|
||||
|
||||
// 空间查询
|
||||
spatialQuery: (queryData) => {
|
||||
return api.post('/land/field/map/spatial-query', queryData);
|
||||
},
|
||||
|
||||
// 地块影像
|
||||
getSatelliteImages: (fieldId, params = {}) => {
|
||||
return api.get(`/land/field/map/satellite/${fieldId}`, { params });
|
||||
},
|
||||
|
||||
// 地图瓦片
|
||||
getMapTiles: (params = {}) => {
|
||||
return api.get('/land/field/map/tiles', { params });
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* 空间分析与决策支持 API
|
||||
*/
|
||||
export const createFieldAnalysisAPI = (api) => ({
|
||||
// 土壤基础数据
|
||||
getSoilData: (fieldId) => {
|
||||
return api.get(`/land/field/analysis/soil-data/${fieldId}`);
|
||||
},
|
||||
|
||||
updateSoilData: (fieldId, soilData) => {
|
||||
return api.put(`/land/field/analysis/soil-data/${fieldId}`, soilData);
|
||||
},
|
||||
|
||||
// 分层采样分析
|
||||
getLayerSampling: (fieldId, params = {}) => {
|
||||
return api.get(`/land/field/analysis/layer-sampling/${fieldId}`, { params });
|
||||
},
|
||||
|
||||
createLayerSampling: (samplingData) => {
|
||||
return api.post('/land/field/analysis/layer-sampling/create', samplingData);
|
||||
},
|
||||
|
||||
// 土壤质量评价
|
||||
getSoilQualityAssessment: (fieldId) => {
|
||||
return api.get(`/land/field/analysis/soil-quality/${fieldId}`);
|
||||
},
|
||||
|
||||
generateSoilQualityReport: (fieldId) => {
|
||||
return api.post(`/land/field/analysis/soil-quality/report/${fieldId}`);
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* 地块环境监测 API
|
||||
*/
|
||||
export const createFieldMonitoringAPI = (api) => ({
|
||||
// 气象监测
|
||||
getWeatherData: (params = {}) => {
|
||||
return api.get('/land/field/monitoring/weather', { params });
|
||||
},
|
||||
|
||||
getWeatherForecast: (fieldId, days = 7) => {
|
||||
return api.get(`/land/field/monitoring/forecast/${fieldId}`, { params: { days } });
|
||||
},
|
||||
|
||||
// 环境监测
|
||||
getEnvironmentalData: (fieldId, params = {}) => {
|
||||
return api.get(`/land/field/monitoring/environment/${fieldId}`, { params });
|
||||
},
|
||||
|
||||
// 传感器数据
|
||||
getSensorData: (fieldId, sensorType) => {
|
||||
return api.get(`/land/field/monitoring/sensors/${fieldId}`, { params: { type: sensorType } });
|
||||
},
|
||||
|
||||
// 监测历史数据
|
||||
getMonitoringHistory: (fieldId, params = {}) => {
|
||||
return api.get(`/land/field/monitoring/history/${fieldId}`, { params });
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* 地块适宜性评价 API
|
||||
*/
|
||||
export const createFieldSuitabilityAPI = (api) => ({
|
||||
// 多因子综合评价
|
||||
getComprehensiveEvaluation: (fieldId) => {
|
||||
return api.get(`/land/field/suitability/comprehensive/${fieldId}`);
|
||||
},
|
||||
|
||||
generateComprehensiveEvaluation: (fieldId, factors) => {
|
||||
return api.post(`/land/field/suitability/comprehensive/generate/${fieldId}`, { factors });
|
||||
},
|
||||
|
||||
// 自动化空间分析
|
||||
getBatchAnalysis: (params = {}) => {
|
||||
return api.get('/land/field/suitability/batch-analysis', { params });
|
||||
},
|
||||
|
||||
startBatchAnalysis: (analysisConfig) => {
|
||||
return api.post('/land/field/suitability/batch-analysis/start', analysisConfig);
|
||||
},
|
||||
|
||||
// 作物适配推荐
|
||||
getCropRecommendation: (fieldId) => {
|
||||
return api.get(`/land/field/suitability/crop/${fieldId}`);
|
||||
},
|
||||
|
||||
generateCropRecommendation: (fieldId, preferences) => {
|
||||
return api.post(`/land/field/suitability/crop/generate/${fieldId}`, preferences);
|
||||
},
|
||||
|
||||
// 权重配置
|
||||
getWeightConfig: () => {
|
||||
return api.get('/land/field/suitability/weight-config');
|
||||
},
|
||||
|
||||
updateWeightConfig: (configData) => {
|
||||
return api.put('/land/field/suitability/weight-config', configData);
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* 地块对比分析 API
|
||||
*/
|
||||
export const createFieldComparisonAPI = (api) => ({
|
||||
// 多维度指标看板
|
||||
getMultiIndicatorDashboard: (fieldIds, params = {}) => {
|
||||
return api.post('/land/field/comparison/indicator', { fieldIds, ...params });
|
||||
},
|
||||
|
||||
// 可视化图表分析
|
||||
getChartAnalysis: (comparisonData) => {
|
||||
return api.post('/land/field/comparison/chart', comparisonData);
|
||||
},
|
||||
|
||||
// 对比报告生成
|
||||
generateComparisonReport: (reportConfig) => {
|
||||
return api.post('/land/field/comparison/report/generate', reportConfig);
|
||||
},
|
||||
|
||||
getComparisonReport: (reportId) => {
|
||||
return api.get(`/land/field/comparison/report/${reportId}`);
|
||||
},
|
||||
|
||||
// 导出对比报告
|
||||
exportComparisonReport: (reportId, format = 'pdf') => {
|
||||
return api.get(`/land/field/comparison/report/export/${reportId}`, {
|
||||
params: { format },
|
||||
responseType: 'blob'
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* 地块风险预警 API
|
||||
*/
|
||||
export const createFieldRiskAPI = (api) => ({
|
||||
// 实时风险监测
|
||||
getRiskMonitoring: (fieldId) => {
|
||||
return api.get(`/land/field/risk/monitoring/${fieldId}`);
|
||||
},
|
||||
|
||||
// 获取风险等级
|
||||
getRiskLevel: (fieldId, riskType) => {
|
||||
return api.get(`/land/field/risk/level/${fieldId}`, { params: { type: riskType } });
|
||||
},
|
||||
|
||||
// 预警推送管理
|
||||
getWarningPushSettings: (fieldId) => {
|
||||
return api.get(`/land/field/risk/push-settings/${fieldId}`);
|
||||
},
|
||||
|
||||
updateWarningPushSettings: (fieldId, settings) => {
|
||||
return api.put(`/land/field/risk/push-settings/${fieldId}`, settings);
|
||||
},
|
||||
|
||||
// 预警记录
|
||||
getWarningHistory: (params = {}) => {
|
||||
return api.get('/land/field/risk/warning-history', { params });
|
||||
},
|
||||
|
||||
// 预警处置跟踪
|
||||
getDisposalTracking: (warningId) => {
|
||||
return api.get(`/land/field/risk/disposal/${warningId}`);
|
||||
},
|
||||
|
||||
updateDisposalStatus: (warningId, disposalData) => {
|
||||
return api.put(`/land/field/risk/disposal/${warningId}`, disposalData);
|
||||
},
|
||||
|
||||
// 创建预警规则
|
||||
createWarningRule: (ruleData) => {
|
||||
return api.post('/land/field/risk/warning-rules/create', ruleData);
|
||||
},
|
||||
|
||||
getWarningRules: (params = {}) => {
|
||||
return api.get('/land/field/risk/warning-rules', { params });
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* 导出地块信息管理系统的所有API
|
||||
*/
|
||||
export const landInformationAPI = (api) => ({
|
||||
// 地块档案
|
||||
archive: createFieldArchiveAPI(api),
|
||||
|
||||
// 地图管理
|
||||
map: createFieldMapAPI(api),
|
||||
|
||||
// 空间分析
|
||||
analysis: createFieldAnalysisAPI(api),
|
||||
|
||||
// 环境监测
|
||||
monitoring: createFieldMonitoringAPI(api),
|
||||
|
||||
// 适宜性评价
|
||||
suitability: createFieldSuitabilityAPI(api),
|
||||
|
||||
// 对比分析
|
||||
comparison: createFieldComparisonAPI(api),
|
||||
|
||||
// 风险预警
|
||||
risk: createFieldRiskAPI(api)
|
||||
});
|
||||
Reference in New Issue
Block a user