Correção para Demanda Ponta ser lançada conforme corretamente para medição em BT.

This commit is contained in:
Adriano Serighelli 2023-06-05 19:15:37 -03:00
parent 7bacc96030
commit 1283c7236c

View File

@ -184,6 +184,7 @@
int j = 0;
float? dem_Reg_P = null;
float? dem_Reg_FP = null;
float? dem_Fat_P = null;
List<string> insertOthers = new List<string>();
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();