From 9a2351b958967a3ac4d5345eea8b27c61fa31ed8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Andr=C3=A9s?= Date: Tue, 27 Aug 2024 17:12:41 +0200 Subject: [PATCH 1/6] Hotfix: refs #7213 ticket_isTooLittle group by addressFk --- .../vn/functions/ticket_isTooLittle.sql | 20 +++++++++++++------ .../procedures/ticket_setProblemTooLittle.sql | 13 +++++++++--- 2 files changed, 24 insertions(+), 9 deletions(-) diff --git a/db/routines/vn/functions/ticket_isTooLittle.sql b/db/routines/vn/functions/ticket_isTooLittle.sql index bcbf09035..9874f00d4 100644 --- a/db/routines/vn/functions/ticket_isTooLittle.sql +++ b/db/routines/vn/functions/ticket_isTooLittle.sql @@ -12,13 +12,21 @@ BEGIN * @return BOOL */ DECLARE vIsTooLittle TINYINT(1); - + + WITH tickets AS ( + SELECT addressFk, DATE(shipped) dated + FROM vn.ticket + WHERE id = vSelf + ) SELECT (SUM(IFNULL(sv.litros, 0)) < vc.minTicketVolume - AND IFNULL(t.totalWithoutVat, 0) < vc.minTicketValue) INTO vIsTooLittle - FROM ticket t - LEFT JOIN saleVolume sv ON sv.ticketFk = t.id - JOIN volumeConfig vc - WHERE t.id = vSelf; + AND SUM(IFNULL(t.totalWithoutVat, 0)) < vc.minTicketValue) INTO vIsTooLittle + FROM vn.ticket t + JOIN tickets ts ON ts.addressFk = t.addressFk + JOIN vn.volumeConfig vc + LEFT JOIN vn.saleVolume sv ON sv.ticketFk = t.id + WHERE t.shipped BETWEEN ts.dated AND util.dayEnd(ts.dated) + AND sv.litros > 0 + AND t.totalWithoutVat > 0; RETURN vIsTooLittle; END$$ diff --git a/db/routines/vn/procedures/ticket_setProblemTooLittle.sql b/db/routines/vn/procedures/ticket_setProblemTooLittle.sql index 48cc47809..3d972a998 100644 --- a/db/routines/vn/procedures/ticket_setProblemTooLittle.sql +++ b/db/routines/vn/procedures/ticket_setProblemTooLittle.sql @@ -12,13 +12,20 @@ BEGIN CREATE OR REPLACE TEMPORARY TABLE tmp.ticket (INDEX(ticketFk, isProblemCalcNeeded)) ENGINE = MEMORY + WITH tickets AS ( + SELECT addressFk, DATE(shipped) dated + FROM vn.ticket + WHERE id = vSelf + ) SELECT vSelf ticketFk, - ticket_isTooLittle(vSelf) hasProblem, - ticket_isProblemCalcNeeded(vSelf) isProblemCalcNeeded; + ticket_isTooLittle(vSelf) hasProblem, + ticket_isProblemCalcNeeded(vSelf) isProblemCalcNeeded + FROM vn.ticket t + JOIN tickets ts ON ts.addressFk = t.addressFk + WHERE t.shipped BETWEEN ts.dated AND util.dayEnd(ts.dated); CALL ticket_setProblem('isTooLittle'); DROP TEMPORARY TABLE tmp.ticket; - END$$ DELIMITER ; \ No newline at end of file From 1ec9e5bf0969b0ca4e541b4fa6a5399fc467eaa1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Andr=C3=A9s?= Date: Tue, 27 Aug 2024 17:39:54 +0200 Subject: [PATCH 2/6] Hotfix: refs #7213 ticket_isTooLittle group by addressFk --- db/routines/vn/functions/ticket_isTooLittle.sql | 9 ++++----- db/routines/vn/procedures/ticket_setProblemTooLittle.sql | 6 +++--- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/db/routines/vn/functions/ticket_isTooLittle.sql b/db/routines/vn/functions/ticket_isTooLittle.sql index 9874f00d4..dee1df29b 100644 --- a/db/routines/vn/functions/ticket_isTooLittle.sql +++ b/db/routines/vn/functions/ticket_isTooLittle.sql @@ -20,13 +20,12 @@ BEGIN ) SELECT (SUM(IFNULL(sv.litros, 0)) < vc.minTicketVolume AND SUM(IFNULL(t.totalWithoutVat, 0)) < vc.minTicketValue) INTO vIsTooLittle - FROM vn.ticket t - JOIN tickets ts ON ts.addressFk = t.addressFk - JOIN vn.volumeConfig vc + FROM tickets ts + JOIN vn.ticket t ON t.addressFk = ts.addressFk LEFT JOIN vn.saleVolume sv ON sv.ticketFk = t.id + JOIN vn.volumeConfig vc WHERE t.shipped BETWEEN ts.dated AND util.dayEnd(ts.dated) - AND sv.litros > 0 - AND t.totalWithoutVat > 0; + AND ticket_isProblemCalcNeeded(t.id); RETURN vIsTooLittle; END$$ diff --git a/db/routines/vn/procedures/ticket_setProblemTooLittle.sql b/db/routines/vn/procedures/ticket_setProblemTooLittle.sql index 3d972a998..fe2d3306d 100644 --- a/db/routines/vn/procedures/ticket_setProblemTooLittle.sql +++ b/db/routines/vn/procedures/ticket_setProblemTooLittle.sql @@ -17,9 +17,9 @@ BEGIN FROM vn.ticket WHERE id = vSelf ) - SELECT vSelf ticketFk, - ticket_isTooLittle(vSelf) hasProblem, - ticket_isProblemCalcNeeded(vSelf) isProblemCalcNeeded + SELECT t.id ticketFk, + ticket_isTooLittle(t.id) hasProblem, + ticket_isProblemCalcNeeded(t.id) isProblemCalcNeeded FROM vn.ticket t JOIN tickets ts ON ts.addressFk = t.addressFk WHERE t.shipped BETWEEN ts.dated AND util.dayEnd(ts.dated); From 5b49e7cf459205d691dc28191f4c2ac0f46875be Mon Sep 17 00:00:00 2001 From: Javier Segarra Date: Wed, 28 Aug 2024 06:51:32 +0000 Subject: [PATCH 3/6] fix(salix): rollback updateClaim --- modules/claim/back/methods/claim/updateClaim.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/claim/back/methods/claim/updateClaim.js b/modules/claim/back/methods/claim/updateClaim.js index 10d304496..326192385 100644 --- a/modules/claim/back/methods/claim/updateClaim.js +++ b/modules/claim/back/methods/claim/updateClaim.js @@ -108,7 +108,7 @@ module.exports = Self => { async function notifyStateChange(ctx, workerId, claim, newState) { const models = Self.app.models; - const url = await models.Url.getUrl('lilium'); + const url = await models.Url.getUrl(); const $t = ctx.req.__; const message = $t(`Claim state has changed to`, { @@ -122,7 +122,7 @@ module.exports = Self => { async function notifyPickUp(ctx, workerId, claim) { const models = Self.app.models; - const url = await models.Url.getUrl('lilium'); + const url = await models.Url.getUrl(); const $t = ctx.req.__; // $translate const message = $t('Claim will be picked', { From 27e30c0051cccc01f73e437ee5c10e689145d150 Mon Sep 17 00:00:00 2001 From: Javier Segarra Date: Wed, 28 Aug 2024 09:22:31 +0200 Subject: [PATCH 4/6] fix(salix): redirect with params --- front/core/services/app.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/front/core/services/app.js b/front/core/services/app.js index 8cee66ef0..cec7bea7f 100644 --- a/front/core/services/app.js +++ b/front/core/services/app.js @@ -56,6 +56,8 @@ export default class App { } getUrl(route, appName = 'lilium') { + const index = window.location.hash.indexOf(route.toLowerCase()); + const newRoute = index < 0 ? route : window.location.hash.substring(index); const env = process.env.NODE_ENV; const filter = { where: {and: [ @@ -67,7 +69,7 @@ export default class App { return this.logger.$http.get('Urls/findOne', {filter}) .then(res => { if (res && res.data) - return res.data.url + route; + return res.data.url + newRoute; }) .catch(() => { this.showError('Direction not found'); From 49394b9b165444b8f0509b801a0cf282b556c201 Mon Sep 17 00:00:00 2001 From: carlossa Date: Wed, 28 Aug 2024 09:42:59 +0200 Subject: [PATCH 5/6] fix: change claim --- modules/claim/front/main/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/claim/front/main/index.js b/modules/claim/front/main/index.js index cbbbe0c7e..c921d5a12 100644 --- a/modules/claim/front/main/index.js +++ b/modules/claim/front/main/index.js @@ -7,7 +7,7 @@ export default class Claim extends ModuleMain { } async $onInit() { this.$state.go('home'); - window.location.href = await this.vnApp.getUrl(`Claim/`); + window.location.href = await this.vnApp.getUrl(`claim/`); } } From 423ba8c21836dfe1b111d275f40ac8f4d4742595 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Andr=C3=A9s?= Date: Wed, 28 Aug 2024 11:59:46 +0200 Subject: [PATCH 6/6] Hotfix: refs #7213 ticket_isTooLittle group by addressFk --- db/routines/vn/functions/ticket_isTooLittle.sql | 12 ++++++------ .../vn/procedures/ticket_setProblemTooLittle.sql | 15 +++++++++------ 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/db/routines/vn/functions/ticket_isTooLittle.sql b/db/routines/vn/functions/ticket_isTooLittle.sql index dee1df29b..2752b3f35 100644 --- a/db/routines/vn/functions/ticket_isTooLittle.sql +++ b/db/routines/vn/functions/ticket_isTooLittle.sql @@ -2,7 +2,7 @@ DELIMITER $$ CREATE OR REPLACE DEFINER=`root`@`localhost` FUNCTION `vn`.`ticket_isTooLittle`( vSelf INT ) - RETURNS tinyint(1) + RETURNS BOOL READS SQL DATA BEGIN /** @@ -11,20 +11,20 @@ BEGIN * @param vSelf Id ticket * @return BOOL */ - DECLARE vIsTooLittle TINYINT(1); + DECLARE vIsTooLittle BOOL; - WITH tickets AS ( + WITH ticketData AS ( SELECT addressFk, DATE(shipped) dated FROM vn.ticket WHERE id = vSelf ) SELECT (SUM(IFNULL(sv.litros, 0)) < vc.minTicketVolume AND SUM(IFNULL(t.totalWithoutVat, 0)) < vc.minTicketValue) INTO vIsTooLittle - FROM tickets ts - JOIN vn.ticket t ON t.addressFk = ts.addressFk + FROM ticketData td + JOIN vn.ticket t ON t.addressFk = td.addressFk LEFT JOIN vn.saleVolume sv ON sv.ticketFk = t.id JOIN vn.volumeConfig vc - WHERE t.shipped BETWEEN ts.dated AND util.dayEnd(ts.dated) + WHERE t.shipped BETWEEN td.dated AND util.dayEnd(td.dated) AND ticket_isProblemCalcNeeded(t.id); RETURN vIsTooLittle; diff --git a/db/routines/vn/procedures/ticket_setProblemTooLittle.sql b/db/routines/vn/procedures/ticket_setProblemTooLittle.sql index fe2d3306d..03677a05c 100644 --- a/db/routines/vn/procedures/ticket_setProblemTooLittle.sql +++ b/db/routines/vn/procedures/ticket_setProblemTooLittle.sql @@ -8,22 +8,25 @@ BEGIN * * @param vSelf Id del ticket */ - + DECLARE vTicketIsTooLittle BOOL; + + SELECT ticket_isTooLittle(vSelf) INTO vTicketIsTooLittle; + CREATE OR REPLACE TEMPORARY TABLE tmp.ticket (INDEX(ticketFk, isProblemCalcNeeded)) ENGINE = MEMORY - WITH tickets AS ( + WITH ticketData AS ( SELECT addressFk, DATE(shipped) dated FROM vn.ticket WHERE id = vSelf ) SELECT t.id ticketFk, - ticket_isTooLittle(t.id) hasProblem, + vTicketIsTooLittle hasProblem, ticket_isProblemCalcNeeded(t.id) isProblemCalcNeeded FROM vn.ticket t - JOIN tickets ts ON ts.addressFk = t.addressFk - WHERE t.shipped BETWEEN ts.dated AND util.dayEnd(ts.dated); - + JOIN ticketData td ON td.addressFk = t.addressFk + WHERE t.shipped BETWEEN td.dated AND util.dayEnd(td.dated); + CALL ticket_setProblem('isTooLittle'); DROP TEMPORARY TABLE tmp.ticket;