jabbascript,
const roleRight = [
{
Id: 1,
RoleId: 1,
RightId: 1
},
{
Id: 2,
RoleId: 1,
RightId: 2
},
{
Id: 3,
RoleId: 2,
RightId: 2
},
{
Id: 4,
RoleId: 3,
RightId: 1
}
];
const roles = [
{
Id: 1,
Name: "Администратор"
},
{
Id: 2,
Name: "Модератор"
},
{
Id: 3,
Name: "Пользователь"
}
];
const rights = [
{
Id: 1,
Name: "Контакты - Просмотр"
},
{
Id: 2,
Name: "Контакты - Редактирование"
}
];
console.log(
roles.map(role => {
return {
...role,
right: roleRight
.filter(item => item.RoleId === role.Id)
.map(item => rights.find(right => right.Id === item.RightId))
};
})
);