diff --git a/app/src/main/java/com/sw/platecabinet/activity/LoginByFaceActivity.kt b/app/src/main/java/com/sw/platecabinet/activity/LoginByFaceActivity.kt index a190d0a..ca27479 100644 --- a/app/src/main/java/com/sw/platecabinet/activity/LoginByFaceActivity.kt +++ b/app/src/main/java/com/sw/platecabinet/activity/LoginByFaceActivity.kt @@ -453,10 +453,10 @@ class LoginByFaceActivity : BaseActivity(), // 餐盘已空,播放无盘提示音 SoundPoolUtil.getInstance().play(NO_PLATE_REMIND, 0) //跳转到餐盘设置页面 - PlcSettingActivity.start(this@LoginByFaceActivity) + PlcSettingActivity.start(this@LoginByFaceActivity, showTips = true) } else { loadLogInfo("collectFace,checkRemainingPlate: 剩余餐盘,继续使用") - goInitActivity () + goInitActivity() } } diff --git a/app/src/main/java/com/sw/platecabinet/activity/PlcSettingActivity.kt b/app/src/main/java/com/sw/platecabinet/activity/PlcSettingActivity.kt index 0478878..625f3f0 100644 --- a/app/src/main/java/com/sw/platecabinet/activity/PlcSettingActivity.kt +++ b/app/src/main/java/com/sw/platecabinet/activity/PlcSettingActivity.kt @@ -24,11 +24,17 @@ import kotlinx.coroutines.withContext class PlcSettingActivity : BaseActivity() { companion object { + /** Intent Extra 键:是否显示 tips 界面 */ + private const val EXTRA_SHOW_TIPS = "extra_show_tips" + /** * 启动 PlcSettingActivity + * @param showTips 是否显示 tips 界面(暂无餐盘提示) */ - fun start(context: Context) { - context.startActivity(Intent(context, PlcSettingActivity::class.java)) + fun start(context: Context, showTips: Boolean = false) { + val intent = Intent(context, PlcSettingActivity::class.java) + intent.putExtra(EXTRA_SHOW_TIPS, showTips) + context.startActivity(intent) } } @@ -42,9 +48,15 @@ class PlcSettingActivity : BaseActivity() { } override fun initialize() { + // 根据传入参数控制 tips 界面显示 + val showTips = intent.getBooleanExtra(EXTRA_SHOW_TIPS, false) + binding.layoutTips.visibility = + if (showTips) android.view.View.VISIBLE else android.view.View.GONE + initConnectButtons() initOutPlateButton() initPlatformButtons() + initPlatformResetButton() initAlarmButton() initParamButtons() initStatusButton() @@ -183,6 +195,37 @@ class PlcSettingActivity : BaseActivity() { // ==================== 故障处理 ==================== + /** + * 初始化平台复位按钮:先执行平台上升,成功后自动执行返回营业 + */ + private fun initPlatformResetButton() { + binding.btnPlatformReset.clickWithDebounce { + showWaitingDialog("正在复位平台……") + PlcHelper.getInstance(this).platformUp(object : PlcCallback { + override fun onSuccess(result: String) { + // 平台上升完成,继续执行返回营业 + PlcHelper.getInstance(this@PlcSettingActivity).backToBusiness(object : PlcCallback { + override fun onSuccess(result: String) { + hideWaitingDialog() + ToastUtils.showToast("平台复位成功") + finish() + } + + override fun onError(message: String) { + hideWaitingDialog() + ToastUtils.showToast("返回营业失败:$message") + } + }) + } + + override fun onError(message: String) { + hideWaitingDialog() + ToastUtils.showToast("平台上升失败:$message") + } + }) + } + } + /** * 初始化故障复位按钮 */ diff --git a/app/src/main/res/layout/activity_plc_setting.xml b/app/src/main/res/layout/activity_plc_setting.xml index 5061d6a..b84673f 100644 --- a/app/src/main/res/layout/activity_plc_setting.xml +++ b/app/src/main/res/layout/activity_plc_setting.xml @@ -11,6 +11,29 @@ android:id="@+id/includeHeader" layout="@layout/item_title_time" /> + + + + + + + + +