private void AutoSimplex() { var clientes = ORM.Instancia.GetClientesAutoSimplex(); var simplex = new SIMPLEX(); var listaDisp = new List <Inteligente>(); SimplexResult respuesta; int total; double consumoMes; double consumoRespuesta; var periodo = new PeriodoData(); periodo.PeriodoActual(); foreach (Cliente c in clientes) { listaDisp = c.dispositivos.OfType <Inteligente>().ToList(); total = listaDisp.Count; respuesta = simplex.Consulta(new List <Dispositivo>(listaDisp)); foreach (var dispo in listaDisp) { consumoMes = dispo.ConsumoEnElPeriodo(periodo); consumoRespuesta = Double.Parse(respuesta.Valores.Find(x => x.Nombre == dispo.Nombre && x.Numero == dispo.Numero).Consumo); if (consumoMes >= consumoRespuesta) { dispo.Apagar(); ORM.Instancia.Update(dispo); } } } }
public PeriodoData ConsumoDelPeriodo(DateTime desde, DateTime hasta) { var periodo = new PeriodoData(); periodo.Periodo((byte)desde.Month, desde.Year); return(ConsumoDelPeriodo(periodo)); }
public PeriodoData ConsumoDelPeriodo(int numero, int anio) { var periodo = new PeriodoData(); periodo.Periodo((Byte)numero, anio); return(ConsumoDelPeriodo(periodo)); }
public PeriodoData PeriodoActual() { var periodo = new PeriodoData(); periodo.PeriodoActual(); return(periodo); }
private PeriodoData ConsumoDelPeriodo(PeriodoData periodo) { double total = 0; foreach (var disp in dispositivos.OfType <Inteligente>()) { total += disp.ConsumoEnElPeriodo(periodo); } var eliminadosEnElPeriodo = ORM.Instancia.GetDispositivosEliminadosEnFrom(periodo, idUsuario); foreach (var disp in eliminadosEnElPeriodo.OfType <Inteligente>()) { total += disp.ConsumoEnElPeriodo(periodo); } periodo.Consumo = total; return(periodo); }
public double ConsumoEnElPeriodo(PeriodoData periodoData) { return(ConsumoDesdeHasta(periodoData.FechaInicio, periodoData.FechaFin)); }