web: People: Fixed mass re-render on group-buttons actions
This commit is contained in:
parent
df767e3849
commit
96a3a60c1c
@ -14,6 +14,7 @@ import {
|
|||||||
PAGE_COUNT,
|
PAGE_COUNT,
|
||||||
EmployeeStatus
|
EmployeeStatus
|
||||||
} from "../../helpers/constants";
|
} from "../../helpers/constants";
|
||||||
|
import unionBy from 'lodash/unionBy';
|
||||||
|
|
||||||
export const SET_GROUPS = "SET_GROUPS";
|
export const SET_GROUPS = "SET_GROUPS";
|
||||||
export const SET_USERS = "SET_USERS";
|
export const SET_USERS = "SET_USERS";
|
||||||
@ -190,11 +191,14 @@ function fetchPeopleByFilter(dispatch, filter) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function updateUserStatus(status, userIds) {
|
export function updateUserStatus(status, userIds) {
|
||||||
return dispatch => {
|
return (dispatch, getState) => {
|
||||||
return api.updateUserStatus(status, userIds).then(users => {
|
return api.updateUserStatus(status, userIds).then(users => {
|
||||||
users.forEach(user => {
|
const { people } = getState();
|
||||||
dispatch(setUser(user));
|
const { users: currentUsers } = people;
|
||||||
});
|
|
||||||
|
const newUsers = unionBy(users, currentUsers, "id");
|
||||||
|
|
||||||
|
dispatch(setUsers(newUsers));
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user