From 353a1aa54332e80b6fcb29ca035b49535f0ae8bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A2=D0=B8=D0=BC=D1=83=D1=80=20=D0=93=D0=BE=D1=80=D0=BE?= =?UTF-8?q?=D0=B4=D0=B5=D1=86=D0=BA=D0=B8=D0=B9?= Date: Thu, 29 Oct 2026 08:52:27 +0500 Subject: [PATCH] =?UTF-8?q?fix:=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD?= =?UTF-8?q?=D1=82=D0=B0=D1=80=D0=B8=D0=B9=20=D0=BA=20=D0=BE=D1=82=D0=BF?= =?UTF-8?q?=D1=83=D1=81=D0=BA=D1=83=20=D0=BD=D0=B5=20=D0=B2=D1=8B=D0=B2?= =?UTF-8?q?=D0=BE=D0=B4=D0=B8=D1=82=D1=81=D1=8F=20=D0=B2=20=D0=BF=D0=B5?= =?UTF-8?q?=D1=87=D0=B0=D1=82=D0=BD=D0=BE=D0=B5=20=D0=B7=D0=B0=D1=8F=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Комментарий адресован согласующим, а не кадрам, поэтому в печати просмотра он скрыт (rp-no-print); обёртка с display: contents сохраняет поле ячейкой сетки. Co-Authored-By: Claude Opus 5.5 (1M context) --- .../requestPortal/forms/Vacation/README.md | 4 ++-- .../sections/RequestSection.module.scss | 5 +++++ .../Vacation/sections/RequestSection.tsx | 22 +++++++++++-------- 3 files changed, 20 insertions(+), 11 deletions(-) create mode 100644 src/webparts/requestPortal/forms/Vacation/sections/RequestSection.module.scss diff --git a/src/webparts/requestPortal/forms/Vacation/README.md b/src/webparts/requestPortal/forms/Vacation/README.md index 3cb8677..f06c8dc 100644 --- a/src/webparts/requestPortal/forms/Vacation/README.md +++ b/src/webparts/requestPortal/forms/Vacation/README.md @@ -29,8 +29,8 @@ праздники и выходные. Колонка `EndDate` не используется: из провижининга, типа контента и представления она убрана (само системное поле SharePoint `FromBaseType` удалить нельзя). - **Заголовок элемента** (`Title`): `Отпуск — {ФИО} — дд.мм.гггг`. - **Комментарий** (с 10-28, `VacationComment`, Note) — необязательный, заполняет инициатор, - последним полем секции; в просмотре пустой не показывается. В DOCX для ЭДО (`vacationDocument.ts`) не идёт; при печати - просмотра виден, как остальные поля секции. + последним полем секции; в просмотре пустой не показывается. В DOCX для ЭДО (`vacationDocument.ts`) не идёт; в печать + тоже не попадает (обёртка `rp-no-print` с `display: contents`, чтобы на экране поле оставалось ячейкой сетки). ## Подписание в ЭДО > **Сейчас выключено** (`VACATION_EDO_SIGNING_ENABLED = false` в `shared/config.ts`): решение последнего diff --git a/src/webparts/requestPortal/forms/Vacation/sections/RequestSection.module.scss b/src/webparts/requestPortal/forms/Vacation/sections/RequestSection.module.scss new file mode 100644 index 0000000..ba17475 --- /dev/null +++ b/src/webparts/requestPortal/forms/Vacation/sections/RequestSection.module.scss @@ -0,0 +1,5 @@ +// Обёртка поля только ради класса rp-no-print: contents убирает её из раскладки, +// поэтому поле остаётся ячейкой FormGrid и сохраняет растяжку `full`. +.noPrintField { + display: contents; +} diff --git a/src/webparts/requestPortal/forms/Vacation/sections/RequestSection.tsx b/src/webparts/requestPortal/forms/Vacation/sections/RequestSection.tsx index 9f5d47a..6023068 100644 --- a/src/webparts/requestPortal/forms/Vacation/sections/RequestSection.tsx +++ b/src/webparts/requestPortal/forms/Vacation/sections/RequestSection.tsx @@ -3,6 +3,7 @@ import { FormGrid, FormField, TextInput, TextArea, PeopleField, OrganizationTabl import { ProjectPicker } from '../../../shared/dictionary'; import { ISectionProps, EMPLOYEE_PLACEHOLDER, SUBSTITUTE_PLACEHOLDER, MIN_NOTICE_DAYS, MAX_DAYS } from '../model'; import { isoDatePlusDays } from '../../../shared/dateUtils'; +import styles from './RequestSection.module.scss'; /** Единственная секция формы «Заявка на отпуск»: сотрудник (должность и подразделение подтягиваются из справочника), даты. */ export const RequestSection: React.FC = ({ data, set, context, onEmployeeChange, printOrgIndex }) => { @@ -59,16 +60,19 @@ export const RequestSection: React.FC = ({ data, set, context, on placeholder={SUBSTITUTE_PLACEHOLDER} /> - {/* Пустой комментарий в просмотре не показываем — пустое поле только мешает читать. */} + {/* Пустой комментарий в просмотре не показываем — пустое поле только мешает читать. + В печатное заявление комментарий не входит — он для согласующих, не для кадров. */} {(!readOnly || data.VacationComment.trim()) && ( - -