state.dart 935 B

123456789101112131415161718192021222324252627282930
  1. import 'package:get/get.dart';
  2. import 'package:vitalapp/architecture/defines.dart';
  3. import 'package:vitalapp/database/entities/defines.dart';
  4. import 'package:vitalapp/database/entities/patient.dart';
  5. import 'package:vitalapp/pages/controllers/paged_state_mixin.dart';
  6. class SyncCenterState with PagedStateMixin<SyncCenterDataModel> {
  7. final Rxn<OfflineDataSyncState> _syncState = Rxn(null);
  8. /// 状态筛选
  9. OfflineDataSyncState? get syncState => _syncState.value;
  10. set syncState(OfflineDataSyncState? val) => _syncState.updateValue(val);
  11. }
  12. class SyncCenterDataModel {
  13. SyncCenterDataModel(this.data);
  14. final _isChecked = false.obs;
  15. /// 数据
  16. final PatientEntity data;
  17. /// 是否选择【暂时不用】
  18. bool get isChecked => _isChecked.value;
  19. set isChecked(bool val) => _isChecked.value = val;
  20. /// 是否已同步
  21. bool get isSynchronized =>
  22. data.overallSyncState == OfflineDataSyncState.success;
  23. }