feiyu02
2025-05-08 9a9a27f185bc0cf9dc0001cfc6839e6d13dbccd9
src/main/kotlin/com/flightfeather/uav/lightshare/service/SatelliteTelemetryService.kt
@@ -2,6 +2,7 @@
import com.flightfeather.uav.common.exception.BizException
import com.flightfeather.uav.domain.entity.GridAod
import com.flightfeather.uav.domain.entity.GridAodDetail
import com.flightfeather.uav.domain.entity.GridCell
import com.flightfeather.uav.domain.entity.GridData
import com.flightfeather.uav.domain.entity.GridDataDetail
@@ -20,7 +21,7 @@
 */
interface SatelliteTelemetryService {
    fun fetchGridGroup(areaVo: AreaVo, page: Int?, perPage: Int?): Pair<DataHead, List<GridGroup?>>
    fun fetchGridGroup(areaVo: AreaVo, type: String?, page: Int?, perPage: Int?): Pair<DataHead, List<GridGroup?>>
    fun deleteGridGroup(groupId: Int)
@@ -28,11 +29,19 @@
    fun fetchGridData(groupId: Int, dataTime: LocalDateTime?, type: Int?): List<GridData?>
    fun fetchGridData(gridData: GridData): List<GridData?>
    fun deleteGridData(dataId: Int): Boolean
    fun fetchGridDataDetail(dataId: Int, groupId: Int?, cellId: Int?): List<GridDataDetail?>
    fun createGridDataAndDataDetail(
        groupId: Int, dataTime: LocalDateTime?, gridDataDetail: List<GridDataDetail>): Boolean
    /**
     * 数据融合
     */
    // Fixme 2025.3.28: 需要和[SatelliteDataCalculateService.mixUnderwayGridData]函数合并
    fun mixGridData(dataIdList: List<Int>): List<GridData?>
    @Throws(BizException::class)
@@ -40,16 +49,14 @@
    fun downloadTemplate(response: HttpServletResponse): Boolean
    fun fetchGridAod(groupId: Int, dataTime: LocalDateTime?): List<GridAod?>
    @Throws(BizException::class)
    fun importGridAOD(groupId: Int, dataTime: LocalDateTime?, update: Boolean, file: MultipartFile): GridDataImportResult?
    fun downloadAODTemplate(response: HttpServletResponse): Boolean
    /**
     * 根据卫星遥测网格的中心坐标点,计算网格4个顶点坐标
     * @param groupId 网格组索引id
     */
    fun calGridVertex(groupId: Int): List<GridCell?>
    /**AOD数据相关**************************************************************/
    fun fetchGridAod(groupId: Int, dataTime: LocalDateTime?): List<GridAod?>
    fun fetchGridAODDetail(aodId: Int, groupId: Int?, cellId: Int?): List<GridAodDetail?>
}