From 1283c7236c6cb97a9f54197e8a9e71951e080aa5 Mon Sep 17 00:00:00 2001 From: Adriano Serighelli Date: Mon, 5 Jun 2023 19:15:37 -0300 Subject: [PATCH] =?UTF-8?q?Corre=C3=A7=C3=A3o=20para=20Demanda=20Ponta=20s?= =?UTF-8?q?er=20lan=C3=A7ada=20conforme=20corretamente=20para=20medi=C3=A7?= =?UTF-8?q?=C3=A3o=20em=20BT.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Download Faturas/Fatura.cs | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/Download Faturas/Fatura.cs b/Download Faturas/Fatura.cs index 7bc661a..ca5527a 100644 --- a/Download Faturas/Fatura.cs +++ b/Download Faturas/Fatura.cs @@ -184,6 +184,7 @@ int j = 0; float? dem_Reg_P = null; float? dem_Reg_FP = null; + float? dem_Fat_P = null; List insertOthers = new List(); foreach (Item item in parsedResult.items) @@ -203,13 +204,13 @@ // Demanda Ponta case ("demand", "peak"): dadosTusd.Dem_Cont_P = item.contract == 0 ? dadosTusd.Dem_Cont_P : item.contract; - dem_Reg_P = item.billed; + dem_Fat_P = item.billed; break; // Demanda Fora de Ponta case ("demand", "off-peak"): dadosTusd.Dem_Cont_FP = item.contract == 0 ? dadosTusd.Dem_Cont_FP : item.contract; - dem_Reg_FP = item.billed; + dadosTusd.Dem_Reg_FP = item.billed; break; // Ilum. publica @@ -253,19 +254,29 @@ // Busca a demanda registrada nos itens medidos foreach (Measureditem measuredItem in parsedResult.measuredItems) { - switch (measuredItem.type, measuredItem.period, dem_Reg_P, dem_Reg_FP) + switch (measuredItem.type, measuredItem.period) { - case ("demand", "peak", _, null): + case ("demand", "peak"): dem_Reg_P = measuredItem.measured; break; - case ("demand", "off-peak", null, _): + case ("demand", "off-peak"): dem_Reg_FP = measuredItem.measured; break; } } - dadosTusd.Dem_Reg_P = dem_Reg_P ?? 0; - dadosTusd.Dem_Reg_FP = dem_Reg_FP ?? 0; + if (dem_Fat_P == null && dem_Reg_P != null && ((decimal)dadosTusd.Dem_Reg_FP == Math.Round((decimal)(dem_Reg_FP * 1.025)!, 2))) + { + dadosTusd.Dem_Reg_P = (float)(dem_Reg_P * 1.025); + } + else if (dem_Fat_P != null) + { + dadosTusd.Dem_Reg_P = dem_Fat_P ?? 0; + } + else + { + dadosTusd.Dem_Reg_P = dem_Reg_P ?? 0; + } var dados = dadosTusd.GetType().GetProperties(); StringBuilder fields = new StringBuilder();