public void BuscarDetallesEnPreparacion() { Estado enPreparacion = null; using (var contextDB = new EntitiesDataBase()) { List <Estado> estadosDetallePedido = new List <Estado>(); var Estados = contextDB.Estado.ToList(); foreach (var estado in Estados) { if (estado.EsAmbitoDetallePedido()) { estadosDetallePedido.Add(estado); } } if (estadosDetallePedido.Count != 0) { foreach (var estado in estadosDetallePedido) { if (estado.EsEnPreparacion()) { enPreparacion = estado; } } } } using (var contextDB = new EntitiesDataBase()) { if (enPreparacion != null) { var detallePedidos = contextDB.DetallePedidos.ToList(); foreach (var detallePedido in detallePedidos) { if (detallePedido.EstaEnPreparacion(enPreparacion)) { detallePedidosEnPreparacion.Add(detallePedido); } } } //ORDENAR LISTA SEGUN TIEMPO DE ESPERA. detallePedidosEnPreparacion = ordenarSegunMayorTiempoDeEspera(detallePedidosEnPreparacion); //LOOP DETALLES PEDIDO EN PREPARACION foreach (var detallePedidoEnPrepa in detallePedidosEnPreparacion) { var hora = detallePedidoEnPrepa.HistorialEstado.fechaHoraInicio.Value; buscarInfoDetallePedido(detallePedidoEnPrepa, hora); } if (detallePedidosEnPreparacion.Count == 0) { pantallaFinalizarPreparacion.informarPantallaDatosNoEncontrados(); } } }
//-Actualizaciones de Estado de Detalle Pedido------------------------------------------------------------------------------------------ public void ActualizarEstadoDetallePedido() { Estado listoParaServir = null; using (var contextDB = new EntitiesDataBase()) { List <Estado> estadosDetallePedido = new List <Estado>(); var Estados = contextDB.Estado.ToList(); foreach (var estado in Estados) { if (estado.EsAmbitoDetallePedido()) { estadosDetallePedido.Add(estado); } } if (estadosDetallePedido.Count != 0) { foreach (var estado in estadosDetallePedido) { if (estado.EsListoParaServir()) { listoParaServir = estado; } } } } foreach (DetallePedido detallePedido in detallePedidosEnPrepSeleccionados) { DateTime horaFinalizacion = DateTime.Now; detallePedido.Finalizar(horaFinalizacion, listoParaServir); } }
public void ActualizarEstadoDetallePedidoNotificar() { Estado ListoParaServir = null; Estado Notificado = null; List <DetallePedido> detallePedidosListosParaServir = new List <DetallePedido>(); using (var contextDB = new EntitiesDataBase()) { List <Estado> estadosDetallePedido = new List <Estado>(); var Estados = contextDB.Estado.ToList(); foreach (var estado in Estados) { if (estado.EsAmbitoDetallePedido()) { estadosDetallePedido.Add(estado); } } if (estadosDetallePedido.Count != 0) { foreach (var estado in estadosDetallePedido) { if (estado.EsListoParaServir()) { ListoParaServir = estado; } if (estado.EsNotificado()) { Notificado = estado; } } } if (Notificado != null) { var detallePedidos = contextDB.DetallePedidos.ToList(); foreach (var detallePedido in detallePedidos) { if (detallePedido.EstaListoParaServir(ListoParaServir)) { foreach (DetallePedido dt in detallePedidosEnPrepSeleccionados) { if (dt.nroDetallePedido == detallePedido.nroDetallePedido) { detallePedidosListosParaServir.Add(detallePedido); } } } } } } foreach (DetallePedido detallePedido in detallePedidosListosParaServir) { DateTime horaFinalizacion = DateTime.Now; detallePedido.Finalizar(horaFinalizacion, Notificado); } FinCasoDeUso(); }