feat: причина «Декрет» в подборе и приёме, тип приёма подтягивается из подбора
Tests / frontend-test (push) Successful in 1m13s

This commit is contained in:
Тимур Городецкий
2026-09-24 16:38:06 +05:00
parent 17e7c634d5
commit 852b16c327
9 changed files with 111 additions and 12 deletions
@@ -161,12 +161,15 @@ export const OTHER_VALUE = 'Другое';
export const OPEN_REASON_REPLACE = 'Замена уволенного сотрудника';
export const OPEN_REASON_TRANSFER = 'Перевод сотрудника';
export const OPEN_REASON_NEW = 'Новая штатная единица';
/** Декрет — временная вакансия на время отпуска сотрудника; ФИО замещаемого нужно кадрам для срочного договора. */
export const OPEN_REASON_MATERNITY = 'Декрет';
/** Варианты «Причина открытия вакансии» — совпадают с choices колонки VacancyOpenReason. */
export const OPEN_REASON_OPTIONS: ISelectOption[] = [
{ value: OPEN_REASON_REPLACE, label: OPEN_REASON_REPLACE },
{ value: OPEN_REASON_TRANSFER, label: OPEN_REASON_TRANSFER },
{ value: OPEN_REASON_NEW, label: OPEN_REASON_NEW },
{ value: OPEN_REASON_MATERNITY, label: OPEN_REASON_MATERNITY },
{ value: OTHER_VALUE, label: OTHER_VALUE }
];
@@ -5,7 +5,7 @@
{ "internalName": "RequestStatus", "title": "Статус", "type": "Choice", "choices": ["Черновик", "На согласовании", "Согласовано", "Отклонено", "Возвращена на доработку", "Выполнение", "Закрыта"] },
{ "internalName": "Responsible", "title": "Ответственный за подачу заявки", "type": "User", "userSelectionMode": "PeopleOnly", "required": true },
{ "internalName": "SubmitDate", "title": "Дата подачи заявки", "type": "DateTime", "dateOnly": true },
{ "internalName": "VacancyOpenReason", "title": "Причина открытия вакансии", "type": "Choice", "choices": ["Замена уволенного сотрудника", "Перевод сотрудника", "Новая штатная единица", "Другое"] },
{ "internalName": "VacancyOpenReason", "title": "Причина открытия вакансии", "type": "Choice", "choices": ["Замена уволенного сотрудника", "Перевод сотрудника", "Новая штатная единица", "Декрет", "Другое"] },
{ "internalName": "VacancyOpenReasonDetails", "title": "Причина открытия — ФИО / уточнение", "type": "Text" },
{ "internalName": "CompaniesJson", "title": "Компании (JSON)", "type": "Note" },
{ "internalName": "ObjectProject", "title": "Объект/Проект", "type": "Text" },
@@ -7,14 +7,18 @@ import {
OPEN_REASON_OPTIONS,
OPEN_REASON_REPLACE,
OPEN_REASON_TRANSFER,
OPEN_REASON_NEW
OPEN_REASON_NEW,
OPEN_REASON_MATERNITY
} from '../model';
/** Причины, где вакансия открывается под конкретного сотрудника — спрашиваем его ФИО. */
const REASONS_WITH_EMPLOYEE_NAME = [OPEN_REASON_REPLACE, OPEN_REASON_TRANSFER, OPEN_REASON_MATERNITY];
export const ApplicationSection: React.FC<ISectionProps> = ({ data, set, context, onResponsibleChange }) => {
const reason = data.VacancyOpenReason;
const showReasonDetails = reason !== '' && reason !== OPEN_REASON_NEW;
const reasonDetailsLabel =
reason === OPEN_REASON_REPLACE || reason === OPEN_REASON_TRANSFER
REASONS_WITH_EMPLOYEE_NAME.indexOf(reason) !== -1
? 'ФИО сотрудника (Полностью, пример: Иванов Иван Иванович)'
: 'Уточните причину';