From 7b6d2712523465568bcf00af786dd32300137efb Mon Sep 17 00:00:00 2001 From: AdisakKanthawilang Date: Wed, 19 Mar 2025 10:51:34 +0700 Subject: [PATCH] fix remove posmaster rabbit --- src/services/rabbitmq.ts | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/services/rabbitmq.ts b/src/services/rabbitmq.ts index dab09767..6cea1467 100644 --- a/src/services/rabbitmq.ts +++ b/src/services/rabbitmq.ts @@ -1713,17 +1713,20 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise { }); // await posMasterRepository.remove(_posMasters); const batchSize = 1000; - for (let i = 0; i < _posMasters.length; i += batchSize) { - const batch = _posMasters.slice(i, i + batchSize); - try { - await posMasterRepository.remove(batch); - console.log(`Removed PosMaster batch ${i / batchSize + 1}`); - } catch (error) { - console.log(`Failed to remove batch ${i / batchSize + 1}`); + const removeInBatches = async (repository:any, data:any, label:any) => { + for (let i = 0; i < data.length; i += batchSize) { + const batch = data.slice(i, i + batchSize); + try { + await repository.remove(batch); + console.log(`Removed ${label} batch ${i / batchSize + 1}`); + } catch (error) { + console.log(`Failed to remove ${label} batch ${i / batchSize + 1}`); + } } - } - await employeePosMasterRepository.remove(_employeePosMasters); - await employeeTempPosMasterRepository.remove(_employeeTempPosMasters); + }; + await removeInBatches(posMasterRepository, _posMasters, "PosMaster"); + await removeInBatches(employeePosMasterRepository, _employeePosMasters, "EmployeePosMaster"); + await removeInBatches(employeeTempPosMasterRepository, _employeeTempPosMasters, "EmployeeTempPosMaster"); await child4Repository.delete({ orgRevisionId: In(_orgRevisions.map((x) => x.id)) }); await child3Repository.delete({ orgRevisionId: In(_orgRevisions.map((x) => x.id)) }); await child2Repository.delete({ orgRevisionId: In(_orgRevisions.map((x) => x.id)) });