From a24d38128b255ff8d1a178155dc3c7cc90d15e7a Mon Sep 17 00:00:00 2001 From: jgallego Date: Thu, 21 Mar 2024 10:48:43 +0100 Subject: [PATCH] feat: #7013 muestra solo clientes asegurados --- .../vn/procedures/solunionRiskRequest.sql | 63 +++++++++---------- 1 file changed, 31 insertions(+), 32 deletions(-) diff --git a/db/routines/vn/procedures/solunionRiskRequest.sql b/db/routines/vn/procedures/solunionRiskRequest.sql index 540f52e18..6b51c4202 100644 --- a/db/routines/vn/procedures/solunionRiskRequest.sql +++ b/db/routines/vn/procedures/solunionRiskRequest.sql @@ -2,40 +2,39 @@ DELIMITER $$ CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`solunionRiskRequest`() BEGIN - DROP TEMPORARY TABLE IF EXISTS tmp.client_list; - CREATE TEMPORARY TABLE tmp.client_list - (PRIMARY KEY (Id_Cliente)) - ENGINE = MEMORY - SELECT * FROM ( - SELECT cc.client, ci.grade - FROM creditClassification cc - JOIN creditInsurance ci ON cc.id = ci.creditClassification - WHERE dateEnd IS NULL - ORDER BY ci.creationDate DESC - LIMIT 10000000000000000000) t1 - GROUP BY client; + CREATE OR REPLACE TEMPORARY TABLE tmp.client_list + (PRIMARY KEY (Id_Cliente)) + ENGINE = MEMORY + SELECT * FROM ( + SELECT cc.client Id_Cliente, ci.grade + FROM creditClassification cc + JOIN creditInsurance ci ON cc.id = ci.creditClassification + WHERE dateEnd IS NULL + ORDER BY ci.creationDate DESC + LIMIT 10000000000000000000) t1 + GROUP BY Id_Cliente; - CALL vn2008.risk_vs_client_list(util.VN_CURDATE()); + CALL vn2008.risk_vs_client_list(util.VN_CURDATE()); - SELECT - c.id, - c.name, - c.credit clientCredit, - c.creditInsurance solunion, - cast(r.risk as DECIMAL(10,0)) risk, - cast(c.creditInsurance - r.risk as decimal(10,0)) riskAlive, - cac.invoiced billedAnnually, - c.dueDay, - ci.grade, - c2.country - FROM tmp.client_list ci - LEFT JOIN tmp.risk r ON r.Id_Cliente = ci.client - JOIN client c ON c.id = ci.client - JOIN bs.clientAnnualConsumption cac ON c.id = cac.Id_Cliente - JOIN vn.country c2 ON c2.id = c.countryFk - GROUP BY c.id; + SELECT + c.id, + c.name, + c.credit clientCredit, + c.creditInsurance solunion, + cast(r.risk as DECIMAL(10,0)) risk, + cast(c.creditInsurance - r.risk as decimal(10,0)) riskAlive, + cac.invoiced billedAnnually, + c.dueDay, + ci.grade, + c2.country + FROM tmp.client_list ci + LEFT JOIN tmp.risk r ON r.Id_Cliente = ci.Id_Cliente + JOIN client c ON c.id = ci.Id_Cliente + JOIN bs.clientAnnualConsumption cac ON c.id = cac.clientFk + JOIN vn.country c2 ON c2.id = c.countryFk + GROUP BY c.id; - DROP TEMPORARY TABLE IF EXISTS tmp.risk; - DROP TEMPORARY TABLE IF EXISTS tmp.client_list; + DROP TEMPORARY TABLE IF EXISTS tmp.risk; + DROP TEMPORARY TABLE IF EXISTS tmp.client_list; END$$ DELIMITER ;