From 2de612e9b260df2e76d4dd620ca739aa3b6e8c57 Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期一, 25 八月 2025 16:07:16 +0800 Subject: [PATCH] 2025.8.25 1. 添加走航季度报告相关统计功能(待完成) --- src/main/kotlin/com/flightfeather/uav/model/epw/EPWModel.kt | 46 +++++++++++++++++++++------------------------- 1 files changed, 21 insertions(+), 25 deletions(-) diff --git a/src/main/kotlin/com/flightfeather/uav/model/epw/EPWModel.kt b/src/main/kotlin/com/flightfeather/uav/model/epw/EPWModel.kt index be8689e..c096d17 100644 --- a/src/main/kotlin/com/flightfeather/uav/model/epw/EPWModel.kt +++ b/src/main/kotlin/com/flightfeather/uav/model/epw/EPWModel.kt @@ -1,7 +1,8 @@ package com.flightfeather.uav.model.epw -import com.flightfeather.uav.domain.entity.Company import com.flightfeather.uav.lightshare.bean.DataVo +import com.flightfeather.uav.model.* +import com.flightfeather.uav.socket.eunm.FactorType import java.math.BigDecimal /** @@ -9,30 +10,25 @@ * 鏍规嵁璧拌埅鐩戞祴鏁版嵁锛岀粨鍚堥閫熴�侀鍚戙�佺洃娴嬬偣涓庝紒涓氱殑鐩稿浣嶇疆绛夊洜绱狅紝璁$畻浼佷笟瀵圭洃娴嬪尯鍩熺殑褰卞搷绋嬪害 * @author riku */ -class EPWModel { +class EPWModel : BaseModel<DataVo, BaseSOP>() { -// private val windDirWeight = WindDirWeight() -// private val windDisWeight = WindDisWeight() - - private lateinit var datas: List<DataVo> - private lateinit var sources: List<Company> - - fun execute() { - datas.forEach d@{d -> - if (d.lng == null || d.lng == 0.0 || d.lat == null || d.lat == 0.0) { - return@d - } - - sources.forEach s@ { s -> - // 缁忕含搴︽湁鏁堟�у垽鏂� - if (s.ciLongitude == null || s.ciLongitude == BigDecimal(0) || s.ciLatitude == null || s.ciLatitude == BigDecimal(0)) { - return@s - } - - val p1 = Pair(d.lng!!, d.lat!!) - val p2 = Pair(s.ciLongitude.toDouble(), s.ciLatitude.toDouble()) -// windDirWeight.getWeight(p1, p2) - } + // 榛樿鐩戞祴鐐圭粡绾害 + var defaultLocation: Pair<Double, Double>? = null + set(value) { + weights = listOf(WindDirWeight(value), WindDisWeight(value)) } - } + + override var dataPrep: BaseDataPrep<DataVo, BaseSOP> = EPWDataPrep() + + override var factorTypes: List<FactorType> = WeightType.weightType + + override var weights: List<BaseWeight<DataVo, BaseSOP>> = listOf(WindDirWeight(defaultLocation), WindDisWeight(defaultLocation)) + + override var sections: List<BaseSection<DataVo, BaseSOP>> = listOf(TimeSection()) + + override fun mDataCheck(m: DataVo): Boolean = !(m.lng == null || m.lng == 0.0 || m.lat == null || m.lat == 0.0) + + override fun sopCheck(s: BaseSOP): Boolean = + !(s.ciLongitude == null || s.ciLongitude == BigDecimal(0) || s.ciLatitude == null || s.ciLatitude == BigDecimal(0)) + } \ No newline at end of file -- Gitblit v1.9.3