fix: transaction locking handling

This commit is contained in:
Ahmed Bouhuolia
2025-12-05 23:47:29 +02:00
parent bc21dcb37e
commit d006362be2
7 changed files with 60 additions and 58 deletions

View File

@@ -4,16 +4,18 @@ export class ServiceError extends Error {
errorType: string; errorType: string;
message: string; message: string;
payload: any; payload: any;
httpStatus: HttpStatus;
constructor(errorType: string, message?: string, payload?: any) { constructor(errorType: string, message?: string, payload?: any, httpStatus?: HttpStatus) {
super(message); super(message);
this.errorType = errorType; this.errorType = errorType;
this.message = message || null; this.message = message || null;
this.payload = payload; this.payload = payload;
this.httpStatus = httpStatus || HttpStatus.BAD_REQUEST;
} }
getStatus(): HttpStatus { getStatus(): HttpStatus {
return HttpStatus.INTERNAL_SERVER_ERROR; return this.httpStatus;
} }
} }

View File

@@ -57,7 +57,7 @@ export class TransactionsLockingGuard {
); );
if (isLocked) { if (isLocked) {
this.throwTransactionsLockError(lockingGroup); await this.throwTransactionsLockError(lockingGroup);
} }
}; };
@@ -90,11 +90,12 @@ export class TransactionsLockingGuard {
await this.transactionsLockingRepo.getTransactionsLockingType(); await this.transactionsLockingRepo.getTransactionsLockingType();
if (lockingType === TransactionsLockingGroup.All) { if (lockingType === TransactionsLockingGroup.All) {
return this.validateTransactionsLocking( await this.validateTransactionsLocking(
transactionDate, transactionDate,
TransactionsLockingGroup.All, TransactionsLockingGroup.All,
); );
return;
} }
return this.validateTransactionsLocking(transactionDate, moduleType); await this.validateTransactionsLocking(transactionDate, moduleType);
}; };
} }

View File

