refactor(network): 引入 RemoteRepository 隔离网络层,AppRepository 支持调料槽位查询

- 新增 RemoteRepository,将 NetViewModel 中直接调用 apiService 的逻辑下沉至仓库层
- NetViewModel 改为依赖注入 RemoteRepository,不再直接接触 apiService
- AppRepository 构造函数增加 SeasoningSlotDao 参数,新增 hasSeasoningSlotConfig() 方法
- AppViewModel 新增 hasSeasoningSlotConfig() 方法,明确区分"调料数据"与"槽位配置"语义
- 同步更新 6 个 Activity 的 AppFactory 构造调用,传入 seasoningSlotDao

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-22 18:31:38 +08:00
co-authored by Claude Sonnet 4.6
parent 0498501b33
commit 75830b9204
12 changed files with 172 additions and 54 deletions
@@ -102,7 +102,7 @@ class DishSamplingActivity : BaseActivity() {
private fun initViewModel() {
val db = BaseApp.instance!!.database
val factory =
AppFactory(AppRepository(db.appDao()))
AppFactory(AppRepository(db.appDao(), db.seasoningSlotDao()))
appViewModel =
ViewModelProvider(this, factory)[AppViewModel::class.java]
}
@@ -138,7 +138,7 @@ class HomeActivity : BaseActivity() {
private fun initViewModel() {
val db = BaseApp.instance!!.database
val factory = AppFactory(AppRepository(db.appDao()))
val factory = AppFactory(AppRepository(db.appDao(), db.seasoningSlotDao()))
appViewModel = ViewModelProvider(this, factory)[AppViewModel::class.java]
}
@@ -70,7 +70,7 @@ class InitActivity : BaseActivity() {
private fun initViewModel() {
val db = BaseApp.instance!!.database
val factory = AppFactory(AppRepository(db.appDao()))
val factory = AppFactory(AppRepository(db.appDao(), db.seasoningSlotDao()))
appViewModel = ViewModelProvider(this, factory)[AppViewModel::class.java]
}
@@ -74,7 +74,7 @@ class SamplingListActivity : BaseActivity() {
private fun initViewModel() {
val db = BaseApp.instance!!.database
val factory = AppFactory(AppRepository(db.appDao()))
val factory = AppFactory(AppRepository(db.appDao(), db.seasoningSlotDao()))
appViewModel = ViewModelProvider(this, factory)[AppViewModel::class.java]
}
@@ -68,7 +68,7 @@ class SelectDishActivity : BaseActivity() {
private fun initViewModel() {
val db = BaseApp.instance!!.database
val factory = AppFactory(AppRepository(db.appDao()))
val factory = AppFactory(AppRepository(db.appDao(), db.seasoningSlotDao()))
appViewModel = ViewModelProvider(this, factory)[AppViewModel::class.java]
}
@@ -395,7 +395,7 @@ class SubmitFoodActivity : BaseActivity() {
private fun initViewModel() {
val db = BaseApp.instance!!.database
val factory = AppFactory(AppRepository(db.appDao()))
val factory = AppFactory(AppRepository(db.appDao(), db.seasoningSlotDao()))
appViewModel = ViewModelProvider(this, factory)[AppViewModel::class.java]
}