feiyu02
13 小时以前 4a976d3763be8a7bed743faf24abf2718ae18e31
src/main/kotlin/com/flightfeather/uav/lightshare/service/DataAnalysisService.kt
@@ -52,6 +52,8 @@
     */
    fun generateMissionSummary(startTime: Date, endTime: Date, areaVo: AreaVo): MissionSummary.Summary
    fun generateMissionSummary(missionCode: String): MissionSummary.Summary
    /**
     * 生成走航任务清单(按时间和区域筛选)
     * 根据时间范围和地理区域查询走航任务,并生成包含统计信息的任务列表
@@ -83,18 +85,40 @@
     * @param areaVo 区域参数
     * @return 任务详情列表,每个元素包含任务完整信息、场景数据和统计结果
     */
    fun generateMissionDetail(startTime: Date, endTime: Date, areaVo: AreaVo): List<MissionDetail>
    fun generateMissionDetail(startTime: Date, endTime: Date, areaVo: AreaVo,granularity: String?): List<MissionDetail>
    /**
     * 生成走航任务详情(按任务编号筛选)
     * 根据任务编号查询并生成详细的任务报告,包含任务完整信息、场景数据和统计结果
     * @param missionCode 任务编号,用于唯一标识特定的走航任务
     * @param granularity 数据颗粒度,可选值为SECOND, MINUTE, HOUR, 默认MINUTE
     * @return 任务详情对象,包含任务完整信息、场景数据和统计结果
     */
    fun generateMissionDetail(missionCode: String, granularity: String?): MissionDetail
    /**
     * 获取走航任务详情(直接处理任务数据)
     * 处理已有的任务、污染线索和实时数据,生成详细任务报告
     * @param keyScenes 关键场景列表,用于分析走航是否经过该区域
     * @param missionCluesData 包含任务、污染线索和实时数据的Triple列表
     * @param granularity 数据颗粒度,可选值为SECOND, MINUTE, HOUR, 默认MINUTE
     * @return 任务详情列表
     */
    fun generateMissionDetail(keyScenes: List<SceneInfo?>, missionCluesData: List<Triple<Mission, List<PollutedClue?>, List<BaseRealTimeData>>>): List<MissionDetail>
    fun generateMissionDetail(
        keyScenes: List<SceneInfo?>,
        missionCluesData: List<Triple<Mission, List<PollutedClue?>, List<BaseRealTimeData>>>,
        granularity: String,
    ): List<MissionDetail>
    fun generateClueByRiskArea(startTime: Date, endTime: Date, areaVo: AreaVo): List<MissionRiskArea.ClueByArea>
    fun generateClueByRiskArea(
        startTime: Date,
        endTime: Date,
        areaVo: AreaVo,
        removeOtherDistrict: Boolean,
        removeNoPollutedSource: Boolean,
    ): List<MissionRiskArea.ClueByArea>
    fun generateClueByRiskArea(missionCode: String): List<MissionRiskArea.ClueByArea>
    fun generateClueByRiskArea(keyScenes: List<SceneInfo?>, pollutedClues: List<PollutedClue?>): List<MissionRiskArea.ClueByArea>