From a438cdeefcef5efca93485c7a48f7d470a5df611 Mon Sep 17 00:00:00 2001 From: Mehrshad Date: Wed, 13 Mar 2024 13:45:31 +0330 Subject: [PATCH] commands: inform buyer when order is canceled When the seller cancels an order, the buyer will get a wrong and confusing message: ``` You have cancelled the order ID: orderID ``` So, in this commit, the bot sends a message that tells the buyer: ``` Order orderId has been cancelled. There is no need to create an invoice. ``` --- bot/commands.js | 2 +- bot/messages.ts | 12 ++++++++++++ locales/en.yaml | 1 + 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/bot/commands.js b/bot/commands.js index ebf9d499..ab201e27 100644 --- a/bot/commands.js +++ b/bot/commands.js @@ -327,7 +327,7 @@ const cancelAddInvoice = async (ctx, order, job) => { ); } } else { - await messages.successCancelOrderMessage(ctx, user, order, i18nCtx); + await messages.successCancelOrderInvoiceMessage(ctx, user, order, i18nCtx); } } } catch (error) { diff --git a/bot/messages.ts b/bot/messages.ts index 5b7330ff..1f138f8f 100644 --- a/bot/messages.ts +++ b/bot/messages.ts @@ -977,6 +977,17 @@ const successCancelOrderMessage = async (ctx: MainContext, user: UserDocument, o } }; +const successCancelOrderInvoiceMessage = async (ctx: MainContext, user: UserDocument, order: IOrder, i18n: I18nContext) => { + try { + await ctx.telegram.sendMessage( + user.tg_id, + i18n.t('cancel_invoice', { orderId: order._id }) + ); + } catch (error) { + logger.error(error); + } +}; + const counterPartyCancelOrderMessage = async (ctx: MainContext, user: UserDocument, order: IOrder, i18n: I18nContext) => { try { await ctx.telegram.sendMessage( @@ -1680,6 +1691,7 @@ module.exports = { successCompleteOrderMessage, successCancelOrderByAdminMessage, successCancelOrderMessage, + successCancelOrderInvoiceMessage, badStatusOnCancelOrderMessage, invoicePaymentFailedMessage, userCantTakeMoreThanOneWaitingOrderMessage, diff --git a/locales/en.yaml b/locales/en.yaml index 4cc2d56a..e042ccaf 100644 --- a/locales/en.yaml +++ b/locales/en.yaml @@ -273,6 +273,7 @@ invoice_already_being_paid: You have alreday send an invoice for this order and lightning_address_saved: Lightning address has been saved cancel_error: This order cannot be cancelled at this moment cancel_success: 'You have cancelled the order ID: ${orderId}!' +cancel_invoice: 'Order ${orderId} has been cancelled, no need to create an invoice.' cancelall_success: You have cancelled all your published orders! order_cancelled_by_admin: 'Admin has cancelled the order ID: ${orderId}!' order_completed: 'You have completed the order ID: ${orderId}!'