August 29, 2023
Вспомогательные функции для getFNODeclarationsList
getIsDeclarationDisabled
Описание
Функция getIsDeclarationDisabled
проверяет, должен ли быть задизейблен определенный тип декларации на основе текущих значений в форме.
Сигнатура
const getIsDeclarationDisabled = (values, array = []) => {...};
Параметры
values
(Объект): ОбъектFormik.values
, содержащий текущие значения и состояния формы.array
(Массив, необязательный): Массив значений, которые необходимо проверить на наличие в текущих значениях формы. По умолчанию пустой массив.
Возвращаемое значение
- Возвращает
true
, если хотя бы одно из значений массиваarray
присутствует в текущих значениях формы, иначеfalse
.
Пример использования
const formValues = { commonInfo: { declarationTypes: ["PRIORITY", "INITIAL"] } }; const noticeDisabled = getIsDeclarationDisabled(formik.values, [DECLARATION_TYPES.PRIORITY]); // result будет true, потому что "PRIORITY" присутствует в formValues.commonInfo.declarationTypes
getDeclarationTypesList
Описание
Функция getDeclarationTypesList
получает список типов деклараций на основе заданного параметра entity
или использует переданный массив типов.
Сигнатура
const getDeclarationTypesList = ({ types = [], entity }) => {...};
Параметры
types
(Массив, необязательный): Массив типов деклараций для использования по умолчанию. По умолчанию пустой массив.entity
(Строка): Сущность, для которой нужно получить специфические типы деклараций.
Возвращаемое значение
- Возвращает массив типов деклараций, фильтрованный на основе
entity
илиtypes
, если дляentity
не определены специфические типы. - Label учитывает локализацию
[{ value: 'INITIAL', label: 'первоначальная' }, ...]
Пример использования
const entity = TYPES_FORM_MONITORING.FNO_100; const declarationList = getDeclarationTypesList({ entity }); // Возвращает список типов деклараций, фильтрованный на основе entity
Добавить новую сущность для обработки, а так же список и порядок деклараций можно настроить в src/pages/MGU/Monitoring/FNO/utils/declarations/entityToDeclarationTypes.js
const commonTypesE = [ DECLARATION_TYPES.PRIORITY, DECLARATION_TYPES.NEXT_PRIORITY, DECLARATION_TYPES.ADDITIONAL, DECLARATION_TYPES.ADDITIONAL_BY_NOTIFICATION, DECLARATION_TYPES.LIQUIDATION ]; const ENTITY_TO_DECLARATION_TYPES = { ..., [FNO_101_03]: commonTypesE, ... }
При возникновении вопросов обращаться к https://t.me/axtvlad