From 48997b88eae4e6b3798bcbb74f36af4b7d185544 Mon Sep 17 00:00:00 2001 From: Victor Ilyushchenko Date: Wed, 30 Apr 2025 18:50:00 +0300 Subject: [PATCH] EQMS-1537: cleanup all review/approval requests on qms doc deletion (#8790) Signed-off-by: Victor Ilyushchenko --- .../controlled-documents-resources/src/index.ts | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/server-plugins/controlled-documents-resources/src/index.ts b/server-plugins/controlled-documents-resources/src/index.ts index eb72c5d608..0677cacaf0 100644 --- a/server-plugins/controlled-documents-resources/src/index.ts +++ b/server-plugins/controlled-documents-resources/src/index.ts @@ -291,14 +291,17 @@ export async function OnDocEnteredNonActionableState ( const result: Tx[] = [] for (const tx of txes) { const requests = await control.findAll(control.ctx, documents.class.DocumentRequest, { - attachedTo: tx.objectId, - status: RequestStatus.Active + attachedTo: tx.objectId }) - const cancelTxes = requests.map((request) => - control.txFactory.createTxUpdateDoc(request._class, request.space, request._id, { - status: RequestStatus.Cancelled + const cancelTxes = requests + .filter((request) => { + return request.status === RequestStatus.Active || tx.operations.state === DocumentState.Deleted }) - ) + .map((request) => + control.txFactory.createTxUpdateDoc(request._class, request.space, request._id, { + status: RequestStatus.Cancelled + }) + ) await control.apply(control.ctx, [ ...cancelTxes, control.txFactory.createTxUpdateDoc(tx.objectClass, tx.objectSpace, tx.objectId, {