Осталось 5 категорий (ОС, СИЗ, подотчётная сумма, НМА, ТМЦ). У обучения уже
было отдельное поле TrainingAmount («Обучение: сумма», правит только КДП) —
второе одноимённое поле с другим поведением (любой согласующий) только
путало, даже с подписью группы над сеткой. WriteOffTrainingAmount убран из
модели/load/submit/манифеста; ClearanceView и RequestSection код не трогали —
они уже обходят WRITE_OFF_CATEGORIES обобщённо.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Без заголовка группы «Обучение» (WriteOffTrainingAmount, любой согласующий)
читалось продолжением «Обучение: сумма» чуть выше (TrainingAmount, поле КДП) —
два разных поля выглядели одним и тем же. Добавлена overline-подпись «Суммы к
списанию» перед сеткой из 6 сумм — теперь понятно, что это отдельная группа.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Правка предыдущего коммита: там для «за что конкретно» завёл отдельное поле
WriteOffComment (с собственной колонкой в списке) — избыточно, раз на экране
уже есть стандартный комментарий решения («Ваше решение» в DecisionPanel),
которым и так сопровождают Согласовать/Вернуть/Отклонить.
Теперь: DecisionPanel получил два новых пропа — commentRequired (сверх обычного
«обязателен при возврате/отклонении» — можно потребовать его на ЛЮБОЕ решение)
и commentPlaceholder (переопределить текст подсказки). ClearanceView передаёt
их, когда есть незаблокированная сумма к списанию с непустым значением
(writeOffTouchedCategories) — комментарий обязателен, а плейсхолдер называет,
за какие категории писать («Введите, за что сумма: ОС, ТМЦ»). Записывается он
туда же, где и всегда — в строку маршрута этого согласующего (Comment списка
согласования), без нового поля на данных заявки.
WriteOffComment (поле, столбец в манифесте, вся связанная логика) убран.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Обходной лист: 6 отдельных Comment-колонок (по одной на категорию списания)
консолидированы в одну WriteOffComment — комментарий и так один по смыслу
(«за что списываем»), дублировать текст в 6 колонок не было смысла. IWriteOffCategory
больше не хранит commentField, WriteOffFieldKey сузился до 6 сумм.
Заявление на увольнение: заголовок колонки таблицы организаций — «Подразделение»
вместо «Структурное подразделение» (данные по-прежнему из Section справочника,
только подпись короче).
Со схемой ничего руками не делал — команда для провижининга ниже.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Заявление на увольнение: убрано поле «Самостоятельное подразделение»
(StandaloneUnit) — из модели, формы и манифеста провижинера. Колонка на
тенанте остаётся (провижинер их не удаляет), но код её больше не пишет и не
читает.
Обходной лист: убраны 6 отдельных textarea-комментариев под каждой суммой —
сетка сумм теперь компактная (короткие подписи, обычная 2-колоночная сетка
секции, без full). Вместо пары «сумма+комментарий» на категорию — ОДИН общий
комментарий, который появляется и становится обязательным, как только хоть
одна редактируемая сумма заполнена (при сохранении бросает ДО записи, если
сумма есть, а комментарий пуст). Плейсхолдер называет категории, для которых
он сейчас пишется («Введите, за что сумма: ОС, ТМЦ»).
При записи общий текст дублируется в Comment-колонку КАЖДОЙ заполняемой сейчас
категории (SP-схема из 6 пар Amount/Comment не менялась) — так по каждой
категории в списке остаётся свой комментарий, а форма не заставляет писать
одно и то же несколько раз подряд.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Обсуждение заявки поверх штатных комментариев SharePoint (PnPjs
item.comments) — без новых колонок и провижининга, права на переписку
раздаёт сам SharePoint по правам на элемент.
Встроено в ApproveFeature и EditFeature (единственные входы в просмотр
заявки для всех типов), поэтому доступно автору, всем согласующим
(включая уже решивших и ещё не дошедших до своего шага) и исполнителям,
а не только текущему шагу маршрута, как DecisionPanel.
Автора комментария всегда ставит реальная учётка — отладочная подмена
личности на запись в SharePoint не влияет, в UI есть предупреждение.
---------
Co-authored-by: gorbenko.pavel <gorbenko.pavel@tansu.kz>
Reviewed-on: http://git.tnsu.kz/timur.gorodetskiy/request-portal/pulls/14