| | |
| | | private val _categories = MutableLiveData<List<CategoryConfig>>() |
| | | val categories: LiveData<List<CategoryConfig>> = _categories |
| | | |
| | | // 添加可见分类的 LiveData |
| | | private val _visibleCategories = MutableLiveData<List<String>>() |
| | | val visibleCategories: LiveData<List<String>> = _visibleCategories |
| | | private val _visibleCategories = MutableLiveData<List<CategoryConfig>>() |
| | | val visibleCategories: LiveData<List<CategoryConfig>> = _visibleCategories |
| | | |
| | | private lateinit var secureStorage: SecureStorage |
| | | private lateinit var currentUserId: String |
| | |
| | | } |
| | | |
| | | fun saveCategories(categories: List<CategoryConfig>) { |
| | | viewModelScope.launch { |
| | | // 保存到本地 |
| | | secureStorage.saveCategories(currentUserId, categories) |
| | | // 同步到服务器 |
| | | syncCategoriesToServer(categories) |
| | | _categories.value = categories |
| | | |
| | | // 更新可见分类 |
| | | updateVisibleCategories(categories) |
| | | } |
| | | _categories.value = categories |
| | | // 更新可见分类 |
| | | _visibleCategories.value = categories.filter { it.isEnabled } |
| | | } |
| | | |
| | | private fun updateVisibleCategories(categories: List<CategoryConfig>) { |
| | |
| | | .sortedBy { it.order } |
| | | .map { it.name } |
| | | |
| | | _visibleCategories.value = visibleNames |
| | | _visibleCategories.value = categories.filter { it.isEnabled } |
| | | } |
| | | |
| | | // 登出时不再清除本地数据 |