@@ -33,7 +33,7 @@ export class FinancialTransactionLockingGuardSubscriber {
* Transaction locking guard on manual journal creating. * Transaction locking guard on manual journal creating.
* @param {IManualJournalCreatingPayload} payload * @param {IManualJournalCreatingPayload} payload
*/ */
@OnEvent(events.manualJournals.onCreating) @OnEvent(events.manualJournals.onCreating, { suppressErrors: false })
public async transactionsLockingGuardOnManualJournalCreating({ public async transactionsLockingGuardOnManualJournalCreating({
manualJournalDTO, manualJournalDTO,
}: IManualJournalCreatingPayload) { }: IManualJournalCreatingPayload) {
@@ -49,7 +49,7 @@ export class FinancialTransactionLockingGuardSubscriber {
* Transactions locking guard on manual journal deleting. * Transactions locking guard on manual journal deleting.
* @param {IManualJournalEditingPayload} payload * @param {IManualJournalEditingPayload} payload
*/ */
@OnEvent(events.manualJournals.onDeleting) @OnEvent(events.manualJournals.onDeleting, { suppressErrors: false })
public async transactionsLockingGuardOnManualJournalDeleting({ public async transactionsLockingGuardOnManualJournalDeleting({
oldManualJournal, oldManualJournal,
}: IManualJournalEditingPayload) { }: IManualJournalEditingPayload) {
@@ -65,7 +65,7 @@ export class FinancialTransactionLockingGuardSubscriber {
* Transactions locking guard on manual journal editing. * Transactions locking guard on manual journal editing.
* @param {IManualJournalDeletingPayload} payload * @param {IManualJournalDeletingPayload} payload
*/ */
@OnEvent(events.manualJournals.onEditing) @OnEvent(events.manualJournals.onEditing, { suppressErrors: false })
public async transactionsLockingGuardOnManualJournalEditing({ public async transactionsLockingGuardOnManualJournalEditing({
oldManualJournal, oldManualJournal,
manualJournalDTO, manualJournalDTO,
@@ -87,7 +87,7 @@ export class FinancialTransactionLockingGuardSubscriber {
* Transactions locking guard on manual journal publishing. * Transactions locking guard on manual journal publishing.
* @param {IManualJournalPublishingPayload} * @param {IManualJournalPublishingPayload}
*/ */
@OnEvent(events.manualJournals.onPublishing) @OnEvent(events.manualJournals.onPublishing, { suppressErrors: false })
public async transactionsLockingGuardOnManualJournalPublishing({ public async transactionsLockingGuardOnManualJournalPublishing({
oldManualJournal, oldManualJournal,
}: IManualJournalPublishingPayload) { }: IManualJournalPublishingPayload) {
@@ -106,7 +106,7 @@ export class FinancialTransactionLockingGuardSubscriber {
* Transactions locking guard on expense creating. * Transactions locking guard on expense creating.
* @param {IExpenseCreatingPayload} payload * @param {IExpenseCreatingPayload} payload
*/ */
@OnEvent(events.expenses.onCreating) @OnEvent(events.expenses.onCreating, { suppressErrors: false })
public async transactionsLockingGuardOnExpenseCreating({ public async transactionsLockingGuardOnExpenseCreating({
expenseDTO, expenseDTO,
}: IExpenseCreatingPayload) { }: IExpenseCreatingPayload) {
@@ -122,7 +122,7 @@ export class FinancialTransactionLockingGuardSubscriber {
* Transactions locking guard on expense deleting. * Transactions locking guard on expense deleting.
* @param {IExpenseDeletingPayload} payload * @param {IExpenseDeletingPayload} payload
*/ */
@OnEvent(events.expenses.onDeleting) @OnEvent(events.expenses.onDeleting, { suppressErrors: false })
public async transactionsLockingGuardOnExpenseDeleting({ public async transactionsLockingGuardOnExpenseDeleting({
oldExpense, oldExpense,
}: IExpenseDeletingPayload) { }: IExpenseDeletingPayload) {
@@ -138,7 +138,7 @@ export class FinancialTransactionLockingGuardSubscriber {
* Transactions locking guard on expense editing. * Transactions locking guard on expense editing.
* @param {IExpenseEventEditingPayload} * @param {IExpenseEventEditingPayload}
*/ */
@OnEvent(events.expenses.onEditing) @OnEvent(events.expenses.onEditing, { suppressErrors: false })
public async transactionsLockingGuardOnExpenseEditing({ public async transactionsLockingGuardOnExpenseEditing({
oldExpense, oldExpense,
expenseDTO, expenseDTO,
@@ -160,7 +160,7 @@ export class FinancialTransactionLockingGuardSubscriber {
* Transactions locking guard on expense publishing. * Transactions locking guard on expense publishing.
* @param {IExpensePublishingPayload} payload - * @param {IExpensePublishingPayload} payload -
*/ */
@OnEvent(events.expenses.onPublishing) @OnEvent(events.expenses.onPublishing, { suppressErrors: false })
public async transactionsLockingGuardOnExpensePublishing({ public async transactionsLockingGuardOnExpensePublishing({
oldExpense, oldExpense,
}: IExpensePublishingPayload) { }: IExpensePublishingPayload) {
@@ -179,7 +179,7 @@ export class FinancialTransactionLockingGuardSubscriber {
* Transactions locking guard on cashflow transaction creating. * Transactions locking guard on cashflow transaction creating.
* @param {ICommandCashflowCreatingPayload} * @param {ICommandCashflowCreatingPayload}
*/ */
@OnEvent(events.cashflow.onTransactionCreating) @OnEvent(events.cashflow.onTransactionCreating, { suppressErrors: false })
public async transactionsLockingGuardOnCashflowTransactionCreating({ public async transactionsLockingGuardOnCashflowTransactionCreating({
newTransactionDTO, newTransactionDTO,
}: ICommandCashflowCreatingPayload) { }: ICommandCashflowCreatingPayload) {
@@ -194,7 +194,7 @@ export class FinancialTransactionLockingGuardSubscriber {
* Transactions locking guard on cashflow transaction deleting. * Transactions locking guard on cashflow transaction deleting.
* @param {ICommandCashflowDeletingPayload} * @param {ICommandCashflowDeletingPayload}
*/ */
@OnEvent(events.cashflow.onTransactionDeleting) @OnEvent(events.cashflow.onTransactionDeleting, { suppressErrors: false })
public async transactionsLockingGuardOnCashflowTransactionDeleting({ public async transactionsLockingGuardOnCashflowTransactionDeleting({
oldCashflowTransaction, oldCashflowTransaction,
}: ICommandCashflowDeletingPayload) { }: ICommandCashflowDeletingPayload) {

View File

@@ -37,7 +37,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on payment editing. * Transaction locking guard on payment editing.
* @param {IBillPaymentEditingPayload} * @param {IBillPaymentEditingPayload}
*/ */
@OnEvent(events.billPayment.onEditing) @OnEvent(events.billPayment.onEditing, { suppressErrors: false })
public async transactionLockingGuardOnPaymentEditing({ public async transactionLockingGuardOnPaymentEditing({
oldBillPayment, oldBillPayment,
billPaymentDTO, billPaymentDTO,
@@ -56,7 +56,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on payment creating. * Transaction locking guard on payment creating.
* @param {IBillPaymentCreatingPayload} * @param {IBillPaymentCreatingPayload}
*/ */
@OnEvent(events.billPayment.onCreating) @OnEvent(events.billPayment.onCreating, { suppressErrors: false })
public async transactionLockingGuardOnPaymentCreating({ public async transactionLockingGuardOnPaymentCreating({
billPaymentDTO, billPaymentDTO,
}: IBillPaymentCreatingPayload) { }: IBillPaymentCreatingPayload) {
@@ -69,7 +69,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on payment deleting. * Transaction locking guard on payment deleting.
* @param {IBillPaymentDeletingPayload} payload - * @param {IBillPaymentDeletingPayload} payload -
*/ */
@OnEvent(events.billPayment.onDeleting) @OnEvent(events.billPayment.onDeleting, { suppressErrors: false })
public async transactionLockingGuardOnPaymentDeleting({ public async transactionLockingGuardOnPaymentDeleting({
oldBillPayment, oldBillPayment,
}: IBillPaymentDeletingPayload) { }: IBillPaymentDeletingPayload) {
@@ -88,7 +88,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on bill creating. * Transaction locking guard on bill creating.
* @param {IBillCreatingPayload} payload * @param {IBillCreatingPayload} payload
*/ */
@OnEvent(events.bill.onCreating) @OnEvent(events.bill.onCreating, { suppressErrors: false })
public async transactionLockingGuardOnBillCreating({ public async transactionLockingGuardOnBillCreating({
billDTO, billDTO,
}: IBillCreatingPayload) { }: IBillCreatingPayload) {
@@ -104,7 +104,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on bill editing. * Transaction locking guard on bill editing.
* @param {IBillEditingPayload} payload * @param {IBillEditingPayload} payload
*/ */
@OnEvent(events.bill.onEditing) @OnEvent(events.bill.onEditing, { suppressErrors: false })
public async transactionLockingGuardOnBillEditing({ public async transactionLockingGuardOnBillEditing({
oldBill, oldBill,
billDTO, billDTO,
@@ -126,7 +126,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on bill deleting. * Transaction locking guard on bill deleting.
* @param {IBillEventDeletingPayload} payload * @param {IBillEventDeletingPayload} payload
*/ */
@OnEvent(events.bill.onDeleting) @OnEvent(events.bill.onDeleting, { suppressErrors: false })
public async transactionLockingGuardOnBillDeleting({ public async transactionLockingGuardOnBillDeleting({
oldBill, oldBill,
}: IBillEventDeletingPayload) { }: IBillEventDeletingPayload) {
@@ -148,7 +148,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on vendor credit creating. * Transaction locking guard on vendor credit creating.
* @param {IVendorCreditCreatingPayload} payload * @param {IVendorCreditCreatingPayload} payload
*/ */
@OnEvent(events.vendorCredit.onCreating) @OnEvent(events.vendorCredit.onCreating, { suppressErrors: false })
public async transactionLockingGuardOnVendorCreditCreating({ public async transactionLockingGuardOnVendorCreditCreating({
vendorCreditCreateDTO, vendorCreditCreateDTO,
}: IVendorCreditCreatingPayload) { }: IVendorCreditCreatingPayload) {
@@ -164,7 +164,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on vendor credit deleting. * Transaction locking guard on vendor credit deleting.
* @param {IVendorCreditDeletingPayload} payload * @param {IVendorCreditDeletingPayload} payload
*/ */
@OnEvent(events.vendorCredit.onDeleting) @OnEvent(events.vendorCredit.onDeleting, { suppressErrors: false })
public async transactionLockingGuardOnVendorCreditDeleting({ public async transactionLockingGuardOnVendorCreditDeleting({
oldVendorCredit, oldVendorCredit,
}: IVendorCreditDeletingPayload) { }: IVendorCreditDeletingPayload) {
@@ -180,7 +180,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on vendor credit editing. * Transaction locking guard on vendor credit editing.
* @param {IVendorCreditEditingPayload} payload * @param {IVendorCreditEditingPayload} payload
*/ */
@OnEvent(events.vendorCredit.onEditing) @OnEvent(events.vendorCredit.onEditing, { suppressErrors: false })
public async transactionLockingGuardOnVendorCreditEditing({ public async transactionLockingGuardOnVendorCreditEditing({
oldVendorCredit, oldVendorCredit,
vendorCreditDTO, vendorCreditDTO,
@@ -202,7 +202,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on refund vendor credit creating. * Transaction locking guard on refund vendor credit creating.
* @param {IRefundVendorCreditCreatingPayload} payload - * @param {IRefundVendorCreditCreatingPayload} payload -
*/ */
@OnEvent(events.vendorCredit.onRefundCreating) @OnEvent(events.vendorCredit.onRefundCreating, { suppressErrors: false })
public async transactionLockingGuardOnRefundVendorCredit({ public async transactionLockingGuardOnRefundVendorCredit({
refundVendorCreditDTO, refundVendorCreditDTO,
}: IRefundVendorCreditCreatingPayload) { }: IRefundVendorCreditCreatingPayload) {
@@ -215,7 +215,7 @@ export class PurchasesTransactionLockingGuardSubscriber {
* Transaction locking guard on refund vendor credit deleting. * Transaction locking guard on refund vendor credit deleting.
* @param {IRefundVendorCreditDeletingPayload} payload * @param {IRefundVendorCreditDeletingPayload} payload
*/ */
@OnEvent(events.vendorCredit.onRefundDeleting) @OnEvent(events.vendorCredit.onRefundDeleting, { suppressErrors: false })
public async transactionLockingGuardOnRefundCreditDeleting({ public async transactionLockingGuardOnRefundCreditDeleting({
oldRefundCredit, oldRefundCredit,
}: IRefundVendorCreditDeletingPayload) { }: IRefundVendorCreditDeletingPayload) {

View File

@@ -48,7 +48,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on invoice creating. * Transaction locking guard on invoice creating.
* @param {ISaleInvoiceCreatingPaylaod} payload * @param {ISaleInvoiceCreatingPaylaod} payload
*/ */
@OnEvent(events.saleInvoice.onCreating) @OnEvent(events.saleInvoice.onCreating, { suppressErrors: false })
public async transactionLockingGuardOnInvoiceCreating({ public async transactionLockingGuardOnInvoiceCreating({
saleInvoiceDTO, saleInvoiceDTO,
}: ISaleInvoiceCreatingPaylaod) { }: ISaleInvoiceCreatingPaylaod) {
@@ -64,7 +64,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on invoice editing. * Transaction locking guard on invoice editing.
* @param {ISaleInvoiceEditingPayload} payload * @param {ISaleInvoiceEditingPayload} payload
*/ */
@OnEvent(events.saleInvoice.onEditing) @OnEvent(events.saleInvoice.onEditing, { suppressErrors: false })
public async transactionLockingGuardOnInvoiceEditing({ public async transactionLockingGuardOnInvoiceEditing({
oldSaleInvoice, oldSaleInvoice,
saleInvoiceDTO, saleInvoiceDTO,
@@ -86,7 +86,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on invoice deleting. * Transaction locking guard on invoice deleting.
* @param {ISaleInvoiceDeletePayload} payload * @param {ISaleInvoiceDeletePayload} payload
*/ */
@OnEvent(events.saleInvoice.onDelete) @OnEvent(events.saleInvoice.onDelete, { suppressErrors: false })
public async transactionLockingGuardOnInvoiceDeleting({ public async transactionLockingGuardOnInvoiceDeleting({
oldSaleInvoice, oldSaleInvoice,
}: ISaleInvoiceDeletePayload) { }: ISaleInvoiceDeletePayload) {
@@ -102,7 +102,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on invoice writingoff. * Transaction locking guard on invoice writingoff.
* @param {ISaleInvoiceWriteoffCreatePayload} payload * @param {ISaleInvoiceWriteoffCreatePayload} payload
*/ */
@OnEvent(events.saleInvoice.onWriteoff) @OnEvent(events.saleInvoice.onWriteoff, { suppressErrors: false })
public async transactionLockinGuardOnInvoiceWritingoff({ public async transactionLockinGuardOnInvoiceWritingoff({
saleInvoice, saleInvoice,
}: ISaleInvoiceWriteoffCreatePayload) { }: ISaleInvoiceWriteoffCreatePayload) {
@@ -115,7 +115,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaciton locking guard on canceling written-off invoice. * Transaciton locking guard on canceling written-off invoice.
* @param {ISaleInvoiceWrittenOffCancelPayload} payload * @param {ISaleInvoiceWrittenOffCancelPayload} payload
*/ */
@OnEvent(events.saleInvoice.onWrittenoffCancel) @OnEvent(events.saleInvoice.onWrittenoffCancel, { suppressErrors: false })
public async transactionLockinGuardOnInvoiceWritingoffCanceling({ public async transactionLockinGuardOnInvoiceWritingoffCanceling({
saleInvoice, saleInvoice,
}: ISaleInvoiceWrittenOffCancelPayload) { }: ISaleInvoiceWrittenOffCancelPayload) {
@@ -134,7 +134,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on receipt creating. * Transaction locking guard on receipt creating.
* @param {ISaleReceiptCreatingPayload} * @param {ISaleReceiptCreatingPayload}
*/ */
@OnEvent(events.saleReceipt.onCreating) @OnEvent(events.saleReceipt.onCreating, { suppressErrors: false })
public async transactionLockingGuardOnReceiptCreating({ public async transactionLockingGuardOnReceiptCreating({
saleReceiptDTO, saleReceiptDTO,
}: ISaleReceiptCreatingPayload) { }: ISaleReceiptCreatingPayload) {
@@ -150,7 +150,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on receipt creating. * Transaction locking guard on receipt creating.
* @param {ISaleReceiptDeletingPayload} * @param {ISaleReceiptDeletingPayload}
*/ */
@OnEvent(events.saleReceipt.onDeleting) @OnEvent(events.saleReceipt.onDeleting, { suppressErrors: false })
public async transactionLockingGuardOnReceiptDeleting({ public async transactionLockingGuardOnReceiptDeleting({
oldSaleReceipt, oldSaleReceipt,
}: ISaleReceiptDeletingPayload) { }: ISaleReceiptDeletingPayload) {
@@ -165,7 +165,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on sale receipt editing. * Transaction locking guard on sale receipt editing.
* @param {ISaleReceiptEditingPayload} payload * @param {ISaleReceiptEditingPayload} payload
*/ */
@OnEvent(events.saleReceipt.onEditing) @OnEvent(events.saleReceipt.onEditing, { suppressErrors: false })
public async transactionLockingGuardOnReceiptEditing({ public async transactionLockingGuardOnReceiptEditing({
oldSaleReceipt, oldSaleReceipt,
saleReceiptDTO, saleReceiptDTO,
@@ -184,7 +184,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on sale receipt closing. * Transaction locking guard on sale receipt closing.
* @param {ISaleReceiptEventClosingPayload} payload * @param {ISaleReceiptEventClosingPayload} payload
*/ */
@OnEvent(events.saleReceipt.onClosing) @OnEvent(events.saleReceipt.onClosing, { suppressErrors: false })
public async transactionLockingGuardOnReceiptClosing({ public async transactionLockingGuardOnReceiptClosing({
oldSaleReceipt, oldSaleReceipt,
}: ISaleReceiptEventClosingPayload) { }: ISaleReceiptEventClosingPayload) {
@@ -203,7 +203,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on credit note deleting. * Transaction locking guard on credit note deleting.
* @param {ICreditNoteDeletingPayload} payload - * @param {ICreditNoteDeletingPayload} payload -
*/ */
@OnEvent(events.creditNote.onDeleting) @OnEvent(events.creditNote.onDeleting, { suppressErrors: false })
public async transactionLockingGuardOnCreditDeleting({ public async transactionLockingGuardOnCreditDeleting({
oldCreditNote, oldCreditNote,
}: ICreditNoteDeletingPayload) { }: ICreditNoteDeletingPayload) {
@@ -219,7 +219,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on credit note creating. * Transaction locking guard on credit note creating.
* @param {ICreditNoteCreatingPayload} payload * @param {ICreditNoteCreatingPayload} payload
*/ */
@OnEvent(events.creditNote.onCreating) @OnEvent(events.creditNote.onCreating, { suppressErrors: false })
public async transactionLockingGuardOnCreditCreating({ public async transactionLockingGuardOnCreditCreating({
creditNoteDTO, creditNoteDTO,
}: ICreditNoteCreatingPayload) { }: ICreditNoteCreatingPayload) {
@@ -235,7 +235,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on credit note editing. * Transaction locking guard on credit note editing.
* @param {ICreditNoteEditingPayload} payload - * @param {ICreditNoteEditingPayload} payload -
*/ */
@OnEvent(events.creditNote.onEditing) @OnEvent(events.creditNote.onEditing, { suppressErrors: false })
public async transactionLockingGuardOnCreditEditing({ public async transactionLockingGuardOnCreditEditing({
creditNoteEditDTO, creditNoteEditDTO,
oldCreditNote, oldCreditNote,
@@ -257,7 +257,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on payment deleting. * Transaction locking guard on payment deleting.
* @param {IRefundCreditNoteDeletingPayload} paylaod - * @param {IRefundCreditNoteDeletingPayload} paylaod -
*/ */
@OnEvent(events.creditNote.onRefundDeleting) @OnEvent(events.creditNote.onRefundDeleting, { suppressErrors: false })
public async transactionLockingGuardOnCreditRefundDeleteing({ public async transactionLockingGuardOnCreditRefundDeleteing({
oldRefundCredit, oldRefundCredit,
}: IRefundCreditNoteDeletingPayload) { }: IRefundCreditNoteDeletingPayload) {
@@ -268,7 +268,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on refund credit note creating. * Transaction locking guard on refund credit note creating.
* @param {IRefundCreditNoteCreatingPayload} payload - * @param {IRefundCreditNoteCreatingPayload} payload -
*/ */
@OnEvent(events.creditNote.onRefundCreating) @OnEvent(events.creditNote.onRefundCreating, { suppressErrors: false })
public async transactionLockingGuardOnCreditRefundCreating({ public async transactionLockingGuardOnCreditRefundCreating({
newCreditNoteDTO, newCreditNoteDTO,
}: IRefundCreditNoteCreatingPayload) { }: IRefundCreditNoteCreatingPayload) {
@@ -284,7 +284,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on estimate creating. * Transaction locking guard on estimate creating.
* @param {ISaleEstimateCreatingPayload} payload - * @param {ISaleEstimateCreatingPayload} payload -
*/ */
@OnEvent(events.saleEstimate.onCreating) @OnEvent(events.saleEstimate.onCreating, { suppressErrors: false })
public async transactionLockingGuardOnEstimateCreating({ public async transactionLockingGuardOnEstimateCreating({
estimateDTO, estimateDTO,
}: ISaleEstimateCreatingPayload) { }: ISaleEstimateCreatingPayload) {
@@ -300,7 +300,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on estimate deleting. * Transaction locking guard on estimate deleting.
* @param {ISaleEstimateDeletingPayload} payload * @param {ISaleEstimateDeletingPayload} payload
*/ */
@OnEvent(events.saleEstimate.onDeleting) @OnEvent(events.saleEstimate.onDeleting, { suppressErrors: false })
public async transactionLockingGuardOnEstimateDeleting({ public async transactionLockingGuardOnEstimateDeleting({
oldSaleEstimate, oldSaleEstimate,
}: ISaleEstimateDeletingPayload) { }: ISaleEstimateDeletingPayload) {
@@ -316,7 +316,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on estimate editing. * Transaction locking guard on estimate editing.
* @param {ISaleEstimateEditingPayload} payload * @param {ISaleEstimateEditingPayload} payload
*/ */
@OnEvent(events.saleEstimate.onEditing) @OnEvent(events.saleEstimate.onEditing, { suppressErrors: false })
public async transactionLockingGuardOnEstimateEditing({ public async transactionLockingGuardOnEstimateEditing({
oldSaleEstimate, oldSaleEstimate,
estimateDTO, estimateDTO,
@@ -344,7 +344,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on payment receive editing. * Transaction locking guard on payment receive editing.
* @param {IPaymentReceivedEditingPayload} * @param {IPaymentReceivedEditingPayload}
*/ */
@OnEvent(events.paymentReceive.onEditing) @OnEvent(events.paymentReceive.onEditing, { suppressErrors: false })
public async transactionLockingGuardOnPaymentEditing({ public async transactionLockingGuardOnPaymentEditing({
oldPaymentReceive, oldPaymentReceive,
paymentReceiveDTO, paymentReceiveDTO,
@@ -363,7 +363,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on payment creating. * Transaction locking guard on payment creating.
* @param {IPaymentReceivedCreatingPayload} * @param {IPaymentReceivedCreatingPayload}
*/ */
@OnEvent(events.paymentReceive.onCreating) @OnEvent(events.paymentReceive.onCreating, { suppressErrors: false })
public async transactionLockingGuardOnPaymentCreating({ public async transactionLockingGuardOnPaymentCreating({
paymentReceiveDTO, paymentReceiveDTO,
}: IPaymentReceivedCreatingPayload) { }: IPaymentReceivedCreatingPayload) {
@@ -376,7 +376,7 @@ export class SalesTransactionLockingGuardSubscriber {
* Transaction locking guard on payment deleting. * Transaction locking guard on payment deleting.
* @param {IPaymentReceivedDeletingPayload} payload - * @param {IPaymentReceivedDeletingPayload} payload -
*/ */
@OnEvent(events.paymentReceive.onDeleting) @OnEvent(events.paymentReceive.onDeleting, { suppressErrors: false })
public async transactionLockingGuardPaymentDeleting({ public async transactionLockingGuardPaymentDeleting({
oldPaymentReceive, oldPaymentReceive,
}: IPaymentReceivedDeletingPayload) { }: IPaymentReceivedDeletingPayload) {

View File

@@ -69,7 +69,7 @@ function GlobalErrors({
if (globalErrors.transactionsLocked) { if (globalErrors.transactionsLocked) {
AppToaster.show({ AppToaster.show({
message: intl.get('global_error.transactions_locked', { message: intl.get('global_error.transactions_locked', {
lockedToDate: globalErrors.transactionsLocked.formatted_locked_to_date, lockedToDate: globalErrors.transactionsLocked.formattedLockedToDate,
}), }),
intent: Intent.DANGER, intent: Intent.DANGER,
onDismiss: () => { onDismiss: () => {

View File

@@ -64,12 +64,11 @@ export default function useApiRequest() {
setGlobalErrors({ too_many_requests: true }); setGlobalErrors({ too_many_requests: true });
} }
if (status === 400) { if (status === 400) {
if ( const lockedError = data.errors.find(
data.errors.find(
(error) => error.type === 'TRANSACTIONS_DATE_LOCKED', (error) => error.type === 'TRANSACTIONS_DATE_LOCKED',
) );
) { if (lockedError) {
setGlobalErrors({ transactionsLocked: { ...lockedError.data } }); setGlobalErrors({ transactionsLocked: { ...lockedError.payload } });
} }
if ( if (
data.errors.find( data.errors.find(