diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index ef91670..92c41d8 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -133,6 +133,12 @@ suspend fun changeAlarmState(@Body requestBody: RequestBody): String /** + * 声光报警开关状态 + */ + @GET("/GetCurrentState") + suspend fun getAlarmState(): String + + /** * 上传图片 * 系统路径static拼接图片返回路径 * http://xx.com/static/2019-10/8050891248624f2bbefedcb196ce89cb.jpeg diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index ef91670..92c41d8 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -133,6 +133,12 @@ suspend fun changeAlarmState(@Body requestBody: RequestBody): String /** + * 声光报警开关状态 + */ + @GET("/GetCurrentState") + suspend fun getAlarmState(): String + + /** * 上传图片 * 系统路径static拼接图片返回路径 * http://xx.com/static/2019-10/8050891248624f2bbefedcb196ce89cb.jpeg diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index a6bdd82..13cb09f 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -143,6 +143,18 @@ } /** + * 声光报警开关状态 + */ + suspend fun getAlarmState(): String { + val host = SaveKeyValues.getValue(LocaleConstant.UDP_HOST, "192.168.10.133").toString() + val regionApi by lazy { + val httpConfig = "http://${host}:5000" + RetrofitFactory.createRetrofit(httpConfig) + } + return regionApi.getAlarmState() + } + + /** * 上传图片 */ suspend fun uploadImage(image: File): String { diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index ef91670..92c41d8 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -133,6 +133,12 @@ suspend fun changeAlarmState(@Body requestBody: RequestBody): String /** + * 声光报警开关状态 + */ + @GET("/GetCurrentState") + suspend fun getAlarmState(): String + + /** * 上传图片 * 系统路径static拼接图片返回路径 * http://xx.com/static/2019-10/8050891248624f2bbefedcb196ce89cb.jpeg diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index a6bdd82..13cb09f 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -143,6 +143,18 @@ } /** + * 声光报警开关状态 + */ + suspend fun getAlarmState(): String { + val host = SaveKeyValues.getValue(LocaleConstant.UDP_HOST, "192.168.10.133").toString() + val regionApi by lazy { + val httpConfig = "http://${host}:5000" + RetrofitFactory.createRetrofit(httpConfig) + } + return regionApi.getAlarmState() + } + + /** * 上传图片 */ suspend fun uploadImage(image: File): String { diff --git a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt index edfc98f..2ee2c03 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt @@ -352,8 +352,8 @@ } override fun onDestroy() { - super.onDestroy() connectivityManager?.bindProcessToNetwork(null) connectivityManager?.unregisterNetworkCallback(networkCallback) + super.onDestroy() } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index ef91670..92c41d8 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -133,6 +133,12 @@ suspend fun changeAlarmState(@Body requestBody: RequestBody): String /** + * 声光报警开关状态 + */ + @GET("/GetCurrentState") + suspend fun getAlarmState(): String + + /** * 上传图片 * 系统路径static拼接图片返回路径 * http://xx.com/static/2019-10/8050891248624f2bbefedcb196ce89cb.jpeg diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index a6bdd82..13cb09f 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -143,6 +143,18 @@ } /** + * 声光报警开关状态 + */ + suspend fun getAlarmState(): String { + val host = SaveKeyValues.getValue(LocaleConstant.UDP_HOST, "192.168.10.133").toString() + val regionApi by lazy { + val httpConfig = "http://${host}:5000" + RetrofitFactory.createRetrofit(httpConfig) + } + return regionApi.getAlarmState() + } + + /** * 上传图片 */ suspend fun uploadImage(image: File): String { diff --git a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt index edfc98f..2ee2c03 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt @@ -352,8 +352,8 @@ } override fun onDestroy() { - super.onDestroy() connectivityManager?.bindProcessToNetwork(null) connectivityManager?.unregisterNetworkCallback(networkCallback) + super.onDestroy() } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt index 5fcd595..0e34bff 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt @@ -23,7 +23,6 @@ import com.pengxh.kt.lite.extensions.getSystemService import com.pengxh.kt.lite.extensions.show import com.pengxh.kt.lite.utils.SaveKeyValues -import com.pengxh.kt.lite.vm.LoadState import com.pengxh.kt.lite.widget.SteeringWheelController import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.pengxh.kt.lite.widget.dialog.BottomActionSheet @@ -68,6 +67,10 @@ deviceViewModel = ViewModelProvider(this)[DeviceViewModel::class.java] alarmViewModel = ViewModelProvider(this)[AlarmViewModel::class.java] + alarmViewModel.alarmState.observe(this) { + warningSwitch.isChecked = it == "1" + } + alarmViewModel.getAlarmState() val gasParam = configSelectView.text.toString().splitGasParam() deviceViewModel.getMethaneThreshold(gasParam[0], gasParam[1]) @@ -144,14 +147,11 @@ }).build().show() } - warningSwitch.setOnCheckedChangeListener { buttonView, isChecked -> - buttonView.isChecked = false + warningSwitch.setOnClickListener { val gasParam = configSelectView.text.toString().splitGasParam() - if (isChecked) { - //开 + if (warningSwitch.isChecked) { alarmViewModel.changeAlarmState(gasParam[0], "1") } else { - //关 alarmViewModel.changeAlarmState(gasParam[0], "0") } } @@ -243,12 +243,7 @@ override fun initLayoutView(): Int = R.layout.activity_methane override fun observeRequestState() { - alarmViewModel.loadState.observe(this) { - when (it) { - LoadState.Success -> warningSwitch.isChecked = true - else -> warningSwitch.isChecked = false - } - } + } override fun setupTopBarLayout() { @@ -261,8 +256,9 @@ } override fun onDestroy() { - super.onDestroy() + udpClient.release() connectivityManager?.bindProcessToNetwork(null) connectivityManager?.unregisterNetworkCallback(networkCallback) + super.onDestroy() } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index ef91670..92c41d8 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -133,6 +133,12 @@ suspend fun changeAlarmState(@Body requestBody: RequestBody): String /** + * 声光报警开关状态 + */ + @GET("/GetCurrentState") + suspend fun getAlarmState(): String + + /** * 上传图片 * 系统路径static拼接图片返回路径 * http://xx.com/static/2019-10/8050891248624f2bbefedcb196ce89cb.jpeg diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index a6bdd82..13cb09f 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -143,6 +143,18 @@ } /** + * 声光报警开关状态 + */ + suspend fun getAlarmState(): String { + val host = SaveKeyValues.getValue(LocaleConstant.UDP_HOST, "192.168.10.133").toString() + val regionApi by lazy { + val httpConfig = "http://${host}:5000" + RetrofitFactory.createRetrofit(httpConfig) + } + return regionApi.getAlarmState() + } + + /** * 上传图片 */ suspend fun uploadImage(image: File): String { diff --git a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt index edfc98f..2ee2c03 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt @@ -352,8 +352,8 @@ } override fun onDestroy() { - super.onDestroy() connectivityManager?.bindProcessToNetwork(null) connectivityManager?.unregisterNetworkCallback(networkCallback) + super.onDestroy() } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt index 5fcd595..0e34bff 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt @@ -23,7 +23,6 @@ import com.pengxh.kt.lite.extensions.getSystemService import com.pengxh.kt.lite.extensions.show import com.pengxh.kt.lite.utils.SaveKeyValues -import com.pengxh.kt.lite.vm.LoadState import com.pengxh.kt.lite.widget.SteeringWheelController import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.pengxh.kt.lite.widget.dialog.BottomActionSheet @@ -68,6 +67,10 @@ deviceViewModel = ViewModelProvider(this)[DeviceViewModel::class.java] alarmViewModel = ViewModelProvider(this)[AlarmViewModel::class.java] + alarmViewModel.alarmState.observe(this) { + warningSwitch.isChecked = it == "1" + } + alarmViewModel.getAlarmState() val gasParam = configSelectView.text.toString().splitGasParam() deviceViewModel.getMethaneThreshold(gasParam[0], gasParam[1]) @@ -144,14 +147,11 @@ }).build().show() } - warningSwitch.setOnCheckedChangeListener { buttonView, isChecked -> - buttonView.isChecked = false + warningSwitch.setOnClickListener { val gasParam = configSelectView.text.toString().splitGasParam() - if (isChecked) { - //开 + if (warningSwitch.isChecked) { alarmViewModel.changeAlarmState(gasParam[0], "1") } else { - //关 alarmViewModel.changeAlarmState(gasParam[0], "0") } } @@ -243,12 +243,7 @@ override fun initLayoutView(): Int = R.layout.activity_methane override fun observeRequestState() { - alarmViewModel.loadState.observe(this) { - when (it) { - LoadState.Success -> warningSwitch.isChecked = true - else -> warningSwitch.isChecked = false - } - } + } override fun setupTopBarLayout() { @@ -261,8 +256,9 @@ } override fun onDestroy() { - super.onDestroy() + udpClient.release() connectivityManager?.bindProcessToNetwork(null) connectivityManager?.unregisterNetworkCallback(networkCallback) + super.onDestroy() } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/vm/AlarmViewModel.kt b/app/src/main/java/com/casic/br/operationsite/vm/AlarmViewModel.kt index cdea1f6..1a802fb 100644 --- a/app/src/main/java/com/casic/br/operationsite/vm/AlarmViewModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/vm/AlarmViewModel.kt @@ -14,12 +14,14 @@ import com.pengxh.kt.lite.extensions.show import com.pengxh.kt.lite.vm.BaseViewModel import com.pengxh.kt.lite.vm.LoadState +import org.json.JSONObject class AlarmViewModel : BaseViewModel() { private val gson = Gson() val alarmModel = MutableLiveData() val detailModel = MutableLiveData() + val alarmState = MutableLiveData() fun obtainAlarmListByPage(keywords: String, page: Int) = launch({ loadState.value = LoadState.Loading @@ -59,6 +61,22 @@ it.printStackTrace() }) + fun getAlarmState() = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getAlarmState() + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + alarmState.value = JSONObject(response).getString("message") + loadState.value = LoadState.Success + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.printStackTrace() + }) + fun changeAlarmState(deviceIp: String, state: String) = launch({ loadState.value = LoadState.Loading val response = RetrofitServiceManager.changeAlarmState(deviceIp, state) diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index ef91670..92c41d8 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -133,6 +133,12 @@ suspend fun changeAlarmState(@Body requestBody: RequestBody): String /** + * 声光报警开关状态 + */ + @GET("/GetCurrentState") + suspend fun getAlarmState(): String + + /** * 上传图片 * 系统路径static拼接图片返回路径 * http://xx.com/static/2019-10/8050891248624f2bbefedcb196ce89cb.jpeg diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index a6bdd82..13cb09f 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -143,6 +143,18 @@ } /** + * 声光报警开关状态 + */ + suspend fun getAlarmState(): String { + val host = SaveKeyValues.getValue(LocaleConstant.UDP_HOST, "192.168.10.133").toString() + val regionApi by lazy { + val httpConfig = "http://${host}:5000" + RetrofitFactory.createRetrofit(httpConfig) + } + return regionApi.getAlarmState() + } + + /** * 上传图片 */ suspend fun uploadImage(image: File): String { diff --git a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt index edfc98f..2ee2c03 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt @@ -352,8 +352,8 @@ } override fun onDestroy() { - super.onDestroy() connectivityManager?.bindProcessToNetwork(null) connectivityManager?.unregisterNetworkCallback(networkCallback) + super.onDestroy() } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt index 5fcd595..0e34bff 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt @@ -23,7 +23,6 @@ import com.pengxh.kt.lite.extensions.getSystemService import com.pengxh.kt.lite.extensions.show import com.pengxh.kt.lite.utils.SaveKeyValues -import com.pengxh.kt.lite.vm.LoadState import com.pengxh.kt.lite.widget.SteeringWheelController import com.pengxh.kt.lite.widget.dialog.AlertInputDialog import com.pengxh.kt.lite.widget.dialog.BottomActionSheet @@ -68,6 +67,10 @@ deviceViewModel = ViewModelProvider(this)[DeviceViewModel::class.java] alarmViewModel = ViewModelProvider(this)[AlarmViewModel::class.java] + alarmViewModel.alarmState.observe(this) { + warningSwitch.isChecked = it == "1" + } + alarmViewModel.getAlarmState() val gasParam = configSelectView.text.toString().splitGasParam() deviceViewModel.getMethaneThreshold(gasParam[0], gasParam[1]) @@ -144,14 +147,11 @@ }).build().show() } - warningSwitch.setOnCheckedChangeListener { buttonView, isChecked -> - buttonView.isChecked = false + warningSwitch.setOnClickListener { val gasParam = configSelectView.text.toString().splitGasParam() - if (isChecked) { - //开 + if (warningSwitch.isChecked) { alarmViewModel.changeAlarmState(gasParam[0], "1") } else { - //关 alarmViewModel.changeAlarmState(gasParam[0], "0") } } @@ -243,12 +243,7 @@ override fun initLayoutView(): Int = R.layout.activity_methane override fun observeRequestState() { - alarmViewModel.loadState.observe(this) { - when (it) { - LoadState.Success -> warningSwitch.isChecked = true - else -> warningSwitch.isChecked = false - } - } + } override fun setupTopBarLayout() { @@ -261,8 +256,9 @@ } override fun onDestroy() { - super.onDestroy() + udpClient.release() connectivityManager?.bindProcessToNetwork(null) connectivityManager?.unregisterNetworkCallback(networkCallback) + super.onDestroy() } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/vm/AlarmViewModel.kt b/app/src/main/java/com/casic/br/operationsite/vm/AlarmViewModel.kt index cdea1f6..1a802fb 100644 --- a/app/src/main/java/com/casic/br/operationsite/vm/AlarmViewModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/vm/AlarmViewModel.kt @@ -14,12 +14,14 @@ import com.pengxh.kt.lite.extensions.show import com.pengxh.kt.lite.vm.BaseViewModel import com.pengxh.kt.lite.vm.LoadState +import org.json.JSONObject class AlarmViewModel : BaseViewModel() { private val gson = Gson() val alarmModel = MutableLiveData() val detailModel = MutableLiveData() + val alarmState = MutableLiveData() fun obtainAlarmListByPage(keywords: String, page: Int) = launch({ loadState.value = LoadState.Loading @@ -59,6 +61,22 @@ it.printStackTrace() }) + fun getAlarmState() = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getAlarmState() + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + alarmState.value = JSONObject(response).getString("message") + loadState.value = LoadState.Success + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.printStackTrace() + }) + fun changeAlarmState(deviceIp: String, state: String) = launch({ loadState.value = LoadState.Loading val response = RetrofitServiceManager.changeAlarmState(deviceIp, state) diff --git a/app/src/main/java/com/casic/br/operationsite/vm/UserDetailViewModel.kt b/app/src/main/java/com/casic/br/operationsite/vm/UserDetailViewModel.kt index aaaee65..3d55f1a 100644 --- a/app/src/main/java/com/casic/br/operationsite/vm/UserDetailViewModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/vm/UserDetailViewModel.kt @@ -35,7 +35,7 @@ flag.value = false } }, { - it.cause.toString().show(BaseApplication.get()) + "网络不稳定,无法登陆".show(BaseApplication.get()) it.printStackTrace() }) } \ No newline at end of file