desc:传感器昵称

main
xiaowusky 2 years ago
parent bb2e504688
commit 9e80d6d2b5

@ -54,7 +54,9 @@ object GasUtils {
private fun updateGasTypeDb(gasName: Byte, port: String, online: Boolean) {
GlobalScope.launch {
val typeDao = DBUtils.gasTypeDao()
typeDao.insert(GasType(gasName.toString(), port, online))
val gasType = typeDao.getByName(gasName.toString())
gasType?.online = online
typeDao.insert(gasType ?: GasType(gasName.toString(), port, online))
}
}
@ -65,10 +67,11 @@ object GasUtils {
mPortRunnable[index] = flagRunnable
}
mHandler.removeCallbacks(flagRunnable)
mPortFlags[index] = true
updateGasTypeDb(gasName, port, true)
// 如果一段时间内没有收到消息,认为连接断开
mHandler.postDelayed(flagRunnable, CHECK_TIME)
mPortFlags[index] = true
updateGasTypeDb(gasName, port, true)
}
// 监控串口状态

@ -34,7 +34,7 @@ class SensorAdapter :
context.startActivity(Intent(context, SensorSettingActivity::class.java))
}
binding.sensorName.text = data.type
binding.sensorName.text = data.nickName ?: "$data.type传感器"
val state = data.online
binding.sensorStatus.text = context.getText(getShowStatus(state))
binding.sensorStatus.setTextColor(context.getColor(getShowStatusColor(state)))

@ -12,6 +12,9 @@ interface GasTypeDao {
@Query("SELECT * FROM gas_type")
suspend fun getAll(): List<GasType>
@Query("SELECT * FROM gas_type WHERE gas_name IS :name")
suspend fun getByName(name:String): GasType?
@Insert(onConflict = OnConflictStrategy.REPLACE)
suspend fun insert(gas: GasType)

@ -6,7 +6,8 @@ import androidx.room.PrimaryKey
@Entity(tableName = "gas_type")
data class GasType(
@PrimaryKey @ColumnInfo(name = "gas_type") var type: String,
@PrimaryKey @ColumnInfo(name = "gas_name") var type: String,
@ColumnInfo(name = "port_path") var port: String,
@ColumnInfo(name = "online_flag") var online: Boolean
@ColumnInfo(name = "online_flag") var online: Boolean,
@ColumnInfo(name = "nick_name") var nickName: String? = null,
)

Loading…
Cancel
Save