feat(setting): 添加净菜包功能并优化设置页面
- 在BaseApp中新增ScaleDeviceConfig、AppUtil等依赖导入 - 恢复InitActivity中的原有路由逻辑,移除HomeV2Activity跳转 - 移除SettingActivity中设置项的硬编码标题,改用枚举默认值 - 新增CLEAN_PACKAGE、MEAL_PACKAGE、MEAL_PACKAGE_TEST三种设置类型 - 为净菜包功能添加对应的页面跳转逻辑 - 隐藏数据库查看、秤数据监控等调试功能项
This commit is contained in:
@@ -7,8 +7,12 @@ import android.content.Intent
|
|||||||
import android.content.IntentFilter
|
import android.content.IntentFilter
|
||||||
import android.content.SharedPreferences
|
import android.content.SharedPreferences
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
import android.util.Log
|
||||||
|
import com.shuwei.dish.match.BuildConfig
|
||||||
import com.shuwei.dish.match.R
|
import com.shuwei.dish.match.R
|
||||||
import com.shuwei.dish.match.db.DatabaseProvider
|
import com.shuwei.dish.match.db.DatabaseProvider
|
||||||
|
import com.shuwei.dish.match.scale.ScaleDeviceConfig
|
||||||
|
import com.shuwei.dish.match.utils.AppUtil
|
||||||
import com.shuwei.dish.match.utils.BootReceiver
|
import com.shuwei.dish.match.utils.BootReceiver
|
||||||
import com.shuwei.dish.match.utils.CrashHandler
|
import com.shuwei.dish.match.utils.CrashHandler
|
||||||
import com.shuwei.dish.match.utils.SpTool
|
import com.shuwei.dish.match.utils.SpTool
|
||||||
|
|||||||
@@ -11,30 +11,24 @@ package com.shuwei.dish.match.model
|
|||||||
*/
|
*/
|
||||||
data class SettingItem(
|
data class SettingItem(
|
||||||
val type: Type,
|
val type: Type,
|
||||||
val title: String,
|
val title: String = type.label,
|
||||||
val subtitle: String? = null,
|
val subtitle: String? = null,
|
||||||
val isHidden: Boolean = false,
|
val isHidden: Boolean = false,
|
||||||
val onClick: () -> Unit
|
val onClick: () -> Unit
|
||||||
) {
|
) {
|
||||||
/** 设置菜单项类型枚举 */
|
/** 设置菜单项类型枚举 */
|
||||||
enum class Type {
|
enum class Type(val label: String) {
|
||||||
/** 菜品模式切换 */
|
COOK_MODE("菜品模式"),
|
||||||
COOK_MODE,
|
SEASONING_CONFIG("调料区设置"),
|
||||||
/** 调料区设置 */
|
FOOD_COLLECT("食材采集"),
|
||||||
SEASONING_CONFIG,
|
WEIGHT_CONFIG("减重配置"),
|
||||||
/** 食材采集 */
|
CLEAN_PACKAGE("净菜包"),
|
||||||
FOOD_COLLECT,
|
MEAL_PACKAGE("餐品净菜包"),
|
||||||
/** 减重配置 */
|
MEAL_PACKAGE_TEST("餐品净菜包-测试"),
|
||||||
WEIGHT_CONFIG,
|
DB_INSPECT("数据库查看"),
|
||||||
/** 数据库查看(隐藏项) */
|
SCALE_OBSERVE("秤数据监控"),
|
||||||
DB_INSPECT,
|
ENV_SWITCH("切换环境"),
|
||||||
/** 秤数据监控(隐藏项) */
|
CLEAR_DATA("数据清除"),
|
||||||
SCALE_OBSERVE,
|
TEST_SEASONING("测试调料拿取"),
|
||||||
/** 切换环境(隐藏项) */
|
|
||||||
ENV_SWITCH,
|
|
||||||
/** 数据清除(隐藏项) */
|
|
||||||
CLEAR_DATA,
|
|
||||||
/** 测试调料拿取(隐藏项) */
|
|
||||||
TEST_SEASONING,
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -94,21 +94,21 @@ class InitActivity : BaseActivity() {
|
|||||||
// window.decorView.post { finish() }
|
// window.decorView.post { finish() }
|
||||||
// return@launch
|
// return@launch
|
||||||
// }
|
// }
|
||||||
// // 主设备:走原有路由逻辑
|
// 主设备:走原有路由逻辑
|
||||||
// when (SpTool.cookMode) {
|
when (SpTool.cookMode) {
|
||||||
// 0 -> {
|
0 -> {
|
||||||
// startActivity<CookingModeActivity>()
|
startActivity<CookingModeActivity>()
|
||||||
// }
|
}
|
||||||
//
|
|
||||||
// 1 -> {
|
1 -> {
|
||||||
// goSampling()
|
goSampling()
|
||||||
// }
|
}
|
||||||
//
|
|
||||||
// else -> {
|
else -> {
|
||||||
// startActivity<HomeActivity>()
|
startActivity<HomeActivity>()
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
startActivity<HomeV2Activity>()
|
// startActivity<HomeV2Activity>()
|
||||||
// 延迟到下一帧 finish,避免与 LaunchActivityItem 事务竞态导致
|
// 延迟到下一帧 finish,避免与 LaunchActivityItem 事务竞态导致
|
||||||
// "Activity client record must not be null" 偶发崩溃
|
// "Activity client record must not be null" 偶发崩溃
|
||||||
window.decorView.post { finish() }
|
window.decorView.post { finish() }
|
||||||
|
|||||||
@@ -77,7 +77,6 @@ class SettingActivity : BaseActivity() {
|
|||||||
private fun buildAllItems(): List<SettingItem> = listOf(
|
private fun buildAllItems(): List<SettingItem> = listOf(
|
||||||
SettingItem(
|
SettingItem(
|
||||||
type = SettingItem.Type.COOK_MODE,
|
type = SettingItem.Type.COOK_MODE,
|
||||||
title = "菜品模式",
|
|
||||||
subtitle = when (SpTool.cookMode) {
|
subtitle = when (SpTool.cookMode) {
|
||||||
0 -> "当前:制作模式"
|
0 -> "当前:制作模式"
|
||||||
1 -> "当前:采样模式"
|
1 -> "当前:采样模式"
|
||||||
@@ -89,26 +88,46 @@ class SettingActivity : BaseActivity() {
|
|||||||
),
|
),
|
||||||
SettingItem(
|
SettingItem(
|
||||||
type = SettingItem.Type.SEASONING_CONFIG,
|
type = SettingItem.Type.SEASONING_CONFIG,
|
||||||
title = "调料区设置",
|
|
||||||
onClick = {
|
onClick = {
|
||||||
SingleFragmentActivity.start(this, SingleFragmentActivity.PageType.SEASONING_CONFIG)
|
SingleFragmentActivity.start(this, SingleFragmentActivity.PageType.SEASONING_CONFIG)
|
||||||
}
|
}
|
||||||
),
|
),
|
||||||
SettingItem(
|
SettingItem(
|
||||||
type = SettingItem.Type.FOOD_COLLECT,
|
type = SettingItem.Type.FOOD_COLLECT,
|
||||||
title = "食材采集",
|
|
||||||
onClick = { checkCameraPermission() }
|
onClick = { checkCameraPermission() }
|
||||||
),
|
),
|
||||||
SettingItem(
|
SettingItem(
|
||||||
type = SettingItem.Type.WEIGHT_CONFIG,
|
type = SettingItem.Type.WEIGHT_CONFIG,
|
||||||
title = "减重配置",
|
|
||||||
onClick = {
|
onClick = {
|
||||||
SingleFragmentActivity.start(this, SingleFragmentActivity.PageType.WEIGHT_CONFIG)
|
SingleFragmentActivity.start(this, SingleFragmentActivity.PageType.WEIGHT_CONFIG)
|
||||||
}
|
}
|
||||||
),
|
),
|
||||||
|
SettingItem(
|
||||||
|
type = SettingItem.Type.CLEAN_PACKAGE,
|
||||||
|
onClick = {
|
||||||
|
startActivity<CleanPackActivity> {
|
||||||
|
putExtra(CleanPackActivity.EXTRA_TYPE, CleanPackActivity.TYPE_CLEAN)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
),
|
||||||
|
SettingItem(
|
||||||
|
type = SettingItem.Type.MEAL_PACKAGE,
|
||||||
|
onClick = {
|
||||||
|
//startActivity<CleanPackActivity> {
|
||||||
|
// putExtra(CleanPackActivity.EXTRA_TYPE, CleanPackActivity.TYPE_MEAL)
|
||||||
|
//}
|
||||||
|
}
|
||||||
|
),
|
||||||
|
SettingItem(
|
||||||
|
type = SettingItem.Type.MEAL_PACKAGE_TEST,
|
||||||
|
onClick = {
|
||||||
|
startActivity<CleanPackActivity> {
|
||||||
|
putExtra(CleanPackActivity.EXTRA_TYPE, CleanPackActivity.TYPE_MEAL)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
),
|
||||||
SettingItem(
|
SettingItem(
|
||||||
type = SettingItem.Type.DB_INSPECT,
|
type = SettingItem.Type.DB_INSPECT,
|
||||||
title = "数据库查看",
|
|
||||||
isHidden = true,
|
isHidden = true,
|
||||||
onClick = {
|
onClick = {
|
||||||
SingleFragmentActivity.start(this, SingleFragmentActivity.PageType.DB_INSPECT)
|
SingleFragmentActivity.start(this, SingleFragmentActivity.PageType.DB_INSPECT)
|
||||||
@@ -116,25 +135,21 @@ class SettingActivity : BaseActivity() {
|
|||||||
),
|
),
|
||||||
SettingItem(
|
SettingItem(
|
||||||
type = SettingItem.Type.SCALE_OBSERVE,
|
type = SettingItem.Type.SCALE_OBSERVE,
|
||||||
title = "秤数据监控",
|
|
||||||
isHidden = true,
|
isHidden = true,
|
||||||
onClick = { startActivity<MasterScaleActivity>() }
|
onClick = { startActivity<MasterScaleActivity>() }
|
||||||
),
|
),
|
||||||
SettingItem(
|
SettingItem(
|
||||||
type = SettingItem.Type.ENV_SWITCH,
|
type = SettingItem.Type.ENV_SWITCH,
|
||||||
title = "切换环境",
|
|
||||||
isHidden = true,
|
isHidden = true,
|
||||||
onClick = { EnvSwitchDialog(this).show() }
|
onClick = { EnvSwitchDialog(this).show() }
|
||||||
),
|
),
|
||||||
SettingItem(
|
SettingItem(
|
||||||
type = SettingItem.Type.CLEAR_DATA,
|
type = SettingItem.Type.CLEAR_DATA,
|
||||||
title = "数据清除",
|
|
||||||
isHidden = true,
|
isHidden = true,
|
||||||
onClick = { showClearDataDialog() }
|
onClick = { showClearDataDialog() }
|
||||||
),
|
),
|
||||||
SettingItem(
|
SettingItem(
|
||||||
type = SettingItem.Type.TEST_SEASONING,
|
type = SettingItem.Type.TEST_SEASONING,
|
||||||
title = "测试调料拿取",
|
|
||||||
isHidden = true,
|
isHidden = true,
|
||||||
onClick = { startActivity<SubmitFoodActivity> { } }
|
onClick = { startActivity<SubmitFoodActivity> { } }
|
||||||
),
|
),
|
||||||
|
|||||||
Reference in New Issue
Block a user