From 619ac4e0538f161d4356c8aee8d13a722ba703cd Mon Sep 17 00:00:00 2001 From: guillermo Date: Tue, 5 Mar 2024 08:55:40 +0100 Subject: [PATCH] refactor: refs #6495 Requested changes --- ...MailPurchases.sql => client_mailSales.sql} | 56 +++++++++++-------- ...ncher.sql => client_mailSalesLauncher.sql} | 15 +++-- .../10918-wheatRose/00-firstScript.sql | 2 +- 3 files changed, 43 insertions(+), 30 deletions(-) rename db/routines/vn/procedures/{client_sendMailPurchases.sql => client_mailSales.sql} (78%) rename db/routines/vn/procedures/{client_sendMailPurchasesLauncher.sql => client_mailSalesLauncher.sql} (77%) diff --git a/db/routines/vn/procedures/client_sendMailPurchases.sql b/db/routines/vn/procedures/client_mailSales.sql similarity index 78% rename from db/routines/vn/procedures/client_sendMailPurchases.sql rename to db/routines/vn/procedures/client_mailSales.sql index 2eeddb479c..7178d981f3 100644 --- a/db/routines/vn/procedures/client_sendMailPurchases.sql +++ b/db/routines/vn/procedures/client_mailSales.sql @@ -1,9 +1,9 @@ DELIMITER $$ -CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`client_sendMailPurchases`( +CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`client_mailSales`( vSelf INT, vDated DATE ) -BEGIN +proc: BEGIN /** * Envia un correo electrónico con un resumen de los pedidos * preparados para un cliente. @@ -43,14 +43,19 @@ BEGIN SET vDated = IFNULL(vDated, util.yesterday()); - OPEN vTickets; - FETCH vTickets INTO vTicketFk, vAlias, vAmount, vStreet, vCity; - SET vString = CONCAT('

', '

Relación de envíos.

', '

Dia: ', vDated, '

'); - WHILE NOT vDone DO + OPEN vTickets; + l: LOOP + SET vDone = FALSE; + FETCH vTickets INTO vTicketFk, vAlias, vAmount, vStreet, vCity; + + IF vDone THEN + LEAVE l; + END IF; + SET vString = CONCAT(vString, '

', ' @@ -63,29 +68,34 @@ BEGIN
', ' ', vAlias, '
', ' ', vStreet, '(', vCity, ')'); - FETCH vTickets INTO vTicketFk, vAlias, vAmount, vStreet, vCity; - END WHILE; + END LOOP; + + IF vTicketFk IS NULL THEN + LEAVE proc; + END IF; SET vString = CONCAT( - vString, - '', - '', - '
', - '

Puede acceder al detalle de los albaranes haciendo click sobre el número de Ticket', - '

Muchas gracias por su confianza

', - '

'); + vString, + '', + '', + '
', + '

Puede acceder al detalle de los albaranes haciendo click sobre el número de Ticket', + '

Muchas gracias por su confianza

', + '

'); - -- Envío del email - SELECT CONCAT(email,', pako@verdnatura.es') INTO vMailTo + SELECT email INTO vMailTo FROM client WHERE id = vSelf AND email <> ''; - CALL mail_insert( - IFNULL(vMailTo, 'pako.natek@gmail.com'), - 'pako@verdnatura.es', - 'Resumen de pedidos preparados', - vString - ); + -- Envío del email + IF vMailTo IS NOT NULL THEN + CALL mail_insert( + vMailTo, + NULL, + 'Resumen de pedidos preparados', + vString + ); + END IF; END$$ DELIMITER ; diff --git a/db/routines/vn/procedures/client_sendMailPurchasesLauncher.sql b/db/routines/vn/procedures/client_mailSalesLauncher.sql similarity index 77% rename from db/routines/vn/procedures/client_sendMailPurchasesLauncher.sql rename to db/routines/vn/procedures/client_mailSalesLauncher.sql index e93e803da4..89337b5c8d 100644 --- a/db/routines/vn/procedures/client_sendMailPurchasesLauncher.sql +++ b/db/routines/vn/procedures/client_mailSalesLauncher.sql @@ -1,5 +1,5 @@ DELIMITER $$ -CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`client_sendMailPurchasesLauncher`() +CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`client_mailSalesLauncher`() BEGIN /** * Lanza el envío de correos electrónicos con el resumen de pedidos @@ -17,11 +17,14 @@ BEGIN DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE; OPEN vClients; - FETCH vClients INTO vClientFk; - - WHILE NOT vDone DO - CALL client_sendMailPurchases(util.yesterday(), vClientFk); + l: LOOP + SET vDone = FALSE; FETCH vClients INTO vClientFk; - END WHILE; + + IF vDone THEN + LEAVE l; + END IF; + CALL client_mailSales(vClientFk, util.yesterday()); + END LOOP; END$$ DELIMITER ; diff --git a/db/versions/10918-wheatRose/00-firstScript.sql b/db/versions/10918-wheatRose/00-firstScript.sql index 40cb99ab01..c915e909a8 100644 --- a/db/versions/10918-wheatRose/00-firstScript.sql +++ b/db/versions/10918-wheatRose/00-firstScript.sql @@ -1,4 +1,4 @@ UPDATE IGNORE bs.nightTask - SET `procedure` = 'client_sendMailPurchasesLauncher', + SET `procedure` = 'client_mailSalesLauncher', `schema` = 'vn' WHERE `procedure` = 'emailYesterdayPurchasesLauncher';