fix: auto increment serial transactions

This commit is contained in:
Ahmed Bouhuolia
2025-11-02 21:08:28 +02:00
parent cca116f6bb
commit f64875404a
10 changed files with 95 additions and 34 deletions

View File

@@ -52,6 +52,7 @@ import { InvoiceChangeStatusOnMailSentSubscriber } from './subscribers/InvoiceCh
import { InvoiceCostGLEntriesSubscriber } from './subscribers/InvoiceCostGLEntriesSubscriber';
import { InvoicePaymentGLRewriteSubscriber } from './subscribers/InvoicePaymentGLRewriteSubscriber';
import { SaleInvoiceWriteInventoryTransactionsSubscriber } from './subscribers/InvoiceWriteInventoryTransactions';
import { SaleInvoiceAutoIncrementSubscriber } from './subscribers/SaleInvoiceAutoIncrementSubscriber';
import { SaleInvoiceCostGLEntries } from './SaleInvoiceCostGLEntries';
import { InvoicePaymentsGLEntriesRewrite } from './InvoicePaymentsGLRewrite';
import { PaymentsReceivedModule } from '../PaymentReceived/PaymentsReceived.module';
@@ -120,6 +121,7 @@ import { PaymentLinksModule } from '../PaymentLinks/PaymentLinks.module';
InvoiceCostGLEntriesSubscriber,
InvoicePaymentGLRewriteSubscriber,
SaleInvoiceWriteInventoryTransactionsSubscriber,
SaleInvoiceAutoIncrementSubscriber,
InvoicePaymentsGLEntriesRewrite,
SaleInvoicesCost,
SaleInvoicesExportable,
@@ -133,4 +135,4 @@ import { PaymentLinksModule } from '../PaymentLinks/PaymentLinks.module';
SaleInvoicesImportable,
],
})
export class SaleInvoicesModule {}
export class SaleInvoicesModule { }

View File

@@ -0,0 +1,19 @@
import { Injectable } from '@nestjs/common';
import { OnEvent } from '@nestjs/event-emitter';
import { events } from '@/common/events/events';
import { SaleInvoiceIncrement } from '../commands/SaleInvoiceIncrement.service';
import { ISaleInvoiceCreatedPayload } from '../SaleInvoice.types';
@Injectable()
export class SaleInvoiceAutoIncrementSubscriber {
constructor(private readonly invoiceIncrement: SaleInvoiceIncrement) { }
/**
* Handles increment next number of invoice once be created.
* @param {ISaleInvoiceCreatedPayload} payload -
*/
@OnEvent(events.saleInvoice.onCreated)
private async handleInvoiceNextNumberIncrement({ }: ISaleInvoiceCreatedPayload) {
await this.invoiceIncrement.incrementNextInvoiceNumber();
}
}