From ef9692dd7a43e0620632e48ef295da738da50f90 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期三, 27 十月 2021 16:10:15 +0800
Subject: [PATCH] 1. 监测数据根据设备类型不同分别存储不同数据表 2. 车载数据部分监测因子进行量级调整 3. 无人机监测数据部分监测因子由于偏差较大采用车载数据填充 4. 监测数据存储之前先进行平滑预处理,矫正异常值

---
 src/main/kotlin/com/flightfeather/uav/socket/processor/UnderwayProcessor.kt |   16 ++++++++++++++--
 1 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/src/main/kotlin/com/flightfeather/uav/socket/processor/UnderwayProcessor.kt b/src/main/kotlin/com/flightfeather/uav/socket/processor/UnderwayProcessor.kt
index 7df1965..ef5d308 100644
--- a/src/main/kotlin/com/flightfeather/uav/socket/processor/UnderwayProcessor.kt
+++ b/src/main/kotlin/com/flightfeather/uav/socket/processor/UnderwayProcessor.kt
@@ -1,5 +1,6 @@
 package com.flightfeather.uav.socket.processor
 
+import com.flightfeather.uav.model.epw.EPWDataPrep
 import com.flightfeather.uav.repository.AirDataRepository
 import com.flightfeather.uav.socket.bean.AirDataPackage
 import com.flightfeather.uav.socket.decoder.AirDataDecoder
@@ -31,8 +32,11 @@
     @Autowired
     lateinit var airDataRepository: AirDataRepository
 
-    val airDataDecoder = AirDataDecoder.instance
-    val dataPackageDecoder = DataPackageDecoder()
+    private val airDataDecoder = AirDataDecoder.instance
+    private val dataPackageDecoder = DataPackageDecoder()
+
+    // 鏁版嵁棰勫鐞嗗嚱鏁�
+    private val dataProcessMap = mutableMapOf<String?, EPWDataPrep>()
 
     @PostConstruct
     fun init() {
@@ -63,6 +67,14 @@
             AirCommandUnit.AirData.value -> {
                 // 浠son鏍煎紡瀛樺偍鍘熷鏁版嵁
                 instance.airDataRepository.saveAirData(dataPackage)
+                // 杩涜棰勫鐞嗗悗锛屽瓨鍌ㄨ嚦瀵瑰簲鏁版嵁琛�
+                if (!dataProcessMap.containsKey(dataPackage.deviceCode)) {
+                    dataProcessMap[dataPackage.deviceCode] = EPWDataPrep()// 姣忓彴璁惧鏈夊崟鐙殑鏁版嵁棰勫鐞嗗璞�
+                }
+                dataProcessMap[dataPackage.deviceCode]?.run {
+                    val list = this.mDataPrep2(dataPackage)// 鏁版嵁骞虫粦澶勭悊
+                    instance.airDataRepository.savePrepData2(list)// 鎸夌収璁惧绫诲瀷瀛樺偍鑷冲搴旀暟鎹〃
+                }
             }
         }
     }

--
Gitblit v1.9.3