From 78583751ec227a10305271afa07f1d4c4f03274f Mon Sep 17 00:00:00 2001 From: jorgep Date: Thu, 15 Feb 2024 16:22:13 +0100 Subject: [PATCH] refactor: refs #6760 ticketsIds improved --- .../back/methods/ticket/transferClient.js | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/modules/ticket/back/methods/ticket/transferClient.js b/modules/ticket/back/methods/ticket/transferClient.js index 1db49b2747..d38c0e8a74 100644 --- a/modules/ticket/back/methods/ticket/transferClient.js +++ b/modules/ticket/back/methods/ticket/transferClient.js @@ -22,7 +22,6 @@ module.exports = Self => { Self.transferClient = async(ctx, id, clientFk, options) => { const models = Self.app.models; const myOptions = {}; - const tickets = []; let tx; if (typeof options == 'object') @@ -36,7 +35,7 @@ module.exports = Self => { try { await Self.isEditableOrThrow(ctx, id, myOptions); - const ticketRelation = await models.TicketRefund.findOne({ + const ticketRefund = await models.TicketRefund.findOne({ where: {or: [{originalTicketFk: id}, {refundTicketFk: id}]}, include: [{relation: 'refundTicket'}, {relation: 'originalTicket'}] }, myOptions); @@ -46,16 +45,21 @@ module.exports = Self => { const attributes = {clientFk, addressFk}; - if (ticketRelation) { - const {refundTicket, originalTicket} = ticketRelation; + const tickets = []; + const ticketIds = []; + + if (ticketRefund) { + const {refundTicket, originalTicket} = ticketRefund; tickets.push(refundTicket(), originalTicket()); - for (const ticket of tickets) + for (const ticket of tickets) { await ticket.updateAttributes(attributes, myOptions); - } else + ticketIds.push(ticket.id); + } + } else { await Self.updateAll({id}, attributes, myOptions); - - const ticketIds = tickets.length ? tickets.map(ticket => ticket.id) : [id]; + ticketIds.push(id); + } await models.Claim.updateAll({ticketFk: {inq: ticketIds}}, {clientFk}, myOptions);