Как действовать с данными
Я новичок в реакте и редаксе. Тем не менее пытаюсь "штурмовать" эти высоты. Нужен совет. По задумке в моем приложении (панель руководителя) есть фильтр по учебным группа (далее - группам) и по должностям. При этом сам выбор выглядит следующим образом:
КДМ_ЕВРОПЕЙСКИЙ, АВ_25_2 и АВ_25_1 - это учебные группы. В каждой учебной группе есть сотрудники с разными должностями. Например, если я кликну по "Продавец-стажер", то ко мне в выборку должны попасть все Продавцы-стажеры из КДМ_ЕВРОПЕЙСКИЙ. При этом с сервера я получаю данные в таком виде:
persons = [
{
person_id: 123,
fullname: "Иванов Иван Иванович",
position_id: 123,
position_name: "Продавец-стажер",
group_id: 123,
group_name: "КДМ_ЕВРОПЕЙСКИЙ",
},
{
person_id: 234,
fullname: "Петров Иван Иванович",
position_id: 123,
position_name: "Продавец-стажер",
group_id: 123,
group_name: "КДМ_ЕВРОПЕЙСКИЙ",
},
{
person_id: 345,
fullname: "Сидоров Иван Иванович",
position_id: 345,
position_name: "Директор",
group_id: 123,
group_name: "КДМ_ЕВРОПЕЙСКИЙ",
},
]
Вопросов несколько:
- Изначально у меня должна формироваться определенная иерархия сотрудников. Т.е. из моего стора должны быть отфильтрованы все сотрудники КДМ_ЕВРОПЕЙСКИЙ, затем все директора, заместители директоров и т.д. Как лучше поступить - создавать ли в сторе еще один массив объектов, вид которых будет подходить для фильтра, (который на картинке). Или использовать существующие данные и при рендере фильтра на лету проходиться по всем объектам существующего стора и брать оттуда данные?
- Когда я выбираю, например "Продавец стажер", то в объекте стора рядом с Ивановым и Петровым должны появиться признаки "selected". Так как с сервера у меня приходят объекты без данного признака, могу ли я в сторе создавать дополнительный массив объектов и подгружать туда выбранных сотрудников? Или все-таки правильнее как-то к моим имеющимся объектам добавить ключ-значение selected:false для первоначального рендера?
