From 5353617c7b2135ab00f98d8e05b2f8dfb2e096ed Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期三, 30 六月 2021 09:55:40 +0800
Subject: [PATCH] 1. 新增污染权重分析功能

---
 src/main/kotlin/com/flightfeather/uav/model/epw/EPWModel.kt |   42 +++++++++++-------------------------------
 1 files changed, 11 insertions(+), 31 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 e3cb9cd..b12dd82 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,9 @@
 package com.flightfeather.uav.model.epw
 
-import com.flightfeather.uav.domain.entity.Company
+import com.flightfeather.uav.lightshare.bean.CompanySOP
 import com.flightfeather.uav.lightshare.bean.DataVo
+import com.flightfeather.uav.model.*
+import com.flightfeather.uav.socket.eunm.FactorType
 import java.math.BigDecimal
 
 /**
@@ -9,41 +11,19 @@
  * 鏍规嵁璧拌埅鐩戞祴鏁版嵁锛岀粨鍚堥閫熴�侀鍚戙�佺洃娴嬬偣涓庝紒涓氱殑鐩稿浣嶇疆绛夊洜绱狅紝璁$畻浼佷笟瀵圭洃娴嬪尯鍩熺殑褰卞搷绋嬪害
  * @author riku
  */
-class EPWModel {
+class EPWModel : BaseModel<DataVo, CompanySOP>() {
 
-    private val windDirWeight = WindDirWeight()
-    private val windDisWeight = WindDisWeight()
+    override var dataPrep: BaseDataPrep<DataVo, CompanySOP> = EPWDataPrep()
 
-    private lateinit var datas: List<DataVo>
-    private lateinit var sources: List<Company>
+    override var factorTypes: List<FactorType> = WeightType.weightType
 
-    fun execute() {
-        datas.forEach d@{d ->
-            if (d.lng == null || d.lng == 0.0 || d.lat == null || d.lat == 0.0) {
-                return@d
-            }
+    override var weights: List<BaseWeight<DataVo, CompanySOP>> = listOf(WindDirWeight(), WindDisWeight())
 
-            var con = 0
-            var ws = 0.0
-            var wd = 0
-            var hr = 0
-            val lng = d.lng
-            val lat = d.lat
+    override var sections: List<BaseSection<DataVo, CompanySOP>> = listOf(TimeSection())
 
-            sources.forEach s@ { s ->
-                // 缁忕含搴︽湁鏁堟�у垽鏂�
-                if (s.ciLongitude == null || s.ciLongitude == BigDecimal(0) || s.ciLatitude == null || s.ciLatitude == BigDecimal(0)) {
-                    return@s
-                }
+    override fun mDataCheck(m: DataVo): Boolean = !(m.lng == null || m.lng == 0.0 || m.lat == null || m.lat == 0.0)
 
-                val p1 = Pair(lng!!, lat!!)
-                val p2 = Pair(s.ciLongitude.toDouble(), s.ciLatitude.toDouble())
-                windDirWeight.getWeight(p1, p2, wd)
+    override fun sopCheck(s: CompanySOP): Boolean =
+        !(s.ciLongitude == null || s.ciLongitude == BigDecimal(0) || s.ciLatitude == null || s.ciLatitude == BigDecimal(0))
 
-                windDisWeight.getWeight(p1, p2, ws)
-
-
-            }
-        }
-    }
 }
\ No newline at end of file

--
Gitblit v1.9.3