diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar
index 9f8c814..45da4df 100644
--- a/app/libs/lite-release.aar
+++ b/app/libs/lite-release.aar
Binary files differ
diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar
index 9f8c814..45da4df 100644
--- a/app/libs/lite-release.aar
+++ b/app/libs/lite-release.aar
Binary files differ
diff --git a/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt b/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt
index 873a103..b59019c 100644
--- a/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt
@@ -1,16 +1,26 @@
package com.casic.br.view.device.waterheater
+import android.util.Log
+import com.alibaba.fastjson.JSONObject
import com.casic.br.R
+import com.casic.br.extensions.createCommand
+import com.casic.br.utils.CommandManager
+import com.casic.br.utils.TuyaDeviceListener
import com.gyf.immersionbar.ImmersionBar
import com.pengxh.kt.lite.base.KotlinBaseActivity
import com.pengxh.kt.lite.extensions.convertColor
+import com.pengxh.kt.lite.utils.Constant
import com.pengxh.kt.lite.utils.ImmerseStatusBarUtil
+import com.tuya.smart.home.sdk.TuyaHomeSdk
+import com.tuya.smart.sdk.api.ITuyaDevice
import kotlinx.android.synthetic.main.activity_gas_consume.*
import kotlinx.android.synthetic.main.include_base_title.*
class GasConsumeActivity : KotlinBaseActivity() {
private val kTag = "GasConsumeActivity"
+ private lateinit var deviceId: String
+ private lateinit var deviceInstance: ITuyaDevice
override fun initLayoutView(): Int = R.layout.activity_gas_consume
@@ -30,6 +40,31 @@
//默认选中
dateRadioGroup.check(R.id.dayRadioButton)
setLineChartData()
+
+ deviceId = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ deviceInstance = TuyaHomeSdk.newDeviceInstance(deviceId)
+ CommandManager.getTuyaDp(deviceInstance, "105")
+ CommandManager.getTuyaDp(deviceInstance, "106")
+ CommandManager.getTuyaDp(deviceInstance, "103")
+ CommandManager.getTuyaDp(deviceInstance, "104")
+ deviceInstance.registerDevListener(object : TuyaDeviceListener() {
+ override fun onDpUpdate(devId: String?, dpStr: String?) {
+ Log.d(kTag, "onDpUpdate: $dpStr")
+ val parseObject = JSONObject.parseObject(dpStr)
+ parseObject.keys.forEach {
+ when (it) {
+ "105" -> onceWaterUsedView.text =
+ String.format("${parseObject[it] as Int}L")
+ "106" -> totalUsedWaterView.text =
+ String.format("${parseObject[it] as Int}t")
+ "103" -> onceGasUsedView.text =
+ String.format("${parseObject[it] as Int}${resources.getString(R.string.volume_unit)}")
+ "104" -> totalGasUsedView.text =
+ String.format("${parseObject[it] as Int}${resources.getString(R.string.volume_unit)}")
+ }
+ }
+ }
+ })
}
override fun initEvent() {
@@ -47,6 +82,18 @@
}
setLineChartData()
}
+
+ clearTotalWaterCheckBox.setOnCheckedChangeListener { _, isChecked ->
+ if (isChecked) {
+ CommandManager.sendTuyaDp(deviceInstance, "107".createCommand(true))
+ }
+ }
+
+ clearTotalGasCheckBox.setOnCheckedChangeListener { _, isChecked ->
+ if (isChecked) {
+ CommandManager.sendTuyaDp(deviceInstance, "108".createCommand(true))
+ }
+ }
}
/**
@@ -55,4 +102,10 @@
private fun setLineChartData() {
}
+
+ override fun onDestroy() {
+ super.onDestroy()
+ deviceInstance.unRegisterDevListener()
+ deviceInstance.onDestroy()
+ }
}
\ No newline at end of file
diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar
index 9f8c814..45da4df 100644
--- a/app/libs/lite-release.aar
+++ b/app/libs/lite-release.aar
Binary files differ
diff --git a/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt b/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt
index 873a103..b59019c 100644
--- a/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt
@@ -1,16 +1,26 @@
package com.casic.br.view.device.waterheater
+import android.util.Log
+import com.alibaba.fastjson.JSONObject
import com.casic.br.R
+import com.casic.br.extensions.createCommand
+import com.casic.br.utils.CommandManager
+import com.casic.br.utils.TuyaDeviceListener
import com.gyf.immersionbar.ImmersionBar
import com.pengxh.kt.lite.base.KotlinBaseActivity
import com.pengxh.kt.lite.extensions.convertColor
+import com.pengxh.kt.lite.utils.Constant
import com.pengxh.kt.lite.utils.ImmerseStatusBarUtil
+import com.tuya.smart.home.sdk.TuyaHomeSdk
+import com.tuya.smart.sdk.api.ITuyaDevice
import kotlinx.android.synthetic.main.activity_gas_consume.*
import kotlinx.android.synthetic.main.include_base_title.*
class GasConsumeActivity : KotlinBaseActivity() {
private val kTag = "GasConsumeActivity"
+ private lateinit var deviceId: String
+ private lateinit var deviceInstance: ITuyaDevice
override fun initLayoutView(): Int = R.layout.activity_gas_consume
@@ -30,6 +40,31 @@
//默认选中
dateRadioGroup.check(R.id.dayRadioButton)
setLineChartData()
+
+ deviceId = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ deviceInstance = TuyaHomeSdk.newDeviceInstance(deviceId)
+ CommandManager.getTuyaDp(deviceInstance, "105")
+ CommandManager.getTuyaDp(deviceInstance, "106")
+ CommandManager.getTuyaDp(deviceInstance, "103")
+ CommandManager.getTuyaDp(deviceInstance, "104")
+ deviceInstance.registerDevListener(object : TuyaDeviceListener() {
+ override fun onDpUpdate(devId: String?, dpStr: String?) {
+ Log.d(kTag, "onDpUpdate: $dpStr")
+ val parseObject = JSONObject.parseObject(dpStr)
+ parseObject.keys.forEach {
+ when (it) {
+ "105" -> onceWaterUsedView.text =
+ String.format("${parseObject[it] as Int}L")
+ "106" -> totalUsedWaterView.text =
+ String.format("${parseObject[it] as Int}t")
+ "103" -> onceGasUsedView.text =
+ String.format("${parseObject[it] as Int}${resources.getString(R.string.volume_unit)}")
+ "104" -> totalGasUsedView.text =
+ String.format("${parseObject[it] as Int}${resources.getString(R.string.volume_unit)}")
+ }
+ }
+ }
+ })
}
override fun initEvent() {
@@ -47,6 +82,18 @@
}
setLineChartData()
}
+
+ clearTotalWaterCheckBox.setOnCheckedChangeListener { _, isChecked ->
+ if (isChecked) {
+ CommandManager.sendTuyaDp(deviceInstance, "107".createCommand(true))
+ }
+ }
+
+ clearTotalGasCheckBox.setOnCheckedChangeListener { _, isChecked ->
+ if (isChecked) {
+ CommandManager.sendTuyaDp(deviceInstance, "108".createCommand(true))
+ }
+ }
}
/**
@@ -55,4 +102,10 @@
private fun setLineChartData() {
}
+
+ override fun onDestroy() {
+ super.onDestroy()
+ deviceInstance.unRegisterDevListener()
+ deviceInstance.onDestroy()
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt b/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt
index d837998..8dd7f0a 100644
--- a/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt
@@ -172,4 +172,10 @@
.build().show()
}
}
+
+ override fun onDestroy() {
+ super.onDestroy()
+ deviceInstance.unRegisterDevListener()
+ deviceInstance.onDestroy()
+ }
}
\ No newline at end of file
diff --git a/app/libs/lite-release.aar b/app/libs/lite-release.aar
index 9f8c814..45da4df 100644
--- a/app/libs/lite-release.aar
+++ b/app/libs/lite-release.aar
Binary files differ
diff --git a/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt b/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt
index 873a103..b59019c 100644
--- a/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/waterheater/GasConsumeActivity.kt
@@ -1,16 +1,26 @@
package com.casic.br.view.device.waterheater
+import android.util.Log
+import com.alibaba.fastjson.JSONObject
import com.casic.br.R
+import com.casic.br.extensions.createCommand
+import com.casic.br.utils.CommandManager
+import com.casic.br.utils.TuyaDeviceListener
import com.gyf.immersionbar.ImmersionBar
import com.pengxh.kt.lite.base.KotlinBaseActivity
import com.pengxh.kt.lite.extensions.convertColor
+import com.pengxh.kt.lite.utils.Constant
import com.pengxh.kt.lite.utils.ImmerseStatusBarUtil
+import com.tuya.smart.home.sdk.TuyaHomeSdk
+import com.tuya.smart.sdk.api.ITuyaDevice
import kotlinx.android.synthetic.main.activity_gas_consume.*
import kotlinx.android.synthetic.main.include_base_title.*
class GasConsumeActivity : KotlinBaseActivity() {
private val kTag = "GasConsumeActivity"
+ private lateinit var deviceId: String
+ private lateinit var deviceInstance: ITuyaDevice
override fun initLayoutView(): Int = R.layout.activity_gas_consume
@@ -30,6 +40,31 @@
//默认选中
dateRadioGroup.check(R.id.dayRadioButton)
setLineChartData()
+
+ deviceId = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ deviceInstance = TuyaHomeSdk.newDeviceInstance(deviceId)
+ CommandManager.getTuyaDp(deviceInstance, "105")
+ CommandManager.getTuyaDp(deviceInstance, "106")
+ CommandManager.getTuyaDp(deviceInstance, "103")
+ CommandManager.getTuyaDp(deviceInstance, "104")
+ deviceInstance.registerDevListener(object : TuyaDeviceListener() {
+ override fun onDpUpdate(devId: String?, dpStr: String?) {
+ Log.d(kTag, "onDpUpdate: $dpStr")
+ val parseObject = JSONObject.parseObject(dpStr)
+ parseObject.keys.forEach {
+ when (it) {
+ "105" -> onceWaterUsedView.text =
+ String.format("${parseObject[it] as Int}L")
+ "106" -> totalUsedWaterView.text =
+ String.format("${parseObject[it] as Int}t")
+ "103" -> onceGasUsedView.text =
+ String.format("${parseObject[it] as Int}${resources.getString(R.string.volume_unit)}")
+ "104" -> totalGasUsedView.text =
+ String.format("${parseObject[it] as Int}${resources.getString(R.string.volume_unit)}")
+ }
+ }
+ }
+ })
}
override fun initEvent() {
@@ -47,6 +82,18 @@
}
setLineChartData()
}
+
+ clearTotalWaterCheckBox.setOnCheckedChangeListener { _, isChecked ->
+ if (isChecked) {
+ CommandManager.sendTuyaDp(deviceInstance, "107".createCommand(true))
+ }
+ }
+
+ clearTotalGasCheckBox.setOnCheckedChangeListener { _, isChecked ->
+ if (isChecked) {
+ CommandManager.sendTuyaDp(deviceInstance, "108".createCommand(true))
+ }
+ }
}
/**
@@ -55,4 +102,10 @@
private fun setLineChartData() {
}
+
+ override fun onDestroy() {
+ super.onDestroy()
+ deviceInstance.unRegisterDevListener()
+ deviceInstance.onDestroy()
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt b/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt
index d837998..8dd7f0a 100644
--- a/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt
@@ -172,4 +172,10 @@
.build().show()
}
}
+
+ override fun onDestroy() {
+ super.onDestroy()
+ deviceInstance.unRegisterDevListener()
+ deviceInstance.onDestroy()
+ }
}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index db9526b..bb314be 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -109,6 +109,7 @@
android:textColor="@color/mainTextColor" />
onceWaterUsedView.text =
+ String.format("${parseObject[it] as Int}L")
+ "106" -> totalUsedWaterView.text =
+ String.format("${parseObject[it] as Int}t")
+ "103" -> onceGasUsedView.text =
+ String.format("${parseObject[it] as Int}${resources.getString(R.string.volume_unit)}")
+ "104" -> totalGasUsedView.text =
+ String.format("${parseObject[it] as Int}${resources.getString(R.string.volume_unit)}")
+ }
+ }
+ }
+ })
}
override fun initEvent() {
@@ -47,6 +82,18 @@
}
setLineChartData()
}
+
+ clearTotalWaterCheckBox.setOnCheckedChangeListener { _, isChecked ->
+ if (isChecked) {
+ CommandManager.sendTuyaDp(deviceInstance, "107".createCommand(true))
+ }
+ }
+
+ clearTotalGasCheckBox.setOnCheckedChangeListener { _, isChecked ->
+ if (isChecked) {
+ CommandManager.sendTuyaDp(deviceInstance, "108".createCommand(true))
+ }
+ }
}
/**
@@ -55,4 +102,10 @@
private fun setLineChartData() {
}
+
+ override fun onDestroy() {
+ super.onDestroy()
+ deviceInstance.unRegisterDevListener()
+ deviceInstance.onDestroy()
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt b/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt
index d837998..8dd7f0a 100644
--- a/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt
+++ b/app/src/main/java/com/casic/br/view/device/waterheater/OnceConfigActivity.kt
@@ -172,4 +172,10 @@
.build().show()
}
}
+
+ override fun onDestroy() {
+ super.onDestroy()
+ deviceInstance.unRegisterDevListener()
+ deviceInstance.onDestroy()
+ }
}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index db9526b..bb314be 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -109,6 +109,7 @@
android:textColor="@color/mainTextColor" />