From 1e367f5fcc021906633341bc527a9b136808ece4 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, 3 Sep 2026 15:03:19 +0500 Subject: [PATCH] =?UTF-8?q?fix(ct):=20=D1=84=D0=B8=D0=BA=D1=81=D0=B8=D1=80?= =?UTF-8?q?=D1=83=D0=B5=D0=BC=20=D0=BF=D0=BE=D1=80=D1=8F=D0=B4=D0=BE=D0=BA?= =?UTF-8?q?=20=D1=81=D0=BE=D0=B3=D0=BB=D0=B0=D1=81=D1=83=D1=8E=D1=89=D0=B8?= =?UTF-8?q?=D1=85=20(order0)=20=D0=B2=20SP=20=D0=BF=D1=80=D0=B8=20=D0=BE?= =?UTF-8?q?=D1=82=D0=BF=D1=80=D0=B0=D0=B2=D0=BA=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- src/webparts/ctFormsPortal/forms/ct/services/CtService.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/webparts/ctFormsPortal/forms/ct/services/CtService.ts b/src/webparts/ctFormsPortal/forms/ct/services/CtService.ts index 2329851..6297d79 100644 --- a/src/webparts/ctFormsPortal/forms/ct/services/CtService.ts +++ b/src/webparts/ctFormsPortal/forms/ct/services/CtService.ts @@ -577,6 +577,9 @@ export class CtService { for (const m of chain) { if (!m.spApprovalId) continue; const status = m.role === "Инициатор" ? "Рекомендую" : "На согласовании"; + // Пишем order0 = позиция участника у инициатора. Удаление/добавление согласующих + // пересчитывает порядок только локально; здесь фиксируем его в SP, иначе согласующий + // при свежей загрузке (сортировка по order0) увидит другой порядок и не ту очередь. const res = await this.http.fetch( this._liById(LISTS.APPROVAL_CHAIN, m.spApprovalId), SPHttpClient.configurations.v1, @@ -587,7 +590,7 @@ export class CtService { "IF-MATCH": "*", "X-HTTP-Method": "MERGE", }, - body: JSON.stringify({ status }), + body: JSON.stringify({ status, order0: m.order, Title: String(m.order) }), }, ); if (!res.ok)