Settings
This commit is contained in:
parent
dd82000d6a
commit
87408e6d24
|
|
@ -56,7 +56,7 @@ Reducer<UserCompanyEntity> userCompanyEntityReducer = combineReducers([
|
|||
loadCompanySuccessReducer),
|
||||
TypedReducer<UserCompanyEntity, SaveCompanySuccess>(
|
||||
saveCompanySuccessReducer),
|
||||
TypedReducer<UserCompanyEntity, SaveUserSuccess>((userCompany, action) =>
|
||||
TypedReducer<UserCompanyEntity, SaveUserSettingsSuccess>((userCompany, action) =>
|
||||
userCompany.rebuild((b) => b..user.replace(action.user))),
|
||||
]);
|
||||
|
||||
|
|
|
|||
|
|
@ -37,8 +37,8 @@ class UpdateSettings implements PersistUI {
|
|||
final SettingsEntity settings;
|
||||
}
|
||||
|
||||
class UpdateSettingsUser implements PersistUI {
|
||||
UpdateSettingsUser({@required this.user});
|
||||
class UpdateUserSettings implements PersistUI {
|
||||
UpdateUserSettings({@required this.user});
|
||||
|
||||
final UserEntity user;
|
||||
}
|
||||
|
|
@ -57,21 +57,21 @@ class UploadLogoFailure implements StopSaving {
|
|||
final Object error;
|
||||
}
|
||||
|
||||
class SaveUserRequest implements StartSaving {
|
||||
SaveUserRequest({this.completer, this.user});
|
||||
class SaveUserSettingsRequest implements StartSaving {
|
||||
SaveUserSettingsRequest({this.completer, this.user});
|
||||
|
||||
final Completer completer;
|
||||
final UserEntity user;
|
||||
}
|
||||
|
||||
class SaveUserSuccess implements StopSaving, PersistData, PersistUI {
|
||||
SaveUserSuccess(this.user);
|
||||
class SaveUserSettingsSuccess implements StopSaving, PersistData, PersistUI {
|
||||
SaveUserSettingsSuccess(this.user);
|
||||
|
||||
final UserEntity user;
|
||||
}
|
||||
|
||||
class SaveUserFailure implements StopSaving {
|
||||
SaveUserFailure(this.error);
|
||||
class SaveUserSettingsFailure implements StopSaving {
|
||||
SaveUserSettingsFailure(this.error);
|
||||
|
||||
final Object error;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ List<Middleware<AppState>> createStoreSettingsMiddleware([
|
|||
return [
|
||||
TypedMiddleware<AppState, ViewSettings>(viewSettings),
|
||||
TypedMiddleware<AppState, SaveCompanyRequest>(saveCompany),
|
||||
TypedMiddleware<AppState, SaveUserRequest>(saveUser),
|
||||
TypedMiddleware<AppState, SaveUserSettingsRequest>(saveUser),
|
||||
TypedMiddleware<AppState, UploadLogoRequest>(uploadLogo),
|
||||
];
|
||||
}
|
||||
|
|
@ -85,16 +85,16 @@ Middleware<AppState> _saveCompany(SettingsRepository settingsRepository) {
|
|||
|
||||
Middleware<AppState> _saveUser(SettingsRepository settingsRepository) {
|
||||
return (Store<AppState> store, dynamic dynamicAction, NextDispatcher next) {
|
||||
final action = dynamicAction as SaveUserRequest;
|
||||
final action = dynamicAction as SaveUserSettingsRequest;
|
||||
|
||||
settingsRepository
|
||||
.saveUser(store.state.credentials, action.user)
|
||||
.then((user) {
|
||||
store.dispatch(SaveUserSuccess(user));
|
||||
store.dispatch(SaveUserSettingsSuccess(user));
|
||||
action.completer.complete();
|
||||
}).catchError((Object error) {
|
||||
print(error);
|
||||
store.dispatch(SaveUserFailure(error));
|
||||
store.dispatch(SaveUserSettingsFailure(error));
|
||||
action.completer.completeError(error);
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -210,7 +210,7 @@ Reducer<SettingsUIState> settingsUIReducer = combineReducers([
|
|||
..isChanged = true);
|
||||
}
|
||||
}),
|
||||
TypedReducer<SettingsUIState, UpdateSettingsUser>((state, action) {
|
||||
TypedReducer<SettingsUIState, UpdateUserSettings>((state, action) {
|
||||
return state.rebuild((b) => b
|
||||
..user.replace(action.user)
|
||||
..isChanged = true);
|
||||
|
|
@ -242,7 +242,7 @@ Reducer<SettingsUIState> settingsUIReducer = combineReducers([
|
|||
..origClient.replace(action.client)
|
||||
..isChanged = false);
|
||||
}),
|
||||
TypedReducer<SettingsUIState, prefix0.SaveUserSuccess>((state, action) {
|
||||
TypedReducer<SettingsUIState, prefix0.SaveUserSettingsSuccess>((state, action) {
|
||||
return state.rebuild((b) => b
|
||||
..user.replace(action.user)
|
||||
..origUser.replace(action.user)
|
||||
|
|
|
|||
|
|
@ -223,13 +223,6 @@ Reducer<int> selectedCompanyIndexReducer = combineReducers([
|
|||
]);
|
||||
|
||||
Reducer<SettingsUIState> settingsUIReducer = combineReducers([
|
||||
TypedReducer<SettingsUIState, ClearSettingsFilter>((state, action) {
|
||||
return state.rebuild((b) => b
|
||||
..updatedAt = DateTime.now().millisecondsSinceEpoch
|
||||
..company.replace(state.origCompany)
|
||||
..entityType = EntityType.company
|
||||
..isChanged = false);
|
||||
}),
|
||||
TypedReducer<SettingsUIState, ViewSettings>((state, action) {
|
||||
return state.rebuild((b) => b
|
||||
..company.replace(action.company ?? state.company)
|
||||
|
|
@ -238,6 +231,8 @@ Reducer<SettingsUIState> settingsUIReducer = combineReducers([
|
|||
..origGroup.replace(action.group ?? state.origGroup)
|
||||
..client.replace(action.client ?? state.client)
|
||||
..origClient.replace(action.client ?? state.origClient)
|
||||
..user.replace(action.user ?? state.user)
|
||||
..origUser.replace(action.user ?? state.origUser)
|
||||
..updatedAt = DateTime.now().millisecondsSinceEpoch
|
||||
..section = action.section ?? state.section
|
||||
..isChanged = false
|
||||
|
|
@ -266,7 +261,7 @@ Reducer<SettingsUIState> settingsUIReducer = combineReducers([
|
|||
..isChanged = true);
|
||||
}
|
||||
}),
|
||||
TypedReducer<SettingsUIState, UpdateSettingsUser>((state, action) {
|
||||
TypedReducer<SettingsUIState, UpdateUserSettings>((state, action) {
|
||||
return state.rebuild((b) => b
|
||||
..user.replace(action.user)
|
||||
..isChanged = true);
|
||||
|
|
@ -276,22 +271,32 @@ Reducer<SettingsUIState> settingsUIReducer = combineReducers([
|
|||
..company.replace(state.origCompany)
|
||||
..group.replace(state.origGroup)
|
||||
..client.replace(state.origClient)
|
||||
..user.replace(state.origUser)
|
||||
..isChanged = false
|
||||
..updatedAt = DateTime.now().millisecondsSinceEpoch);
|
||||
}),
|
||||
TypedReducer<SettingsUIState, SaveCompanySuccess>((state, action) {
|
||||
return state.rebuild((b) => b
|
||||
..company.replace(action.company)
|
||||
..origCompany.replace(action.company)
|
||||
..isChanged = false);
|
||||
}),
|
||||
TypedReducer<SettingsUIState, SaveGroupSuccess>((state, action) {
|
||||
return state.rebuild((b) => b
|
||||
..group.replace(action.group)
|
||||
..origGroup.replace(action.group)
|
||||
..isChanged = false);
|
||||
}),
|
||||
TypedReducer<SettingsUIState, SaveClientSuccess>((state, action) {
|
||||
return state.rebuild((b) => b
|
||||
..client.replace(action.client)
|
||||
..origClient.replace(action.client)
|
||||
..isChanged = false);
|
||||
}),
|
||||
TypedReducer<SettingsUIState, SaveUserSettingsSuccess>((state, action) {
|
||||
return state.rebuild((b) => b
|
||||
..user.replace(action.user)
|
||||
..origUser.replace(action.user)
|
||||
..isChanged = false);
|
||||
}),
|
||||
TypedReducer<SettingsUIState, FilterSettings>((state, action) {
|
||||
|
|
@ -301,4 +306,11 @@ Reducer<SettingsUIState> settingsUIReducer = combineReducers([
|
|||
? DateTime.now().millisecondsSinceEpoch
|
||||
: state.filterClearedAt);
|
||||
}),
|
||||
TypedReducer<SettingsUIState, ClearSettingsFilter>((state, action) {
|
||||
return state.rebuild((b) => b
|
||||
..updatedAt = DateTime.now().millisecondsSinceEpoch
|
||||
..company.replace(state.origCompany)
|
||||
..entityType = EntityType.company
|
||||
..isChanged = false);
|
||||
}),
|
||||
]);
|
||||
|
|
|
|||
|
|
@ -41,11 +41,11 @@ class UserDetailsVM {
|
|||
return UserDetailsVM(
|
||||
state: state,
|
||||
user: state.uiState.settingsUIState.user,
|
||||
onChanged: (user) => store.dispatch(UpdateSettingsUser(user: user)),
|
||||
onChanged: (user) => store.dispatch(UpdateUserSettings(user: user)),
|
||||
onSavePressed: (context) {
|
||||
final completer = snackBarCompleter<Null>(
|
||||
context, AppLocalization.of(context).savedSettings);
|
||||
store.dispatch(SaveUserRequest(
|
||||
store.dispatch(SaveUserSettingsRequest(
|
||||
completer: completer,
|
||||
user: state.uiState.settingsUIState.user));
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in New Issue