diff --git a/Download Faturas/Fatura.cs b/Download Faturas/Fatura.cs index 3cbc10e..65d6327 100644 --- a/Download Faturas/Fatura.cs +++ b/Download Faturas/Fatura.cs @@ -164,6 +164,9 @@ // Loop entre os dados faturados na fatura int j = 0; + float? dem_Reg_P = null; + float? dem_Reg_FP = null; + List insertOthers = new List(); foreach (Item item in parsedResult.items) { @@ -182,13 +185,13 @@ // Demanda Ponta case ("demand", "peak"): dadosTusd.Dem_Cont_P = item.contract == 0 ? dadosTusd.Dem_Cont_P : item.contract; - + dem_Reg_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; break; // Ilum. publica @@ -232,17 +235,20 @@ // Busca a demanda registrada nos itens medidos foreach (Measureditem measuredItem in parsedResult.measuredItems) { - switch (measuredItem.type, measuredItem.period) + switch (measuredItem.type, measuredItem.period, dem_Reg_P, dem_Reg_FP) { - case ("demand", "peak"): - dadosTusd.Dem_Reg_P = measuredItem.measured; + case ("demand", "peak", _, null): + dem_Reg_P = measuredItem.measured; break; - case ("demand", "off-peak"): - dadosTusd.Dem_Reg_FP = measuredItem.measured; + case ("demand", "off-peak", null, _): + dem_Reg_FP = measuredItem.measured; break; } } + dadosTusd.Dem_Reg_P = dem_Reg_P ?? 0; + dadosTusd.Dem_Reg_FP = dem_Reg_FP ?? 0; + var dados = dadosTusd.GetType().GetProperties(); StringBuilder fields = new StringBuilder(); StringBuilder values = new StringBuilder();