diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c380261..1a1b198 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,6 +79,7 @@
+
+
"智能网关"
"wsdcg" -> "温湿度传感器"
"ywbj" -> "火灾报警器"
+ "rqbj" -> "燃气报警器"
+ "cobj" -> "一氧化碳报警器"
else -> "其他"
}
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c380261..1a1b198 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,6 +79,7 @@
+
"智能网关"
"wsdcg" -> "温湿度传感器"
"ywbj" -> "火灾报警器"
+ "rqbj" -> "燃气报警器"
+ "cobj" -> "一氧化碳报警器"
else -> "其他"
}
}
diff --git a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
index 79baca5..4c734b9 100644
--- a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
@@ -13,6 +13,7 @@
import com.casic.br.utils.DeserializeModel
import com.casic.br.view.AddDeviceActivity
import com.casic.br.view.AllDeviceActivity
+import com.casic.br.view.device.CoSensorActivity
import com.casic.br.view.LoginActivity
import com.casic.br.view.device.*
import com.pengxh.kt.lite.base.KotlinBaseFragment
@@ -129,48 +130,57 @@
val selectedCategory = deviceModel.selectCategory()
Log.d(kTag, "设备类型: $selectedCategory")
when {
- selectedCategory.contains("rs") -> {
+ selectedCategory == "rs" -> {
//热水器
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("yyj") -> {
+ selectedCategory == "yyj" -> {
//油烟机
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("bgl") -> {
+ selectedCategory == "bgl" -> {
//壁挂炉
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("rq") -> {
+ selectedCategory == "rq" -> {
//燃气灶
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("pc") -> {
+ selectedCategory == "pc" -> {
//排插
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("cz") -> {
+ selectedCategory == "cz" -> {
//插座
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("wg2") -> {
+ selectedCategory == "wg2" -> {
//网关
requireContext().navigatePageTo(
deviceModel.devId
)
}
- selectedCategory.contains("0204") -> {
+ //TODO 人体传感器设备类型待确认
+ selectedCategory == "0204" -> {
//人体传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("wsdcg") -> {
+ selectedCategory == "wsdcg" -> {
//温湿度传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("ywbj") -> {
+ selectedCategory == "ywbj" -> {
//火灾报警器
requireContext().navigatePageTo()
}
+ selectedCategory == "rqbj" -> {
+ //燃气报警器
+ requireContext().navigatePageTo()
+ }
+ selectedCategory == "cobj" -> {
+ //一氧化碳报警器
+ requireContext().navigatePageTo()
+ }
}
} else {
requireContext().navigatePageTo()
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c380261..1a1b198 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,6 +79,7 @@
+
"智能网关"
"wsdcg" -> "温湿度传感器"
"ywbj" -> "火灾报警器"
+ "rqbj" -> "燃气报警器"
+ "cobj" -> "一氧化碳报警器"
else -> "其他"
}
}
diff --git a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
index 79baca5..4c734b9 100644
--- a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
@@ -13,6 +13,7 @@
import com.casic.br.utils.DeserializeModel
import com.casic.br.view.AddDeviceActivity
import com.casic.br.view.AllDeviceActivity
+import com.casic.br.view.device.CoSensorActivity
import com.casic.br.view.LoginActivity
import com.casic.br.view.device.*
import com.pengxh.kt.lite.base.KotlinBaseFragment
@@ -129,48 +130,57 @@
val selectedCategory = deviceModel.selectCategory()
Log.d(kTag, "设备类型: $selectedCategory")
when {
- selectedCategory.contains("rs") -> {
+ selectedCategory == "rs" -> {
//热水器
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("yyj") -> {
+ selectedCategory == "yyj" -> {
//油烟机
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("bgl") -> {
+ selectedCategory == "bgl" -> {
//壁挂炉
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("rq") -> {
+ selectedCategory == "rq" -> {
//燃气灶
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("pc") -> {
+ selectedCategory == "pc" -> {
//排插
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("cz") -> {
+ selectedCategory == "cz" -> {
//插座
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("wg2") -> {
+ selectedCategory == "wg2" -> {
//网关
requireContext().navigatePageTo(
deviceModel.devId
)
}
- selectedCategory.contains("0204") -> {
+ //TODO 人体传感器设备类型待确认
+ selectedCategory == "0204" -> {
//人体传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("wsdcg") -> {
+ selectedCategory == "wsdcg" -> {
//温湿度传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("ywbj") -> {
+ selectedCategory == "ywbj" -> {
//火灾报警器
requireContext().navigatePageTo()
}
+ selectedCategory == "rqbj" -> {
+ //燃气报警器
+ requireContext().navigatePageTo()
+ }
+ selectedCategory == "cobj" -> {
+ //一氧化碳报警器
+ requireContext().navigatePageTo()
+ }
}
} else {
requireContext().navigatePageTo()
diff --git a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt
new file mode 100644
index 0000000..c6d7d77
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt
@@ -0,0 +1,138 @@
+package com.casic.br.view.device
+
+import android.os.Handler
+import android.util.Log
+import android.view.View
+import com.bumptech.glide.Glide
+import com.bumptech.glide.request.RequestOptions
+import com.casic.br.R
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.casic.br.extensions.selectCategory
+import com.casic.br.extensions.toBatteryImage
+import com.casic.br.utils.DeserializeModel
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.timestampToCompleteDate
+import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.tuya.smart.home.sdk.TuyaHomeSdk
+import com.tuya.smart.home.sdk.bean.HomeBean
+import com.tuya.smart.home.sdk.callback.ITuyaHomeResultCallback
+import com.tuya.smart.sdk.bean.DeviceBean
+import kotlinx.android.synthetic.main.activity_co_senser.*
+import kotlinx.android.synthetic.main.include_device_title.*
+import java.util.*
+
+class CoSensorActivity : KotlinBaseActivity() {
+
+ private val context = this@CoSensorActivity
+ private val dataTimer by lazy { Timer() }//数据上传Timer
+ private val dataLinkedList = LinkedList>()
+ private lateinit var weakReference: WeakReferenceHandler
+
+ override fun initLayoutView(): Int = R.layout.activity_co_senser
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ initLayoutImmersionBar(rootView)
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+
+ leftBackView.setOnClickListener { finish() }
+ rightOperateView.visibility = View.GONE
+ }
+
+ override fun initData() {
+ weakReference = WeakReferenceHandler(callback)
+ dataTimer.schedule(object : TimerTask() {
+ override fun run() {
+ TuyaHomeSdk.newHomeInstance(DeserializeModel.getHomeId())
+ .getHomeDetail(object : ITuyaHomeResultCallback {
+ override fun onSuccess(bean: HomeBean) {
+ bean.deviceList.forEach {
+ val selectedCategory = it.selectCategory()
+ if (selectedCategory == "cobj") {
+ //一氧化碳报警器
+ val msg = weakReference.obtainMessage()
+ msg.what = 2022102003
+ msg.obj = it
+ weakReference.sendMessage(msg)
+ }
+ }
+ }
+
+ override fun onError(errorCode: String, errorMsg: String) {
+ Log.d("Casic", "TAndHSensorActivity => onError: $errorMsg")
+ }
+ })
+ }
+ }, 0, 5000)
+ }
+
+ private val callback = Handler.Callback { message ->
+ if (message.what == 2022102003) {
+ val it = message.obj as DeviceBean
+ deviceStateView.text = if (it.isOnline) {
+ "设备在线"
+ } else {
+ "设备已离线"
+ }
+ titleView.text = it.name
+ Glide.with(context)
+ .load(it.iconUrl)
+ .apply(RequestOptions.circleCropTransform())
+ .placeholder(R.mipmap.load_image_error)
+ .into(deviceLogoView)
+
+ /**
+ * {"11":0,"1":"2","15":100}
+ *
+ * 11 - 故障告警
+ * 1 - CO检测状态
+ * 15 - 电池电量
+ * */
+ val dataMap = HashMap()
+
+ val value = it.dps["15"].toString()
+ batteryView.setBackgroundResource(value.toBatteryImage())
+ batteryValueView.text = "${value}%"
+
+ val f = it.dps["11"]
+ faultAlarmView.text = if (f == 0) {
+ "正常"
+ } else {
+ "异常"
+ }
+ faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") {
+ System.currentTimeMillis().timestampToCompleteDate()
+ } else {
+ "--:--:--"
+ }
+
+ val c = it.dps["1"] as String
+ coAlarmView.text = if (c == "2") {
+ "正常"
+ } else {
+ "异常"
+ }
+ coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") {
+ System.currentTimeMillis().timestampToCompleteDate()
+ } else {
+ "--:--:--"
+ }
+
+ dataLinkedList.add(dataMap)
+ }
+ true
+ }
+
+ override fun initEvent() {
+
+ }
+
+ override fun onDestroy() {
+ super.onDestroy()
+ dataTimer.cancel()
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c380261..1a1b198 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,6 +79,7 @@
+
"智能网关"
"wsdcg" -> "温湿度传感器"
"ywbj" -> "火灾报警器"
+ "rqbj" -> "燃气报警器"
+ "cobj" -> "一氧化碳报警器"
else -> "其他"
}
}
diff --git a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
index 79baca5..4c734b9 100644
--- a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
@@ -13,6 +13,7 @@
import com.casic.br.utils.DeserializeModel
import com.casic.br.view.AddDeviceActivity
import com.casic.br.view.AllDeviceActivity
+import com.casic.br.view.device.CoSensorActivity
import com.casic.br.view.LoginActivity
import com.casic.br.view.device.*
import com.pengxh.kt.lite.base.KotlinBaseFragment
@@ -129,48 +130,57 @@
val selectedCategory = deviceModel.selectCategory()
Log.d(kTag, "设备类型: $selectedCategory")
when {
- selectedCategory.contains("rs") -> {
+ selectedCategory == "rs" -> {
//热水器
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("yyj") -> {
+ selectedCategory == "yyj" -> {
//油烟机
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("bgl") -> {
+ selectedCategory == "bgl" -> {
//壁挂炉
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("rq") -> {
+ selectedCategory == "rq" -> {
//燃气灶
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("pc") -> {
+ selectedCategory == "pc" -> {
//排插
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("cz") -> {
+ selectedCategory == "cz" -> {
//插座
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("wg2") -> {
+ selectedCategory == "wg2" -> {
//网关
requireContext().navigatePageTo(
deviceModel.devId
)
}
- selectedCategory.contains("0204") -> {
+ //TODO 人体传感器设备类型待确认
+ selectedCategory == "0204" -> {
//人体传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("wsdcg") -> {
+ selectedCategory == "wsdcg" -> {
//温湿度传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("ywbj") -> {
+ selectedCategory == "ywbj" -> {
//火灾报警器
requireContext().navigatePageTo()
}
+ selectedCategory == "rqbj" -> {
+ //燃气报警器
+ requireContext().navigatePageTo()
+ }
+ selectedCategory == "cobj" -> {
+ //一氧化碳报警器
+ requireContext().navigatePageTo()
+ }
}
} else {
requireContext().navigatePageTo()
diff --git a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt
new file mode 100644
index 0000000..c6d7d77
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt
@@ -0,0 +1,138 @@
+package com.casic.br.view.device
+
+import android.os.Handler
+import android.util.Log
+import android.view.View
+import com.bumptech.glide.Glide
+import com.bumptech.glide.request.RequestOptions
+import com.casic.br.R
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.casic.br.extensions.selectCategory
+import com.casic.br.extensions.toBatteryImage
+import com.casic.br.utils.DeserializeModel
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.timestampToCompleteDate
+import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.tuya.smart.home.sdk.TuyaHomeSdk
+import com.tuya.smart.home.sdk.bean.HomeBean
+import com.tuya.smart.home.sdk.callback.ITuyaHomeResultCallback
+import com.tuya.smart.sdk.bean.DeviceBean
+import kotlinx.android.synthetic.main.activity_co_senser.*
+import kotlinx.android.synthetic.main.include_device_title.*
+import java.util.*
+
+class CoSensorActivity : KotlinBaseActivity() {
+
+ private val context = this@CoSensorActivity
+ private val dataTimer by lazy { Timer() }//数据上传Timer
+ private val dataLinkedList = LinkedList>()
+ private lateinit var weakReference: WeakReferenceHandler
+
+ override fun initLayoutView(): Int = R.layout.activity_co_senser
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ initLayoutImmersionBar(rootView)
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+
+ leftBackView.setOnClickListener { finish() }
+ rightOperateView.visibility = View.GONE
+ }
+
+ override fun initData() {
+ weakReference = WeakReferenceHandler(callback)
+ dataTimer.schedule(object : TimerTask() {
+ override fun run() {
+ TuyaHomeSdk.newHomeInstance(DeserializeModel.getHomeId())
+ .getHomeDetail(object : ITuyaHomeResultCallback {
+ override fun onSuccess(bean: HomeBean) {
+ bean.deviceList.forEach {
+ val selectedCategory = it.selectCategory()
+ if (selectedCategory == "cobj") {
+ //一氧化碳报警器
+ val msg = weakReference.obtainMessage()
+ msg.what = 2022102003
+ msg.obj = it
+ weakReference.sendMessage(msg)
+ }
+ }
+ }
+
+ override fun onError(errorCode: String, errorMsg: String) {
+ Log.d("Casic", "TAndHSensorActivity => onError: $errorMsg")
+ }
+ })
+ }
+ }, 0, 5000)
+ }
+
+ private val callback = Handler.Callback { message ->
+ if (message.what == 2022102003) {
+ val it = message.obj as DeviceBean
+ deviceStateView.text = if (it.isOnline) {
+ "设备在线"
+ } else {
+ "设备已离线"
+ }
+ titleView.text = it.name
+ Glide.with(context)
+ .load(it.iconUrl)
+ .apply(RequestOptions.circleCropTransform())
+ .placeholder(R.mipmap.load_image_error)
+ .into(deviceLogoView)
+
+ /**
+ * {"11":0,"1":"2","15":100}
+ *
+ * 11 - 故障告警
+ * 1 - CO检测状态
+ * 15 - 电池电量
+ * */
+ val dataMap = HashMap()
+
+ val value = it.dps["15"].toString()
+ batteryView.setBackgroundResource(value.toBatteryImage())
+ batteryValueView.text = "${value}%"
+
+ val f = it.dps["11"]
+ faultAlarmView.text = if (f == 0) {
+ "正常"
+ } else {
+ "异常"
+ }
+ faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") {
+ System.currentTimeMillis().timestampToCompleteDate()
+ } else {
+ "--:--:--"
+ }
+
+ val c = it.dps["1"] as String
+ coAlarmView.text = if (c == "2") {
+ "正常"
+ } else {
+ "异常"
+ }
+ coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") {
+ System.currentTimeMillis().timestampToCompleteDate()
+ } else {
+ "--:--:--"
+ }
+
+ dataLinkedList.add(dataMap)
+ }
+ true
+ }
+
+ override fun initEvent() {
+
+ }
+
+ override fun onDestroy() {
+ super.onDestroy()
+ dataTimer.cancel()
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
index 15025f0..2b3c75b 100644
--- a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
@@ -57,7 +57,7 @@
override fun onSuccess(bean: HomeBean) {
bean.deviceList.forEach {
val selectedCategory = it.selectCategory()
- if (selectedCategory.contains("ywbj")) {
+ if (selectedCategory == "ywbj") {
//火灾报警器
val msg = weakReference.obtainMessage()
msg.what = 2022102002
@@ -78,7 +78,6 @@
private val callback = Handler.Callback { message ->
if (message.what == 2022102002) {
val it = message.obj as DeviceBean
- it.toJson().writeToFile(this.createLogFile())
deviceStateView.text = if (it.isOnline) {
"在线"
} else {
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c380261..1a1b198 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,6 +79,7 @@
+
"智能网关"
"wsdcg" -> "温湿度传感器"
"ywbj" -> "火灾报警器"
+ "rqbj" -> "燃气报警器"
+ "cobj" -> "一氧化碳报警器"
else -> "其他"
}
}
diff --git a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
index 79baca5..4c734b9 100644
--- a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
@@ -13,6 +13,7 @@
import com.casic.br.utils.DeserializeModel
import com.casic.br.view.AddDeviceActivity
import com.casic.br.view.AllDeviceActivity
+import com.casic.br.view.device.CoSensorActivity
import com.casic.br.view.LoginActivity
import com.casic.br.view.device.*
import com.pengxh.kt.lite.base.KotlinBaseFragment
@@ -129,48 +130,57 @@
val selectedCategory = deviceModel.selectCategory()
Log.d(kTag, "设备类型: $selectedCategory")
when {
- selectedCategory.contains("rs") -> {
+ selectedCategory == "rs" -> {
//热水器
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("yyj") -> {
+ selectedCategory == "yyj" -> {
//油烟机
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("bgl") -> {
+ selectedCategory == "bgl" -> {
//壁挂炉
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("rq") -> {
+ selectedCategory == "rq" -> {
//燃气灶
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("pc") -> {
+ selectedCategory == "pc" -> {
//排插
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("cz") -> {
+ selectedCategory == "cz" -> {
//插座
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("wg2") -> {
+ selectedCategory == "wg2" -> {
//网关
requireContext().navigatePageTo(
deviceModel.devId
)
}
- selectedCategory.contains("0204") -> {
+ //TODO 人体传感器设备类型待确认
+ selectedCategory == "0204" -> {
//人体传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("wsdcg") -> {
+ selectedCategory == "wsdcg" -> {
//温湿度传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("ywbj") -> {
+ selectedCategory == "ywbj" -> {
//火灾报警器
requireContext().navigatePageTo()
}
+ selectedCategory == "rqbj" -> {
+ //燃气报警器
+ requireContext().navigatePageTo()
+ }
+ selectedCategory == "cobj" -> {
+ //一氧化碳报警器
+ requireContext().navigatePageTo()
+ }
}
} else {
requireContext().navigatePageTo()
diff --git a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt
new file mode 100644
index 0000000..c6d7d77
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt
@@ -0,0 +1,138 @@
+package com.casic.br.view.device
+
+import android.os.Handler
+import android.util.Log
+import android.view.View
+import com.bumptech.glide.Glide
+import com.bumptech.glide.request.RequestOptions
+import com.casic.br.R
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.casic.br.extensions.selectCategory
+import com.casic.br.extensions.toBatteryImage
+import com.casic.br.utils.DeserializeModel
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.timestampToCompleteDate
+import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.tuya.smart.home.sdk.TuyaHomeSdk
+import com.tuya.smart.home.sdk.bean.HomeBean
+import com.tuya.smart.home.sdk.callback.ITuyaHomeResultCallback
+import com.tuya.smart.sdk.bean.DeviceBean
+import kotlinx.android.synthetic.main.activity_co_senser.*
+import kotlinx.android.synthetic.main.include_device_title.*
+import java.util.*
+
+class CoSensorActivity : KotlinBaseActivity() {
+
+ private val context = this@CoSensorActivity
+ private val dataTimer by lazy { Timer() }//数据上传Timer
+ private val dataLinkedList = LinkedList>()
+ private lateinit var weakReference: WeakReferenceHandler
+
+ override fun initLayoutView(): Int = R.layout.activity_co_senser
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ initLayoutImmersionBar(rootView)
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+
+ leftBackView.setOnClickListener { finish() }
+ rightOperateView.visibility = View.GONE
+ }
+
+ override fun initData() {
+ weakReference = WeakReferenceHandler(callback)
+ dataTimer.schedule(object : TimerTask() {
+ override fun run() {
+ TuyaHomeSdk.newHomeInstance(DeserializeModel.getHomeId())
+ .getHomeDetail(object : ITuyaHomeResultCallback {
+ override fun onSuccess(bean: HomeBean) {
+ bean.deviceList.forEach {
+ val selectedCategory = it.selectCategory()
+ if (selectedCategory == "cobj") {
+ //一氧化碳报警器
+ val msg = weakReference.obtainMessage()
+ msg.what = 2022102003
+ msg.obj = it
+ weakReference.sendMessage(msg)
+ }
+ }
+ }
+
+ override fun onError(errorCode: String, errorMsg: String) {
+ Log.d("Casic", "TAndHSensorActivity => onError: $errorMsg")
+ }
+ })
+ }
+ }, 0, 5000)
+ }
+
+ private val callback = Handler.Callback { message ->
+ if (message.what == 2022102003) {
+ val it = message.obj as DeviceBean
+ deviceStateView.text = if (it.isOnline) {
+ "设备在线"
+ } else {
+ "设备已离线"
+ }
+ titleView.text = it.name
+ Glide.with(context)
+ .load(it.iconUrl)
+ .apply(RequestOptions.circleCropTransform())
+ .placeholder(R.mipmap.load_image_error)
+ .into(deviceLogoView)
+
+ /**
+ * {"11":0,"1":"2","15":100}
+ *
+ * 11 - 故障告警
+ * 1 - CO检测状态
+ * 15 - 电池电量
+ * */
+ val dataMap = HashMap()
+
+ val value = it.dps["15"].toString()
+ batteryView.setBackgroundResource(value.toBatteryImage())
+ batteryValueView.text = "${value}%"
+
+ val f = it.dps["11"]
+ faultAlarmView.text = if (f == 0) {
+ "正常"
+ } else {
+ "异常"
+ }
+ faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") {
+ System.currentTimeMillis().timestampToCompleteDate()
+ } else {
+ "--:--:--"
+ }
+
+ val c = it.dps["1"] as String
+ coAlarmView.text = if (c == "2") {
+ "正常"
+ } else {
+ "异常"
+ }
+ coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") {
+ System.currentTimeMillis().timestampToCompleteDate()
+ } else {
+ "--:--:--"
+ }
+
+ dataLinkedList.add(dataMap)
+ }
+ true
+ }
+
+ override fun initEvent() {
+
+ }
+
+ override fun onDestroy() {
+ super.onDestroy()
+ dataTimer.cancel()
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
index 15025f0..2b3c75b 100644
--- a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
@@ -57,7 +57,7 @@
override fun onSuccess(bean: HomeBean) {
bean.deviceList.forEach {
val selectedCategory = it.selectCategory()
- if (selectedCategory.contains("ywbj")) {
+ if (selectedCategory == "ywbj") {
//火灾报警器
val msg = weakReference.obtainMessage()
msg.what = 2022102002
@@ -78,7 +78,6 @@
private val callback = Handler.Callback { message ->
if (message.what == 2022102002) {
val it = message.obj as DeviceBean
- it.toJson().writeToFile(this.createLogFile())
deviceStateView.text = if (it.isOnline) {
"在线"
} else {
diff --git a/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt
index 5ecd0c8..944304f 100644
--- a/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt
@@ -63,7 +63,7 @@
override fun onSuccess(bean: HomeBean) {
bean.deviceList.forEach {
val selectedCategory = it.selectCategory()
- if (selectedCategory.contains("0204")) {
+ if (selectedCategory == "0204") {
//人体传感器
val msg = weakReference.obtainMessage()
msg.what = 2022102001
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c380261..1a1b198 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,6 +79,7 @@
+
"智能网关"
"wsdcg" -> "温湿度传感器"
"ywbj" -> "火灾报警器"
+ "rqbj" -> "燃气报警器"
+ "cobj" -> "一氧化碳报警器"
else -> "其他"
}
}
diff --git a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
index 79baca5..4c734b9 100644
--- a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
@@ -13,6 +13,7 @@
import com.casic.br.utils.DeserializeModel
import com.casic.br.view.AddDeviceActivity
import com.casic.br.view.AllDeviceActivity
+import com.casic.br.view.device.CoSensorActivity
import com.casic.br.view.LoginActivity
import com.casic.br.view.device.*
import com.pengxh.kt.lite.base.KotlinBaseFragment
@@ -129,48 +130,57 @@
val selectedCategory = deviceModel.selectCategory()
Log.d(kTag, "设备类型: $selectedCategory")
when {
- selectedCategory.contains("rs") -> {
+ selectedCategory == "rs" -> {
//热水器
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("yyj") -> {
+ selectedCategory == "yyj" -> {
//油烟机
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("bgl") -> {
+ selectedCategory == "bgl" -> {
//壁挂炉
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("rq") -> {
+ selectedCategory == "rq" -> {
//燃气灶
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("pc") -> {
+ selectedCategory == "pc" -> {
//排插
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("cz") -> {
+ selectedCategory == "cz" -> {
//插座
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("wg2") -> {
+ selectedCategory == "wg2" -> {
//网关
requireContext().navigatePageTo(
deviceModel.devId
)
}
- selectedCategory.contains("0204") -> {
+ //TODO 人体传感器设备类型待确认
+ selectedCategory == "0204" -> {
//人体传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("wsdcg") -> {
+ selectedCategory == "wsdcg" -> {
//温湿度传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("ywbj") -> {
+ selectedCategory == "ywbj" -> {
//火灾报警器
requireContext().navigatePageTo()
}
+ selectedCategory == "rqbj" -> {
+ //燃气报警器
+ requireContext().navigatePageTo()
+ }
+ selectedCategory == "cobj" -> {
+ //一氧化碳报警器
+ requireContext().navigatePageTo()
+ }
}
} else {
requireContext().navigatePageTo()
diff --git a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt
new file mode 100644
index 0000000..c6d7d77
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt
@@ -0,0 +1,138 @@
+package com.casic.br.view.device
+
+import android.os.Handler
+import android.util.Log
+import android.view.View
+import com.bumptech.glide.Glide
+import com.bumptech.glide.request.RequestOptions
+import com.casic.br.R
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.casic.br.extensions.selectCategory
+import com.casic.br.extensions.toBatteryImage
+import com.casic.br.utils.DeserializeModel
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.timestampToCompleteDate
+import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.tuya.smart.home.sdk.TuyaHomeSdk
+import com.tuya.smart.home.sdk.bean.HomeBean
+import com.tuya.smart.home.sdk.callback.ITuyaHomeResultCallback
+import com.tuya.smart.sdk.bean.DeviceBean
+import kotlinx.android.synthetic.main.activity_co_senser.*
+import kotlinx.android.synthetic.main.include_device_title.*
+import java.util.*
+
+class CoSensorActivity : KotlinBaseActivity() {
+
+ private val context = this@CoSensorActivity
+ private val dataTimer by lazy { Timer() }//数据上传Timer
+ private val dataLinkedList = LinkedList>()
+ private lateinit var weakReference: WeakReferenceHandler
+
+ override fun initLayoutView(): Int = R.layout.activity_co_senser
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ initLayoutImmersionBar(rootView)
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+
+ leftBackView.setOnClickListener { finish() }
+ rightOperateView.visibility = View.GONE
+ }
+
+ override fun initData() {
+ weakReference = WeakReferenceHandler(callback)
+ dataTimer.schedule(object : TimerTask() {
+ override fun run() {
+ TuyaHomeSdk.newHomeInstance(DeserializeModel.getHomeId())
+ .getHomeDetail(object : ITuyaHomeResultCallback {
+ override fun onSuccess(bean: HomeBean) {
+ bean.deviceList.forEach {
+ val selectedCategory = it.selectCategory()
+ if (selectedCategory == "cobj") {
+ //一氧化碳报警器
+ val msg = weakReference.obtainMessage()
+ msg.what = 2022102003
+ msg.obj = it
+ weakReference.sendMessage(msg)
+ }
+ }
+ }
+
+ override fun onError(errorCode: String, errorMsg: String) {
+ Log.d("Casic", "TAndHSensorActivity => onError: $errorMsg")
+ }
+ })
+ }
+ }, 0, 5000)
+ }
+
+ private val callback = Handler.Callback { message ->
+ if (message.what == 2022102003) {
+ val it = message.obj as DeviceBean
+ deviceStateView.text = if (it.isOnline) {
+ "设备在线"
+ } else {
+ "设备已离线"
+ }
+ titleView.text = it.name
+ Glide.with(context)
+ .load(it.iconUrl)
+ .apply(RequestOptions.circleCropTransform())
+ .placeholder(R.mipmap.load_image_error)
+ .into(deviceLogoView)
+
+ /**
+ * {"11":0,"1":"2","15":100}
+ *
+ * 11 - 故障告警
+ * 1 - CO检测状态
+ * 15 - 电池电量
+ * */
+ val dataMap = HashMap()
+
+ val value = it.dps["15"].toString()
+ batteryView.setBackgroundResource(value.toBatteryImage())
+ batteryValueView.text = "${value}%"
+
+ val f = it.dps["11"]
+ faultAlarmView.text = if (f == 0) {
+ "正常"
+ } else {
+ "异常"
+ }
+ faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") {
+ System.currentTimeMillis().timestampToCompleteDate()
+ } else {
+ "--:--:--"
+ }
+
+ val c = it.dps["1"] as String
+ coAlarmView.text = if (c == "2") {
+ "正常"
+ } else {
+ "异常"
+ }
+ coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") {
+ System.currentTimeMillis().timestampToCompleteDate()
+ } else {
+ "--:--:--"
+ }
+
+ dataLinkedList.add(dataMap)
+ }
+ true
+ }
+
+ override fun initEvent() {
+
+ }
+
+ override fun onDestroy() {
+ super.onDestroy()
+ dataTimer.cancel()
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
index 15025f0..2b3c75b 100644
--- a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
@@ -57,7 +57,7 @@
override fun onSuccess(bean: HomeBean) {
bean.deviceList.forEach {
val selectedCategory = it.selectCategory()
- if (selectedCategory.contains("ywbj")) {
+ if (selectedCategory == "ywbj") {
//火灾报警器
val msg = weakReference.obtainMessage()
msg.what = 2022102002
@@ -78,7 +78,6 @@
private val callback = Handler.Callback { message ->
if (message.what == 2022102002) {
val it = message.obj as DeviceBean
- it.toJson().writeToFile(this.createLogFile())
deviceStateView.text = if (it.isOnline) {
"在线"
} else {
diff --git a/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt
index 5ecd0c8..944304f 100644
--- a/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt
@@ -63,7 +63,7 @@
override fun onSuccess(bean: HomeBean) {
bean.deviceList.forEach {
val selectedCategory = it.selectCategory()
- if (selectedCategory.contains("0204")) {
+ if (selectedCategory == "0204") {
//人体传感器
val msg = weakReference.obtainMessage()
msg.what = 2022102001
diff --git a/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt
index 7c8dfe7..448861e 100644
--- a/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt
@@ -61,7 +61,7 @@
override fun onSuccess(bean: HomeBean) {
bean.deviceList.forEach {
val selectedCategory = it.selectCategory()
- if (selectedCategory.contains("wsdcg")) {
+ if (selectedCategory == "wsdcg") {
//温湿度传感器
val msg = weakReference.obtainMessage()
msg.what = 2022112001
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c380261..1a1b198 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,6 +79,7 @@
+
"智能网关"
"wsdcg" -> "温湿度传感器"
"ywbj" -> "火灾报警器"
+ "rqbj" -> "燃气报警器"
+ "cobj" -> "一氧化碳报警器"
else -> "其他"
}
}
diff --git a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
index 79baca5..4c734b9 100644
--- a/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/DevicePageFragment.kt
@@ -13,6 +13,7 @@
import com.casic.br.utils.DeserializeModel
import com.casic.br.view.AddDeviceActivity
import com.casic.br.view.AllDeviceActivity
+import com.casic.br.view.device.CoSensorActivity
import com.casic.br.view.LoginActivity
import com.casic.br.view.device.*
import com.pengxh.kt.lite.base.KotlinBaseFragment
@@ -129,48 +130,57 @@
val selectedCategory = deviceModel.selectCategory()
Log.d(kTag, "设备类型: $selectedCategory")
when {
- selectedCategory.contains("rs") -> {
+ selectedCategory == "rs" -> {
//热水器
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("yyj") -> {
+ selectedCategory == "yyj" -> {
//油烟机
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("bgl") -> {
+ selectedCategory == "bgl" -> {
//壁挂炉
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("rq") -> {
+ selectedCategory == "rq" -> {
//燃气灶
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("pc") -> {
+ selectedCategory == "pc" -> {
//排插
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("cz") -> {
+ selectedCategory == "cz" -> {
//插座
requireContext().navigatePageTo(deviceModel.devId)
}
- selectedCategory.contains("wg2") -> {
+ selectedCategory == "wg2" -> {
//网关
requireContext().navigatePageTo(
deviceModel.devId
)
}
- selectedCategory.contains("0204") -> {
+ //TODO 人体传感器设备类型待确认
+ selectedCategory == "0204" -> {
//人体传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("wsdcg") -> {
+ selectedCategory == "wsdcg" -> {
//温湿度传感器
requireContext().navigatePageTo()
}
- selectedCategory.contains("ywbj") -> {
+ selectedCategory == "ywbj" -> {
//火灾报警器
requireContext().navigatePageTo()
}
+ selectedCategory == "rqbj" -> {
+ //燃气报警器
+ requireContext().navigatePageTo()
+ }
+ selectedCategory == "cobj" -> {
+ //一氧化碳报警器
+ requireContext().navigatePageTo()
+ }
}
} else {
requireContext().navigatePageTo()
diff --git a/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt
new file mode 100644
index 0000000..c6d7d77
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/device/CoSensorActivity.kt
@@ -0,0 +1,138 @@
+package com.casic.br.view.device
+
+import android.os.Handler
+import android.util.Log
+import android.view.View
+import com.bumptech.glide.Glide
+import com.bumptech.glide.request.RequestOptions
+import com.casic.br.R
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.casic.br.extensions.selectCategory
+import com.casic.br.extensions.toBatteryImage
+import com.casic.br.utils.DeserializeModel
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.timestampToCompleteDate
+import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.tuya.smart.home.sdk.TuyaHomeSdk
+import com.tuya.smart.home.sdk.bean.HomeBean
+import com.tuya.smart.home.sdk.callback.ITuyaHomeResultCallback
+import com.tuya.smart.sdk.bean.DeviceBean
+import kotlinx.android.synthetic.main.activity_co_senser.*
+import kotlinx.android.synthetic.main.include_device_title.*
+import java.util.*
+
+class CoSensorActivity : KotlinBaseActivity() {
+
+ private val context = this@CoSensorActivity
+ private val dataTimer by lazy { Timer() }//数据上传Timer
+ private val dataLinkedList = LinkedList>()
+ private lateinit var weakReference: WeakReferenceHandler
+
+ override fun initLayoutView(): Int = R.layout.activity_co_senser
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ initLayoutImmersionBar(rootView)
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+
+ leftBackView.setOnClickListener { finish() }
+ rightOperateView.visibility = View.GONE
+ }
+
+ override fun initData() {
+ weakReference = WeakReferenceHandler(callback)
+ dataTimer.schedule(object : TimerTask() {
+ override fun run() {
+ TuyaHomeSdk.newHomeInstance(DeserializeModel.getHomeId())
+ .getHomeDetail(object : ITuyaHomeResultCallback {
+ override fun onSuccess(bean: HomeBean) {
+ bean.deviceList.forEach {
+ val selectedCategory = it.selectCategory()
+ if (selectedCategory == "cobj") {
+ //一氧化碳报警器
+ val msg = weakReference.obtainMessage()
+ msg.what = 2022102003
+ msg.obj = it
+ weakReference.sendMessage(msg)
+ }
+ }
+ }
+
+ override fun onError(errorCode: String, errorMsg: String) {
+ Log.d("Casic", "TAndHSensorActivity => onError: $errorMsg")
+ }
+ })
+ }
+ }, 0, 5000)
+ }
+
+ private val callback = Handler.Callback { message ->
+ if (message.what == 2022102003) {
+ val it = message.obj as DeviceBean
+ deviceStateView.text = if (it.isOnline) {
+ "设备在线"
+ } else {
+ "设备已离线"
+ }
+ titleView.text = it.name
+ Glide.with(context)
+ .load(it.iconUrl)
+ .apply(RequestOptions.circleCropTransform())
+ .placeholder(R.mipmap.load_image_error)
+ .into(deviceLogoView)
+
+ /**
+ * {"11":0,"1":"2","15":100}
+ *
+ * 11 - 故障告警
+ * 1 - CO检测状态
+ * 15 - 电池电量
+ * */
+ val dataMap = HashMap()
+
+ val value = it.dps["15"].toString()
+ batteryView.setBackgroundResource(value.toBatteryImage())
+ batteryValueView.text = "${value}%"
+
+ val f = it.dps["11"]
+ faultAlarmView.text = if (f == 0) {
+ "正常"
+ } else {
+ "异常"
+ }
+ faultAlarmTimeView.text = if (faultAlarmView.text.toString() == "异常") {
+ System.currentTimeMillis().timestampToCompleteDate()
+ } else {
+ "--:--:--"
+ }
+
+ val c = it.dps["1"] as String
+ coAlarmView.text = if (c == "2") {
+ "正常"
+ } else {
+ "异常"
+ }
+ coAlarmTimeView.text = if (coAlarmView.text.toString() == "异常") {
+ System.currentTimeMillis().timestampToCompleteDate()
+ } else {
+ "--:--:--"
+ }
+
+ dataLinkedList.add(dataMap)
+ }
+ true
+ }
+
+ override fun initEvent() {
+
+ }
+
+ override fun onDestroy() {
+ super.onDestroy()
+ dataTimer.cancel()
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
index 15025f0..2b3c75b 100644
--- a/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/FireSensorActivity.kt
@@ -57,7 +57,7 @@
override fun onSuccess(bean: HomeBean) {
bean.deviceList.forEach {
val selectedCategory = it.selectCategory()
- if (selectedCategory.contains("ywbj")) {
+ if (selectedCategory == "ywbj") {
//火灾报警器
val msg = weakReference.obtainMessage()
msg.what = 2022102002
@@ -78,7 +78,6 @@
private val callback = Handler.Callback { message ->
if (message.what == 2022102002) {
val it = message.obj as DeviceBean
- it.toJson().writeToFile(this.createLogFile())
deviceStateView.text = if (it.isOnline) {
"在线"
} else {
diff --git a/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt
index 5ecd0c8..944304f 100644
--- a/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/MotionSensorActivity.kt
@@ -63,7 +63,7 @@
override fun onSuccess(bean: HomeBean) {
bean.deviceList.forEach {
val selectedCategory = it.selectCategory()
- if (selectedCategory.contains("0204")) {
+ if (selectedCategory == "0204") {
//人体传感器
val msg = weakReference.obtainMessage()
msg.what = 2022102001
diff --git a/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt b/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt
index 7c8dfe7..448861e 100644
--- a/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/TAndHSensorActivity.kt
@@ -61,7 +61,7 @@
override fun onSuccess(bean: HomeBean) {
bean.deviceList.forEach {
val selectedCategory = it.selectCategory()
- if (selectedCategory.contains("wsdcg")) {
+ if (selectedCategory == "wsdcg") {
//温湿度传感器
val msg = weakReference.obtainMessage()
msg.what = 2022112001
diff --git a/app/src/main/res/layout/activity_co_senser.xml b/app/src/main/res/layout/activity_co_senser.xml
new file mode 100644
index 0000000..393d18c
--- /dev/null
+++ b/app/src/main/res/layout/activity_co_senser.xml
@@ -0,0 +1,134 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file