src/main/kotlin/com/flightfeather/uav/domain/entity/BaseRealTimeData.kt
@@ -1,5 +1,9 @@
package com.flightfeather.uav.domain.entity
import com.flightfeather.uav.common.utils.DateUtil
import com.flightfeather.uav.lightshare.bean.DataVo
import com.flightfeather.uav.socket.bean.AirData
import com.flightfeather.uav.socket.eunm.FactorType
import java.math.BigDecimal
import java.util.*
import javax.persistence.Column
@@ -67,4 +71,36 @@
    var windDirection: Float? = null
    var height: Float? = null
    fun toDataVo() = DataVo().apply {
        this.time = DateUtil.instance.dateToString(dataTime, DateUtil.DateStyle.YYYY_MM_DD_HH_MM_SS)
        this.deviceCode = this@BaseRealTimeData.deviceCode
        this.lng = longitude?.toDouble()
        this.lat = latitude?.toDouble()
        this.values = mutableListOf<AirData>().apply {
            add(AirData().apply { setData(FactorType.NO2, no2) })
            add(AirData().apply { setData(FactorType.CO, co) })
            add(AirData().apply { setData(FactorType.H2S, h2s) })
            add(AirData().apply { setData(FactorType.SO2, so2) })
            add(AirData().apply { setData(FactorType.O3, o3) })
            add(AirData().apply { setData(FactorType.PM25, pm25) })
            add(AirData().apply { setData(FactorType.PM10, pm10) })
            add(AirData().apply { setData(FactorType.TEMPERATURE, temperature) })
            add(AirData().apply { setData(FactorType.HUMIDITY, humidity) })
            add(AirData().apply { setData(FactorType.VOC, voc) })
            add(AirData().apply { setData(FactorType.NOI, noi) })
            add(AirData().apply { setData(FactorType.LNG, lng) })
            add(AirData().apply { setData(FactorType.LAT, lat) })
            add(AirData().apply { setData(FactorType.VELOCITY, velocity) })
            add(AirData().apply {
                setData(FactorType.TIME, dataTime?.time?.toDouble())
                statusList = listOf(time ?: "")
            })
            add(AirData().apply { setData(FactorType.WIND_SPEED, windSpeed) })
            add(AirData().apply { setData(FactorType.WIND_DIRECTION, windDirection) })
            add(AirData().apply { setData(FactorType.HEIGHT, height) })
        }
    }
}