src/main/kotlin/com/flightfeather/uav/socket/decoder/impl/DataPackageDecoderImpl.kt
@@ -14,10 +14,15 @@
class DataPackageDecoderImpl : DataPackageDecoder {
    companion object {
//        数据头
        const val HEAD_BYTES = 1
//        监测参数确认指令位
        const val COMMAND_UNIT_BYTES = 1
        const val DEVICE_CODE_BYTES = 1
//        设备类型
        const val DEVICE_CODE_BYTES = 6
//        本次监测的空气因子数量
        const val DATA_LENGTH = 1
//        校验
        const val BCC_BYTES = 2
    }
@@ -47,7 +52,7 @@
    }
    override fun getDeviceCode(b: List<String>): String? = if (b.size >= (HEAD_BYTES + COMMAND_UNIT_BYTES + DEVICE_CODE_BYTES)) {
        //2021/1/7 '0A'代表车载设备,'0B'代表无人机设备
        //2021/1/7 '0A'代表车载设备,'0B'代表无人机设备,'0C'为网格化监测
        val s = StringBuilder()
        repeat(DEVICE_CODE_BYTES) {
            s.append(b[HEAD_BYTES + COMMAND_UNIT_BYTES + it])
@@ -91,7 +96,7 @@
    }
    override fun getCheckCode(b: List<String>): Int? {
        return if (b.size >= 5) {
        return if (b.size >= HEAD_BYTES + COMMAND_UNIT_BYTES + DEVICE_CODE_BYTES + BCC_BYTES) {
            val hexNum = "${b[b.size - 2]}${b[b.size - 1]}"
            hexNum.toIntOrNull(16)