|
@@ -3,10 +3,7 @@ package com.develop.step.ui
|
|
|
import android.annotation.SuppressLint
|
|
|
import android.os.Bundle
|
|
|
import android.util.Log
|
|
|
-import android.view.KeyEvent
|
|
|
-import android.view.LayoutInflater
|
|
|
-import android.view.MotionEvent
|
|
|
-import android.view.View
|
|
|
+import android.view.*
|
|
|
import com.alibaba.android.arouter.facade.annotation.Route
|
|
|
import com.develop.base.util.ThreadUtils
|
|
|
import com.develop.common.data_repo.db.ModesType
|
|
@@ -109,7 +106,7 @@ class ModesDetailActivity : CommonBVMActivity<ActivityModeDetailBinding, ModesVi
|
|
|
var lastKeyTime = 0L
|
|
|
override fun dispatchKeyEvent(event: KeyEvent): Boolean {
|
|
|
val spend = (System.currentTimeMillis() - lastKeyTime);
|
|
|
- if( spend < 10){
|
|
|
+ if (spend < 10) {
|
|
|
return super.dispatchKeyEvent(event);
|
|
|
}
|
|
|
lastKeyTime = System.currentTimeMillis();
|
|
@@ -329,7 +326,7 @@ class ModesDetailActivity : CommonBVMActivity<ActivityModeDetailBinding, ModesVi
|
|
|
isTempChange
|
|
|
)
|
|
|
updateTimeUI(
|
|
|
- if(currDevInfo.status == DevStatus.STOP.toInt() || userChanging) minTime else 0,
|
|
|
+ if (currDevInfo.status == DevStatus.STOP.toInt() || userChanging) minTime else 0,
|
|
|
maxTime,
|
|
|
if (currDevInfo.status == DevStatus.STOP.toInt()) currDevInfo.targetTime
|
|
|
else currDevInfo.remainTime,
|
|
@@ -389,57 +386,92 @@ class ModesDetailActivity : CommonBVMActivity<ActivityModeDetailBinding, ModesVi
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private fun initModeData() {
|
|
|
+ var turboLock = false;
|
|
|
+ private fun initModeData(keep: Boolean = false) {
|
|
|
+ userChanging = false
|
|
|
viewModel.modeType.apply {
|
|
|
val baseMode = CofarSDK.devMode(this)
|
|
|
//显示对应模式UI
|
|
|
if (this == ModesType.WIGHT.name) {
|
|
|
+ CofarSDK.recordConfig()
|
|
|
//称重模式
|
|
|
viewModel.changeStep(CookSettingType.WEIGHT)
|
|
|
- CofarSDK.changeMode(baseMode)
|
|
|
- } else if (this == ModesType.TURBO.name) {
|
|
|
- viewModel.changeStep(CookSettingType.TURBO)
|
|
|
- CofarSDK.changeMode(baseMode)
|
|
|
+ window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
|
|
|
+// CofarSDK.changeMode(baseMode)
|
|
|
} else {
|
|
|
- //其他模式
|
|
|
+ window.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
|
|
|
changeCommonStep()
|
|
|
- viewModel.changeStep(CookSettingType.TEMP_SETTING)
|
|
|
- CofarSDK.changeMode(this, baseMode)
|
|
|
- currDevInfo.apply {
|
|
|
- targetTemp = baseMode.maxTemp.toShort()
|
|
|
- motorDirection = baseMode.motorDirection.toByte()
|
|
|
- motorGear = baseMode.defaultMotorGear.toByte()
|
|
|
- targetTime = baseMode.defaultTime.toInt()
|
|
|
- }
|
|
|
-
|
|
|
- baseMode.apply {
|
|
|
- currentTemp = defaultTemp
|
|
|
- updateTempUI(
|
|
|
- minTemp.toFloat(),
|
|
|
- maxTemp.toFloat(),
|
|
|
- defaultTemp,
|
|
|
- defaultTemp.toString(),
|
|
|
- isTempChange,
|
|
|
- true
|
|
|
- )
|
|
|
-
|
|
|
- currTime = defaultTime.toLong()
|
|
|
- updateTimeUI(
|
|
|
- minTime, maxTime, defaultTime, defaultTime.toLong(), isTimeChange, true
|
|
|
- )
|
|
|
-
|
|
|
- currentMotorGer = defaultMotorGear
|
|
|
- updateMotorGearUI(
|
|
|
- minMotorGear.toFloat(),
|
|
|
- maxMotorGear.toFloat(),
|
|
|
- defaultMotorGear,
|
|
|
- isMotorGearChange
|
|
|
- )
|
|
|
-
|
|
|
- updateMotorDirectionUI(motorDirection, isMotorDirectionChange)
|
|
|
+ if (CofarSDK.devInfo().status != DevStatus.PAUSE.toInt()) {
|
|
|
+ var targetTemp = baseMode.defaultTemp.toShort()
|
|
|
+ var motorDirection = baseMode.motorDirection.toByte()
|
|
|
+ var motorGear = baseMode.defaultMotorGear.toByte()
|
|
|
+ var targetTime = baseMode.defaultTime.toInt()
|
|
|
+
|
|
|
+ var restoreConfig: DevInfo? = null
|
|
|
+
|
|
|
+ if (this == ModesType.TURBO.name) {
|
|
|
+ CofarSDK.recordConfig()
|
|
|
+ changeSpeedSettingStep()
|
|
|
+ CofarSDK.changeMode(baseMode)
|
|
|
+ } else {
|
|
|
+ //其他模式
|
|
|
+ turboLock = false;
|
|
|
+ viewModel.changeStep(CookSettingType.TEMP_SETTING)
|
|
|
+ if (keep) {
|
|
|
+ restoreConfig = CofarSDK.changeMode(this, baseMode, true)
|
|
|
+
|
|
|
+ if (restoreConfig != null) {
|
|
|
+ targetTemp = restoreConfig.targetTemp;
|
|
|
+ motorDirection = restoreConfig.motorDirection;
|
|
|
+ motorGear = restoreConfig.motorGear;
|
|
|
+ targetTime = restoreConfig.targetTime;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ CofarSDK.changeMode(this, baseMode)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ currDevInfo.apply {
|
|
|
+ targetTemp = baseMode.defaultTemp.toShort()
|
|
|
+ motorDirection = baseMode.motorDirection.toByte()
|
|
|
+ motorGear = baseMode.defaultMotorGear.toByte()
|
|
|
+ targetTime = baseMode.defaultTime.toInt()
|
|
|
+ }
|
|
|
|
|
|
- updateWeightUI(currDevInfo.weight.toFloat())
|
|
|
+ baseMode.apply {
|
|
|
+ currentTemp = CofarSDK.devInfo().targetTemp.toInt()
|
|
|
+ updateTempUI(
|
|
|
+ minTemp.toFloat(),
|
|
|
+ maxTemp.toFloat(),
|
|
|
+ CofarSDK.devInfo().temp.toInt(),
|
|
|
+ targetTemp.toString(),
|
|
|
+ isTempChange,
|
|
|
+ true
|
|
|
+ )
|
|
|
+
|
|
|
+ currTime = defaultTime.toLong()
|
|
|
+ updateTimeUI(
|
|
|
+ minTime,
|
|
|
+ maxTime,
|
|
|
+ defaultTime,
|
|
|
+ targetTime.toLong(),
|
|
|
+ isTimeChange,
|
|
|
+ true
|
|
|
+ )
|
|
|
+
|
|
|
+ currentMotorGer = defaultMotorGear
|
|
|
+ updateMotorGearUI(
|
|
|
+ minMotorGear.toFloat(),
|
|
|
+ maxMotorGear.toFloat(),
|
|
|
+ motorGear.toInt(),
|
|
|
+ isMotorGearChange
|
|
|
+ )
|
|
|
+
|
|
|
+ updateMotorDirectionUI(motorDirection.toInt(), isMotorDirectionChange)
|
|
|
+
|
|
|
+ updateWeightUI(currDevInfo.weight.toFloat())
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
initModeData = true
|
|
|
}
|
|
@@ -738,14 +770,24 @@ class ModesDetailActivity : CommonBVMActivity<ActivityModeDetailBinding, ModesVi
|
|
|
private fun handleRotateTimeChange(c: Int) {
|
|
|
ThreadUtils.runOnMainThread {
|
|
|
//当前调节时间
|
|
|
- var targetTime = currDevInfo.targetTime
|
|
|
- if (currDevInfo.remainTime != 0) {
|
|
|
- targetTime = currDevInfo.remainTime
|
|
|
+ var targetTime = currDevInfo.targetTime.toInt()
|
|
|
+ if (currDevInfo.remainTime.toInt() != 0) {
|
|
|
+ targetTime = currDevInfo.remainTime.toInt()
|
|
|
}
|
|
|
- if (currDevInfo.targetTimeBuffer != -1) {
|
|
|
- targetTime = currDevInfo.targetTimeBuffer
|
|
|
+ if (currDevInfo.targetTimeBuffer.toInt() != -1) {
|
|
|
+ targetTime = currDevInfo.targetTimeBuffer.toInt()
|
|
|
}
|
|
|
targetTime += c
|
|
|
+
|
|
|
+
|
|
|
+ if (targetTime < currDevInfo.mode.minTime) { //处理边界
|
|
|
+ targetTime = currDevInfo.mode.minTime
|
|
|
+ }
|
|
|
+
|
|
|
+ if (targetTime > currDevInfo.mode.maxTime) { //处理边界
|
|
|
+ targetTime = currDevInfo.mode.maxTime
|
|
|
+ }
|
|
|
+
|
|
|
if (targetTime < 0) {
|
|
|
targetTime = 0;
|
|
|
}
|
|
@@ -779,22 +821,20 @@ class ModesDetailActivity : CommonBVMActivity<ActivityModeDetailBinding, ModesVi
|
|
|
}
|
|
|
}
|
|
|
rollTimeEvent(hour, min, sec, time, setByUser = true)
|
|
|
+
|
|
|
currDevInfo.apply {
|
|
|
updateTimeUI(
|
|
|
mode.minTime,
|
|
|
mode.maxTime,
|
|
|
- remainTime,
|
|
|
+ remainTime.toInt(),
|
|
|
targetTime.toLong(),
|
|
|
true
|
|
|
)
|
|
|
+ binding.apply {
|
|
|
+ clSetTime.setTimeInternal(hour, min, sec, true, true)
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
- binding.clSetTime.setTimeInternal(
|
|
|
- hour,
|
|
|
- min,
|
|
|
- sec,
|
|
|
- changeSetting = true,
|
|
|
- setByUser = true
|
|
|
- )
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -866,9 +906,9 @@ class ModesDetailActivity : CommonBVMActivity<ActivityModeDetailBinding, ModesVi
|
|
|
var hours = 0
|
|
|
var minute = 0
|
|
|
var sec = 0
|
|
|
- if (remainTime > 3600) {
|
|
|
+ if (remainTime > ( 91 * 60)) {
|
|
|
hours = remainTime / 3600
|
|
|
- minute = remainTime % 3600 / 60
|
|
|
+ minute = remainTime % 3600 / 60
|
|
|
} else {
|
|
|
minute = remainTime / 60
|
|
|
sec = remainTime % 60
|
|
@@ -1114,7 +1154,7 @@ class ModesDetailActivity : CommonBVMActivity<ActivityModeDetailBinding, ModesVi
|
|
|
* 点击称重操作
|
|
|
*/
|
|
|
private fun weightClick() {
|
|
|
- // CofarSDK.stop(false)
|
|
|
+ // CofarSDK.stop(false)
|
|
|
modeChange = true
|
|
|
viewModel.modeType = ModesType.WIGHT.name
|
|
|
initModeData()
|
|
@@ -1155,13 +1195,26 @@ class ModesDetailActivity : CommonBVMActivity<ActivityModeDetailBinding, ModesVi
|
|
|
* 点击返回按钮操作
|
|
|
*/
|
|
|
private fun backClick() {
|
|
|
+ val devInfo = CofarSDK.devInfo();
|
|
|
+
|
|
|
if (modeChange) {
|
|
|
+ if(viewModel.modeType == ModesType.TURBO.name){ //TURBO未停止之前不能退出
|
|
|
+ CofarSDK.stop(false)
|
|
|
+ if(DevStatus.STOP != devInfo.status.toByte()){
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ //先注释掉,忘记有什么用了
|
|
|
+// turboLock = true
|
|
|
+// ThreadUtils.runOnMainThread({turboLock = false},2000);
|
|
|
+ }
|
|
|
+ var cm = viewModel.modeType;
|
|
|
viewModel.modeType = viewModel.lastModeType
|
|
|
binding.tvModeName.text = viewModel.getModeTitle(resources)
|
|
|
binding.ivBanner.setBackgroundResource(viewModel.getBanner())
|
|
|
modeChange = false
|
|
|
- binding.llTurboView.visibility = View.GONE
|
|
|
- initModeData()
|
|
|
+ binding.ivTurboView.visibility = View.GONE
|
|
|
+ initModeData(cm == ModesType.WIGHT.name || cm == ModesType.TURBO.name)
|
|
|
changeCommonStep()
|
|
|
} else if (mRunningState != 0 && viewModel.modeType != ModesType.WIGHT.name && viewModel.modeType != ModesType.TURBO.name) {
|
|
|
if (CofarSDK.devInfo().runningInstId == viewModel.modeType) backRequestDialog.show(
|