feat(activity): 新增 canteenId 持久化存储,HomeActivity 切换食堂时同步写入 SpTool 并恢复选中状态

This commit is contained in:
2026-05-08 11:50:22 +08:00
parent 979b93c53d
commit c46264a4cf
3 changed files with 17 additions and 6 deletions
@@ -42,12 +42,14 @@ class HomeActivity : BaseActivity() {
binding = ActivityHomeBinding.inflate(layoutInflater) binding = ActivityHomeBinding.inflate(layoutInflater)
setContentView(binding.root) setContentView(binding.root)
setHeaderBackground(isHomePage = true) setHeaderBackground(isHomePage = true)
// 根据当前 canteenId 恢复 RadioButton 选中状态
binding.radioGroup.check(
if (BaseApp.canteenId == "1678234139391512577") R.id.radioSw else R.id.radioZk
)
binding.radioGroup.setOnCheckedChangeListener { group, checkedId -> binding.radioGroup.setOnCheckedChangeListener { group, checkedId ->
if (checkedId == R.id.radioSw) { val id = if (checkedId == R.id.radioSw) "1678234139391512577" else "0"
BaseApp.canteenId = "1678234139391512577" SpTool.canteenId = id
} else { BaseApp.canteenId = id
BaseApp.canteenId = "0"
}
} }
onBackPressedDispatcher.addCallback(this) {} onBackPressedDispatcher.addCallback(this) {}
// binding.radioGroup.check(R.id.radioZk) // binding.radioGroup.check(R.id.radioZk)
@@ -80,7 +80,7 @@ class InitActivity : BaseActivity() {
setHeaderBgVisible(false) setHeaderBgVisible(false)
BaseApp.appVersion = AppUtil.getAppVersionCode(this).toString() BaseApp.appVersion = AppUtil.getAppVersionCode(this).toString()
BaseApp.canteenId = "0" BaseApp.canteenId = SpTool.canteenId
WeightUtil.init() WeightUtil.init()
WeightUtil.getWeight() WeightUtil.getWeight()
@@ -13,6 +13,8 @@ object SpTool {
const val DEVICE_ROLE = "deviceRole" const val DEVICE_ROLE = "deviceRole"
/** 秤串口路径,默认 /dev/ttyS7,子设备可能需要配置为其他值 */ /** 秤串口路径,默认 /dev/ttyS7,子设备可能需要配置为其他值 */
const val SCALE_DEVICE_PORT = "scaleDevicePort" const val SCALE_DEVICE_PORT = "scaleDevicePort"
/** 食堂 ID,默认 "0" */
const val CANTEEN_ID = "canteenId"
val pref = BaseApp.getSharedPref()!! val pref = BaseApp.getSharedPref()!!
@@ -37,4 +39,11 @@ object SpTool {
set(value) { set(value) {
put(LAUNCH_PAGE_TYPE, value) put(LAUNCH_PAGE_TYPE, value)
} }
/** 食堂 ID,持久化存储,默认 "0" */
var canteenId: String
get() = getString(CANTEEN_ID, "0")
set(value) {
put(CANTEEN_ID, value)
}
} }