From b38c4897777320401c1a8e859e2cf5e15e15e836 Mon Sep 17 00:00:00 2001 From: shancheas Date: Tue, 10 Dec 2024 12:27:34 +0700 Subject: [PATCH] fix: last item queue time --- .../queue/domain/usecases/formula/queue-time.formula.ts | 3 +++ src/modules/queue/domain/usecases/register-queue.manager.ts | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/modules/queue/domain/usecases/formula/queue-time.formula.ts b/src/modules/queue/domain/usecases/formula/queue-time.formula.ts index 9151cae..3cb72b3 100644 --- a/src/modules/queue/domain/usecases/formula/queue-time.formula.ts +++ b/src/modules/queue/domain/usecases/formula/queue-time.formula.ts @@ -14,6 +14,8 @@ export class QueueTimeFormula { private itemQueueRepo: Repository, ) {} + public average = 0; + async items(item_queue_id: string) { const queues = await this.queueDataService.waitingQueue(item_queue_id); if (queues.length == 0) { @@ -29,6 +31,7 @@ export class QueueTimeFormula { const times = itemQueue.items.map((item) => item.play_estimation ?? 0); const average = times.length > 0 ? math.mean(times) * 60 * 1000 : 0; // change average minute to milliseconds + this.average = average; const calledQueue = await this.queueDataService.lastQueue(item_queue_id); diff --git a/src/modules/queue/domain/usecases/register-queue.manager.ts b/src/modules/queue/domain/usecases/register-queue.manager.ts index 19e8204..90ec7d6 100644 --- a/src/modules/queue/domain/usecases/register-queue.manager.ts +++ b/src/modules/queue/domain/usecases/register-queue.manager.ts @@ -33,7 +33,8 @@ export class RegisterQueueManager extends BaseCreateManager { const first = queues[0]; const last = queues[queues.length - 1] ?? moment().valueOf(); - return [first, last]; + const average = this.queueTimeFormula.average; + return [first, last + average]; } async beforeProcess(): Promise {