From dee70198241fdad2d46e9d992404cb14584d1985 Mon Sep 17 00:00:00 2001 From: ivanm Date: Thu, 8 Feb 2024 10:50:56 +0100 Subject: [PATCH 1/4] refs #6443 migrate vn2008.cc_to_iban to util.accountNumberToIban --- .../util/functions/accountNumberToIban.sql | 58 +++++++++++++++++++ db/routines/vn2008/functions/cc_to_iban.sql | 49 ---------------- .../10873-greenPaniculata/00-firstScript.sql | 1 + 3 files changed, 59 insertions(+), 49 deletions(-) create mode 100644 db/routines/util/functions/accountNumberToIban.sql delete mode 100644 db/routines/vn2008/functions/cc_to_iban.sql create mode 100644 db/versions/10873-greenPaniculata/00-firstScript.sql diff --git a/db/routines/util/functions/accountNumberToIban.sql b/db/routines/util/functions/accountNumberToIban.sql new file mode 100644 index 000000000..2b38efe72 --- /dev/null +++ b/db/routines/util/functions/accountNumberToIban.sql @@ -0,0 +1,58 @@ +DELIMITER $$ +CREATE OR REPLACE DEFINER=`root`@`localhost` FUNCTION `util`.`accountNumberToIban`( + vAccount VARCHAR(20) +) + RETURNS varchar(4) CHARSET utf8mb3 COLLATE utf8mb3_general_ci + DETERMINISTIC +BEGIN +/** +* Calcula y genera el código IBAN correspondiente +* a un número de cuenta bancaria español. +* +* @param vAccount Número de cuenta bancaria +* @return vIban Código IBAN de 4 caracteres. +*/ + DECLARE vIban VARCHAR(4); + + SELECT + CONCAT('ES', + RIGHT( + CONCAT(0, + 98-MOD( + CONCAT( + MOD( + CONCAT( + MOD( + CONCAT( + MOD( + SUBSTRING(vAccount, 1, 8), + 97 + ), + SUBSTRING(vAccount,9,8) + ), + 97 + ), + SUBSTRING( + CONCAT(vAccount, 142800), + 17, + 8 + ) + ), + 97 + ), + SUBSTRING( + CONCAT(vAccount, 142800), + 25, + 2 + ) + ), + 97 + ) + ), + 2 + ) + ) INTO vIban; + + RETURN vIban; +END$$ +DELIMITER ; \ No newline at end of file diff --git a/db/routines/vn2008/functions/cc_to_iban.sql b/db/routines/vn2008/functions/cc_to_iban.sql deleted file mode 100644 index c4515a9cc..000000000 --- a/db/routines/vn2008/functions/cc_to_iban.sql +++ /dev/null @@ -1,49 +0,0 @@ -DELIMITER $$ -CREATE OR REPLACE DEFINER=`root`@`localhost` FUNCTION `vn2008`.`cc_to_iban`(cc VARCHAR(20)) - RETURNS varchar(4) CHARSET utf8mb3 COLLATE utf8mb3_general_ci - DETERMINISTIC -BEGIN - DECLARE iban VARCHAR(4); - select - CONCAT('ES', - RIGHT( - concat(0, - 98- - mod( - concat( - mod( - concat( - mod( - concat( - mod( - substring(cc,1,8), - 97), - substring(cc,9,8) - ), - 97), - substring( - concat( - cc, - 142800 - ), - 17, - 8 - ) - ), - 97), - substring( - concat( - cc, - 142800 - ), - 25, - 2 - ) - ), - 97) - ) - ,2) - )into iban; -RETURN iban; -END$$ -DELIMITER ; diff --git a/db/versions/10873-greenPaniculata/00-firstScript.sql b/db/versions/10873-greenPaniculata/00-firstScript.sql new file mode 100644 index 000000000..59ab23944 --- /dev/null +++ b/db/versions/10873-greenPaniculata/00-firstScript.sql @@ -0,0 +1 @@ +REVOKE EXECUTE ON FUNCTION vn2008.cc_to_iban FROM hr, financial; From 2e009b6f25884b7d3337c03e663b2f5174d4314e Mon Sep 17 00:00:00 2001 From: guillermo Date: Thu, 8 Feb 2024 12:04:34 +0100 Subject: [PATCH 2/4] refactor: refs #6609 sectorType description to code --- db/dump/fixtures.before.sql | 4 ++-- db/routines/vn/procedures/collectionPlacement_get.sql | 4 ++-- db/routines/vn/procedures/productionControl.sql | 2 +- db/routines/vn/procedures/productionSectorList.sql | 2 +- db/routines/vn/views/itemShelvingStock.sql | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/db/dump/fixtures.before.sql b/db/dump/fixtures.before.sql index ae7612b46..be9fe05ff 100644 --- a/db/dump/fixtures.before.sql +++ b/db/dump/fixtures.before.sql @@ -184,8 +184,8 @@ INSERT INTO `vn`.`warehouse`(`id`, `name`, `code`, `isComparative`, `isInventory (13, 'Inventory', 'inv', 1, 1, 1, 0, 0, 0, 1, 0, 0, 0), (60, 'Algemesi', NULL, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0); -INSERT INTO `vn`.`sectorType` (id,description) - VALUES (1,'First type'); +INSERT INTO `vn`.`sectorType` (`id`, `code`) + VALUES (1,'normal'); INSERT INTO `vn`.`sector`(`id`, `description`, `warehouseFk`, `code`, `typeFk`) VALUES diff --git a/db/routines/vn/procedures/collectionPlacement_get.sql b/db/routines/vn/procedures/collectionPlacement_get.sql index db452ec2a..3641ba705 100644 --- a/db/routines/vn/procedures/collectionPlacement_get.sql +++ b/db/routines/vn/procedures/collectionPlacement_get.sql @@ -70,9 +70,9 @@ BEGIN ish.created, ish.visible, IFNULL( - IF(st.description = 'previousByPacking', ish.packing, g.`grouping`), + IF(st.code = 'previousByPacking', ish.packing, g.`grouping`), 1) `grouping`, - st.description = 'previousPrepared' isPreviousPrepared, + st.code = 'previousPrepared' isPreviousPrepared, iss.id itemShelvingSaleFk, ts.ticketFk, iss.id, diff --git a/db/routines/vn/procedures/productionControl.sql b/db/routines/vn/procedures/productionControl.sql index 3f3663865..b42645d1e 100644 --- a/db/routines/vn/procedures/productionControl.sql +++ b/db/routines/vn/procedures/productionControl.sql @@ -207,7 +207,7 @@ proc: BEGIN ENGINE = MEMORY SELECT ish.itemFk, p.sectorFk, - st.description = 'previousPrepared' isPreviousPrepared, + st.code = 'previousPrepared' isPreviousPrepared, sc.itemPackingTypeFk FROM itemShelving ish JOIN shelving sh ON sh.code = ish.shelvingFk diff --git a/db/routines/vn/procedures/productionSectorList.sql b/db/routines/vn/procedures/productionSectorList.sql index ea047b376..5447f10d0 100644 --- a/db/routines/vn/procedures/productionSectorList.sql +++ b/db/routines/vn/procedures/productionSectorList.sql @@ -85,7 +85,7 @@ BEGIN JOIN client c ON c.id = t.clientFk JOIN tmp.productionBuffer pb ON pb.ticketFk = t.id JOIN packagingConfig pc - WHERE IF(st.description = 'previousByPacking', + WHERE IF(st.code = 'previousByPacking', i.`size` > pc.previousPreparationMinimumSize AND (MOD(TRUNCATE(isa.quantity,0), isa.packing)= 0 ), TRUE) diff --git a/db/routines/vn/views/itemShelvingStock.sql b/db/routines/vn/views/itemShelvingStock.sql index 15afe72a2..e0825eae5 100644 --- a/db/routines/vn/views/itemShelvingStock.sql +++ b/db/routines/vn/views/itemShelvingStock.sql @@ -15,7 +15,7 @@ AS SELECT `ish`.`itemFk` AS `itemFk`, `sh`.`parkingFk` AS `parkingFk`, `ish`.`id` AS `itemShelvingFk`, `ish`.`created` AS `created`, - `st`.`description` = 'previousPrepared' AS `isPreviousPrepared` + `st`.`code` = 'previousPrepared' AS `isPreviousPrepared` FROM ( ( ( From 3f400f92e5e1cb3427a95da7b96baeb098115d6c Mon Sep 17 00:00:00 2001 From: guillermo Date: Thu, 8 Feb 2024 12:08:19 +0100 Subject: [PATCH 3/4] refactor: refs #6609 sectorType description to code --- db/versions/10874-yellowRose/00-firstScript.sql | 1 + 1 file changed, 1 insertion(+) create mode 100644 db/versions/10874-yellowRose/00-firstScript.sql diff --git a/db/versions/10874-yellowRose/00-firstScript.sql b/db/versions/10874-yellowRose/00-firstScript.sql new file mode 100644 index 000000000..835ff8515 --- /dev/null +++ b/db/versions/10874-yellowRose/00-firstScript.sql @@ -0,0 +1 @@ +ALTER TABLE vn.sectorType CHANGE description code varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL; From 6a94a48a9d357b6a358d74f5498d0d03f8b9a2fc Mon Sep 17 00:00:00 2001 From: guillermo Date: Thu, 8 Feb 2024 12:18:37 +0100 Subject: [PATCH 4/4] refactor: refs #6609 sectorType description to code --- .../10874-yellowRose/00-firstScript.sql | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/db/versions/10874-yellowRose/00-firstScript.sql b/db/versions/10874-yellowRose/00-firstScript.sql index 835ff8515..6d5b1ee86 100644 --- a/db/versions/10874-yellowRose/00-firstScript.sql +++ b/db/versions/10874-yellowRose/00-firstScript.sql @@ -1 +1,38 @@ ALTER TABLE vn.sectorType CHANGE description code varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL; + +-- Si no pongo lo de bajo da error en la view vn.itemShelvingAvailable +CREATE OR REPLACE DEFINER=`root`@`localhost` + SQL SECURITY DEFINER + VIEW `vn`.`itemShelvingStock` +AS SELECT `ish`.`itemFk` AS `itemFk`, + sum(`ish`.`visible`) AS `visible`, + min(`ish`.`packing`) AS `packing`, + min(`ish`.`grouping`) AS `grouping`, + `s`.`description` AS `sector`, + sum(`ish`.`visible`) AS `visibleOriginal`, + 0 AS `removed`, + `p`.`sectorFk` AS `sectorFk`, + `s`.`warehouseFk` AS `warehouseFk`, + `ish`.`shelvingFk` AS `shelvingFk`, + `p`.`code` AS `parkingCode`, + `sh`.`parkingFk` AS `parkingFk`, + `ish`.`id` AS `itemShelvingFk`, + `ish`.`created` AS `created`, + `st`.`code` = 'previousPrepared' AS `isPreviousPrepared` +FROM ( + ( + ( + ( + `vn`.`itemShelving` `ish` + LEFT JOIN `vn`.`shelving` `sh` ON(`sh`.`code` = `ish`.`shelvingFk`) + ) + LEFT JOIN `vn`.`parking` `p` ON(`p`.`id` = `sh`.`parkingFk`) + ) + LEFT JOIN `vn`.`sector` `s` ON(`s`.`id` = `p`.`sectorFk`) + ) + LEFT JOIN `vn`.`sectorType` `st` ON(`st`.`id` = `s`.`typeFk`) + ) +WHERE `ish`.`visible` <> 0 + AND `p`.`sectorFk` <> 0 +GROUP BY `ish`.`itemFk`, + `p`.`sectorFk`; \ No newline at end of file