36 lines
1.3 KiB
JavaScript
36 lines
1.3 KiB
JavaScript
import { ROLES_NAME_ID } from '../../../constants/constants';
|
|
|
|
const ADMIN_ROLES = [ROLES_NAME_ID.admin];
|
|
const DFIP_ROLES = [ROLES_NAME_ID.admin, ROLES_NAME_ID.executor_dfip];
|
|
const RF_ROLES = [ROLES_NAME_ID.admin, ROLES_NAME_ID.executor_rf];
|
|
|
|
// Матрица доступа к полям первой таблицы.
|
|
// Поля «авто» доступны для ручного редактирования только администратору.
|
|
export const FIRST_TABLE_FIELD_ACCESS = {
|
|
name: ADMIN_ROLES,
|
|
org_unit_id: ADMIN_ROLES,
|
|
status: DFIP_ROLES,
|
|
technical_number: ADMIN_ROLES,
|
|
object_address: ADMIN_ROLES,
|
|
vsp_format: ADMIN_ROLES,
|
|
placement_type: ADMIN_ROLES,
|
|
staff_count: ADMIN_ROLES,
|
|
total_area: ADMIN_ROLES,
|
|
project_type: ADMIN_ROLES,
|
|
krf_decision_date: RF_ROLES,
|
|
fk_decision_date: RF_ROLES,
|
|
board_decision_date: RF_ROLES,
|
|
open_relocate_close_date: RF_ROLES,
|
|
funding_by_ko_decision: DFIP_ROLES,
|
|
year: ADMIN_ROLES,
|
|
is_in_plan: DFIP_ROLES,
|
|
is_in_plan_q2: DFIP_ROLES,
|
|
is_in_plan_q3: DFIP_ROLES,
|
|
is_in_plan_q4: DFIP_ROLES,
|
|
development_block: DFIP_ROLES,
|
|
reserve_to_prrs_ahr: DFIP_ROLES,
|
|
reserve_to_prrs_kv: DFIP_ROLES,
|
|
};
|
|
|
|
export const canEditFirstTableField = (fieldKey, roleId) => FIRST_TABLE_FIELD_ACCESS[fieldKey]?.includes(roleId) ?? false;
|