diff --git a/src/food-market.web/src/pages/EmployeeRolesPage.tsx b/src/food-market.web/src/pages/EmployeeRolesPage.tsx index f34e71e..fd3a110 100644 --- a/src/food-market.web/src/pages/EmployeeRolesPage.tsx +++ b/src/food-market.web/src/pages/EmployeeRolesPage.tsx @@ -137,7 +137,7 @@ export function EmployeeRolesPage() { <> @@ -158,10 +158,8 @@ export function EmployeeRolesPage() { sortOrder={sortOrder} onSortChange={setSort} onRowClick={(r) => { - if (r.isSystem) { - alert('Системная роль, изменения недоступны.') - return - } + // Системные роли — показываем форму с правами в read-only. + // Все чекбоксы disabled, кнопка «Сохранить» скрыта (см. footer). setForm({ id: r.id, name: r.name, description: r.description ?? '', isSystem: r.isSystem, permissions: { ...blankPerms(), ...r.permissions }, @@ -235,7 +233,9 @@ export function EmployeeRolesPage() { setForm(null)} - title={form?.id ? `Редактировать роль${form.isSystem ? ' (системная)' : ''}` : 'Новая роль'} + title={form?.id + ? (form.isSystem ? `Системная роль «${form.name}» (только просмотр)` : `Редактировать роль «${form.name}»`) + : 'Новая роль'} width="max-w-2xl" footer={ <> @@ -249,19 +249,30 @@ export function EmployeeRolesPage() { Удалить )} - - + + {!form?.isSystem && ( + + )} } > {form && (
- setForm({ ...form, name: e.target.value })} /> + setForm({ ...form, name: e.target.value })} /> -