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) { private fun updateGasTypeDb(gasName: Byte, port: String, online: Boolean) {
GlobalScope.launch { GlobalScope.launch {
val typeDao = DBUtils.gasTypeDao() 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 mPortRunnable[index] = flagRunnable
} }
mHandler.removeCallbacks(flagRunnable) mHandler.removeCallbacks(flagRunnable)
mPortFlags[index] = true
updateGasTypeDb(gasName, port, true)
// 如果一段时间内没有收到消息,认为连接断开 // 如果一段时间内没有收到消息,认为连接断开
mHandler.postDelayed(flagRunnable, CHECK_TIME) 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)) context.startActivity(Intent(context, SensorSettingActivity::class.java))
} }
binding.sensorName.text = data.type binding.sensorName.text = data.nickName ?: "$data.type传感器"
val state = data.online val state = data.online
binding.sensorStatus.text = context.getText(getShowStatus(state)) binding.sensorStatus.text = context.getText(getShowStatus(state))
binding.sensorStatus.setTextColor(context.getColor(getShowStatusColor(state))) binding.sensorStatus.setTextColor(context.getColor(getShowStatusColor(state)))

@ -12,6 +12,9 @@ interface GasTypeDao {
@Query("SELECT * FROM gas_type") @Query("SELECT * FROM gas_type")
suspend fun getAll(): List<GasType> 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) @Insert(onConflict = OnConflictStrategy.REPLACE)
suspend fun insert(gas: GasType) suspend fun insert(gas: GasType)

@ -6,7 +6,8 @@ import androidx.room.PrimaryKey
@Entity(tableName = "gas_type") @Entity(tableName = "gas_type")
data class GasType( 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 = "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