diff --git a/src/webparts/requestPortal/forms/Dismissal/DismissalForm.tsx b/src/webparts/requestPortal/forms/Dismissal/DismissalForm.tsx index 20f2f68..4101f4d 100644 --- a/src/webparts/requestPortal/forms/Dismissal/DismissalForm.tsx +++ b/src/webparts/requestPortal/forms/Dismissal/DismissalForm.tsx @@ -10,7 +10,8 @@ import { RequestNumber, SubmitActions, getDraftDeleteHandler, - useRequestSubmit + useRequestSubmit, + FormNotice } from '../../shared/ui'; import { composeRemoveRowRule, @@ -44,7 +45,16 @@ import { dataListTitle, dataListTitleForListId } from '../../shared/listTitles'; -import { FORM_ID, IFormData, EMPTY_DATA, SetField, IOrganizationRecord, primaryPosition } from './model'; +import { + FORM_ID, + IFormData, + EMPTY_DATA, + SetField, + IOrganizationRecord, + primaryPosition, + NOTICE_TITLE, + NOTICE_ITEMS +} from './model'; import { saveDismissalRequest, dismissalApprovalService } from './submit'; import { loadDismissalRequest } from './load'; import { RequestSection } from './sections/RequestSection'; @@ -374,6 +384,8 @@ const DismissalForm: React.FC = ({ )} {submit.error && {submit.error}} + + diff --git a/src/webparts/requestPortal/forms/Dismissal/DismissalView.tsx b/src/webparts/requestPortal/forms/Dismissal/DismissalView.tsx index 079ae6e..66bc94a 100644 --- a/src/webparts/requestPortal/forms/Dismissal/DismissalView.tsx +++ b/src/webparts/requestPortal/forms/Dismissal/DismissalView.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import { useState, useEffect, useMemo, useCallback } from 'react'; import type { WebPartContext } from '@microsoft/sp-webpart-base'; import styles from './DismissalView.module.scss'; -import { Alert, FormCard, InitiatorLine, FormModeProvider, PrintButton } from '../../shared/ui'; +import { Alert, FormCard, InitiatorLine, FormModeProvider, PrintButton, FormNotice } from '../../shared/ui'; import { ApproverService, DecisionPanel, @@ -28,7 +28,7 @@ import { dataListTitleForListId } from '../../shared/listTitles'; import { parseRoute } from '../../shared/routing'; -import { FORM_ID, IFormData, EMPTY_DATA, SetField } from './model'; +import { FORM_ID, IFormData, EMPTY_DATA, SetField, NOTICE_TITLE, NOTICE_ITEMS } from './model'; import { loadDismissalRequest } from './load'; import { dismissalApprovalService, updateAssetsAcceptor } from './submit'; import { loadClearanceRequest } from '../Clearance/load'; @@ -285,6 +285,7 @@ const DismissalView: React.FC = ({ context, itemId, formKey } headerRight={status ? : undefined} > + diff --git a/src/webparts/requestPortal/forms/Dismissal/README.md b/src/webparts/requestPortal/forms/Dismissal/README.md index b3f71e9..1a1f989 100644 --- a/src/webparts/requestPortal/forms/Dismissal/README.md +++ b/src/webparts/requestPortal/forms/Dismissal/README.md @@ -61,6 +61,8 @@ RequestTypeId» в `docs/forms.md`). Тип заведён в админке app - **Комментарий** (`Comment`) — необязательный свободный текст. Причины увольнения отдельного поля нет: в шаблоне формулировка фиксированная («по собственному желанию»). - **Заголовок элемента** (`Title`): `Заявление на увольнение — {ФИО} — дд.мм.гггг`. +- **Примечание** (с 10-29, `FormNotice`, тексты `NOTICE_TITLE`/`NOTICE_ITEMS` в `model.ts`) — плашка + вверху формы и просмотра про срок уведомления по ст. 56 ТК РК. Текст от HR, дословно; на печать не идёт. ## Совместители: организации таблицей, удаление синхронизировано с маршрутом Сотрудник может числиться сразу в НЕСКОЛЬКИХ компаниях (совместительство). diff --git a/src/webparts/requestPortal/forms/Dismissal/model.ts b/src/webparts/requestPortal/forms/Dismissal/model.ts index 08c788b..d66ba68 100644 --- a/src/webparts/requestPortal/forms/Dismissal/model.ts +++ b/src/webparts/requestPortal/forms/Dismissal/model.ts @@ -149,3 +149,18 @@ export const EMPTY_DATA: IFormData = { export const EMPLOYEE_PLACEHOLDER = 'Начните вводить Ф.И.О. сотрудника…'; /** Заявление нужно подавать не позднее чем за столько месяцев до последнего рабочего дня. */ export const MIN_NOTICE_MONTHS = 1; + +/** + * Примечание вверху формы и просмотра (см. shared/ui/FormNotice). Текст — от HR, + * дословно. «Не менее чем за один месяц» — это MIN_NOTICE_MONTHS: поменяли срок — + * поправьте и текст. + */ +export const NOTICE_TITLE = 'Примечание'; +export const NOTICE_ITEMS: string[] = [ + 'Срок уведомления. Согласно п. 1 ст. 56 Трудового кодекса РК, работник вправе по своей инициативе ' + + 'расторгнуть трудовой договор, уведомив работодателя письменно не менее чем за один месяц, за исключением ' + + 'случаев, предусмотренных п. 3 этой статьи. Если трудовым договором установлен более длительный срок ' + + 'уведомления, применяется срок из трудового договора.', + 'Увольнение до истечения срока уведомления. Дата увольнения раньше чем через месяц с даты подачи заявления ' + + 'возможна только по согласованию с работодателем, либо в случаях, предусмотренных п. 3 ст. 56 ТК РК.' +];