fix: в заголовке заявковк на чтение теперь показывает правильный номер

This commit is contained in:
Тимур Городецкий
2026-08-26 16:38:10 +05:00
parent 418e30dfc3
commit 488d3b20da
27 changed files with 118 additions and 28 deletions
@@ -13,6 +13,8 @@ export interface IApproveFeatureProps {
itemId: number;
/** Партиция, где лежит заявка (см. IRoute.listId) — не задана у ссылок старого формата. */
listId?: string;
/** Уведомление о загруженном уникальном коде заявки — транзитом в ViewComponent (см. заголовок Drawer в RequestPortal). */
onCodeLoaded?: (code: string) => void;
}
// Фича «Согласование»: открывается по ссылке из потока (mode=approve&type=&id=)
@@ -23,7 +25,7 @@ export interface IApproveFeatureProps {
// знает о полях конкретной формы, а эта фича — единственный вход в просмотр
// заявки, общий для всех типов. Стоит вне .rp-print-root формы, поэтому в
// печатную версию заявки переписка не попадает.
const ApproveFeature: React.FC<IApproveFeatureProps> = ({ context, formKey, itemId, listId }) => {
const ApproveFeature: React.FC<IApproveFeatureProps> = ({ context, formKey, itemId, listId, onCodeLoaded }) => {
const ViewComponent = getViewComponent(formKey);
// Партиция указана и реестр ТОЧНО знает, что её там нет — см. тот же
@@ -40,7 +42,13 @@ const ApproveFeature: React.FC<IApproveFeatureProps> = ({ context, formKey, item
) : ViewComponent ? (
<>
<React.Suspense fallback={<div className={styles.state}>Загрузка…</div>}>
<ViewComponent context={context} itemId={itemId} formKey={formKey} listId={listId} />
<ViewComponent
context={context}
itemId={itemId}
formKey={formKey}
listId={listId}
onCodeLoaded={onCodeLoaded}
/>
</React.Suspense>
{/* Доступно всем, кто может открыть заявку: автору, всем согласующим
(и уже решившим, и ещё ждущим своей очереди) и исполнителям —
@@ -17,6 +17,8 @@ export interface IEditFeatureProps {
listId?: string;
/** Закрыть панель (после сохранения). */
onClose: () => void;
/** Уведомление о загруженном уникальном коде заявки — транзитом в FormComponent (см. заголовок Drawer в RequestPortal). */
onCodeLoaded?: (code: string) => void;
}
// Фича «Редактирование»: открывает СВОЮ незавершённую заявку (черновик,
@@ -26,7 +28,7 @@ export interface IEditFeatureProps {
//
// Отдельно от features/submit намеренно: там форма живёт в потоке «плитки →
// новая заявка», а тут — точечное открытие конкретной записи по ссылке.
const EditFeature: React.FC<IEditFeatureProps> = ({ context, formKey, itemId, listId, onClose }) => {
const EditFeature: React.FC<IEditFeatureProps> = ({ context, formKey, itemId, listId, onClose, onCodeLoaded }) => {
const FormComponent = getFormComponent(formKey);
const requestType = REQUEST_TYPES.filter((r) => r.id === formKey)[0];
@@ -65,6 +67,7 @@ const EditFeature: React.FC<IEditFeatureProps> = ({ context, formKey, itemId, li
emitRequestsChanged();
onClose();
}}
onCodeLoaded={onCodeLoaded}
/>
</React.Suspense>
{/* Обсуждение — то же самое, что видят согласующие (комментарии к строке