public void MostrarPedidoDomicilio(PedidoADomicilio pedido) { CocinaPedidoDomicilio vistaPedidoDomicilio = cocinaPedidoDomicilios.FirstOrDefault(p => p.EditarLabelIDPedido == pedido.Id.ToString()); if (vistaPedidoDomicilio == null) { CocinaPedidoDomicilio cocinaPedidoDomicilio = new CocinaPedidoDomicilio(); cocinaPedidoDomicilio.Name = "domicilio_" + conteo.ToString(); cocinaPedidoDomicilio.Margin = new Thickness(100, ejeY, 0, 0); cocinaPedidoDomicilio.Visibility = Visibility.Visible; cocinaPedidoDomicilio.EventoPedidoDomicilioListo += EnviarPedidoDomicilioPreparado; cocinaPedidoDomicilio.EditarLabelIDPedido = pedido.Id.ToString(); cocinaPedidoDomicilio.EditarLabelTipo = "Domicilio"; cocinaPedidoDomicilio.EditarLabelInstrucciones = pedido.instruccionesEspeciales; List <platillo> platillos = new List <platillo>(); cocinaPedidoDomicilio.llenarDatagridDomicilio = pedido.Producto; ejeY += 300; conteo++; grid.Children.Add(cocinaPedidoDomicilio); cocinaPedidoDomicilios.Add(cocinaPedidoDomicilio); pedidosADomicilio.Add(pedido); } else { vistaPedidoDomicilio.EditarLabelInstrucciones = pedido.instruccionesEspeciales; vistaPedidoDomicilio.llenarDatagridDomicilio = null; vistaPedidoDomicilio.llenarDatagridDomicilio = pedido.Producto; pedidosADomicilio.Remove(pedidosADomicilio.FirstOrDefault(p => p.Id == pedido.Id)); pedidosADomicilio.Add(pedido); } }
public void RecibirPedidoDomicilio(PedidoADomicilio pedido) { if (pedido.Estado.estadoPedido == "Cancelado") { FuncionesComunes.MostrarMensajeExitoso("Pedido Cancelado: " + pedido.Id); RemoverPedidoDomicilioCancelado(pedido); } else { MostrarPedidoDomicilio(pedido); } }
private void RemoverPedidoDomicilioCancelado(PedidoADomicilio pedidoCancelado) { CocinaPedidoDomicilio vistaPedidoDomicilio = cocinaPedidoDomicilios.FirstOrDefault(p => p.EditarLabelIDPedido == pedidoCancelado.Id.ToString()); if (vistaPedidoDomicilio != null) { cocinaPedidoDomicilios.Remove(cocinaPedidoDomicilios.First(p => p.EditarLabelIDPedido == pedidoCancelado.Id.ToString())); grid.Children.Remove(vistaPedidoDomicilio); pedidosADomicilio.Remove(pedidosADomicilio.FirstOrDefault(p => p.Id == pedidoCancelado.Id)); ejeY -= 300; } }
public void RegistrarPedidoADomicilio() { PedidoADomicilio pedidoADomicilio = ObtenerDatosPedidoADomicilio(); pedidoADomicilio.fecha = DateTime.Now; pedidoADomicilio.Cuenta.Id = GenerarIdPedidoADomicilio(pedidoADomicilio.ClienteId); try { callCenterClient.RegistrarPedidoADomicilio(pedidoADomicilio); }catch (Exception e) { MessageBox.Show("La conexión se perdió: " + e.Message); } }
public bool EditarPedidoADomicilio() { PedidoADomicilio pedidoADomicilio = ObtenerDatosPedidoADomicilio(); pedidoADomicilio.Id = idPedidoEdicion; pedidoADomicilio.Cuenta.Id = idCuenta; try { return(callCenterClient.ModificarDatosPedidoADomicilio(pedidoADomicilio)); }catch (CommunicationException e) { Console.WriteLine(e.Message); return(false); } }
static public PedidoADomicilio PedidoADomicilioDeServidor_A_PedidoADomicilio(PedidoADomicilioDeServidor pedidoDomicilioDeServidor) { PedidoADomicilio pedidoADomicilio = new PedidoADomicilio { Id = pedidoDomicilioDeServidor.id, fecha = pedidoDomicilioDeServidor.fecha, instruccionesEspeciales = pedidoDomicilioDeServidor.instruccionesDePedido, direccionDestino = pedidoDomicilioDeServidor.direccionDestino, Empleado = new Empleado { IdEmpleado = pedidoDomicilioDeServidor.idEmpleado, idEmpleadoGenerado = pedidoDomicilioDeServidor.idGeneradoDeEmpleado }, Estado = new Estado { estadoPedido = pedidoDomicilioDeServidor.estado }, Cuenta = new Cuenta { Id = pedidoDomicilioDeServidor.cuenta.Id, precioTotal = pedidoDomicilioDeServidor.cuenta.toal, subTotal = pedidoDomicilioDeServidor.cuenta.subtotal, iva = pedidoDomicilioDeServidor.cuenta.iva, descuento = pedidoDomicilioDeServidor.cuenta.descuento, abierta = pedidoDomicilioDeServidor.cuenta.abierta }, Cliente = ClienteServidor_A_Cliente(pedidoDomicilioDeServidor.cliente), ClienteId = pedidoDomicilioDeServidor.cliente.id, }; List<Producto> productos = new List<Producto>(); foreach (var productoLocal in pedidoDomicilioDeServidor.productosLocales) { var producto = ProductoDePedido_A_Producto(productoLocal); productos.Add(producto); } pedidoADomicilio.Producto = productos.ToArray(); List<ProvisionDirecta> provisionesDirectas = new List<ProvisionDirecta>(); foreach (var provisionVentaDirecta in pedidoDomicilioDeServidor.productosExternos) { var provisionDirecta = ProvisionVentaDirecta_A_ProvisionDirecta(provisionVentaDirecta); provisionesDirectas.Add(provisionDirecta); } pedidoADomicilio.ProvisionDirecta = provisionesDirectas.ToArray(); return pedidoADomicilio; }
// CALLBACKS NOTIFICAR PEDIDOS ****************************************************** public void ObtenerTodosPedidos(PedidoADomicilioDeServidor[] pedidosADomicilio, PedidoLocalDeServidor[] pedidosLocales) { Dispatcher.Invoke(() => { foreach (var pedidoDomicilio in pedidosADomicilio.Where(p => p.estado == "En Espera")) { PedidoADomicilio pedidoDomicilioConvertido = ConvertidorDeObjetos.PedidoADomicilioDeServidor_A_PedidoADomicilio(pedidoDomicilio); MostrarPedidoDomicilio(pedidoDomicilioConvertido); } foreach (var pedidoLocal in pedidosLocales.Where(p => p.estado == "En Espera")) { PedidoLocal pedidoLocalConvertido = ConvertidorDeObjetos.PedidoLocalDeServidor_A_PedidoLocal(pedidoLocal); MostrarPedidoLocal(pedidoLocalConvertido); } }); }
private void UC_QuitarPedido(object sender, EventArgs e) { if (meserosUC.dataGridPedidosEnEspera.IsVisible) { var pedidoSeleccionado = meserosUC.AgregarOSeleccionar_PedidoEnEspera; if (pedidoSeleccionado.Tipo == "Domicilio") { PedidoADomicilio pedidoDomicilioEnLista = ListaPedidosDomicilio.Find(p => p.Id == Convert.ToInt32(pedidoSeleccionado.IdPedido)); pedidoDomicilioEnLista.Estado = new Estado { estadoPedido = "Cancelado" }; server.ModificarEstadoPedidoADomicilio(pedidoDomicilioEnLista); } else { PedidoLocal pedidoLocalEnLista = ListaPedidosLocales.Find(p => p.Id == Convert.ToInt32(pedidoSeleccionado.IdPedido)); pedidoLocalEnLista.Estado = new Estado { estadoPedido = "Cancelado" }; server.ModificarEstadoPedidoLocal(pedidoLocalEnLista); } } else if (meserosUC.dataGridPedidosPreparados.IsVisible) { var pedidoLocalPreparadoSeleccionado = meserosUC.AgregarOSeleccionar_PedidoPreparado; var pedidoLocalEnLista = ListaPedidosLocales.Find(p => p.Id == Convert.ToInt32(pedidoLocalPreparadoSeleccionado.IdPedido)); pedidoLocalEnLista.Estado = new Estado { estadoPedido = "Cancelado" }; server.ModificarEstadoPedidoLocal(pedidoLocalEnLista); } else if (meserosUC.dataGridPedidosEnviados.IsVisible) { var pedidoDomicilioEnviadoSeleccionado = meserosUC.AgregarOSeleccionar_PedidoEnviado; var pedidoDomicilioEnLista = ListaPedidosDomicilio.Find(p => p.Id == Convert.ToInt32(pedidoDomicilioEnviadoSeleccionado.IdPedido)); pedidoDomicilioEnLista.Estado = new Estado { estadoPedido = "Cancelado" }; server.ModificarEstadoPedidoADomicilio(pedidoDomicilioEnLista); } }
private void UC_GenerarTicketPDF(object sender, EventArgs e) { PedidoEnDataGrid pedidoEntregado = meserosUC.AgregarOSeleccionar_PedidoEntregado; string rutaTicketsPDF = "TicketsPDF"; string rootDirectory = System.IO.Path.GetFullPath(AppDomain.CurrentDomain.BaseDirectory + "../../" + rutaTicketsPDF); if (!Directory.Exists(@rootDirectory)) { DirectoryInfo di = Directory.CreateDirectory(@rootDirectory); } if (pedidoEntregado.Tipo == "Domicilio") { PedidoADomicilio pedidoDomicilioEncontrado = ListaPedidosDomicilio.Find(p => p.Id == Convert.ToInt32(pedidoEntregado.IdPedido)); meserosUC.GenerarTicketPDF(@rootDirectory, pedidoDomicilioEncontrado); } else { PedidoLocal pedidoLocalEncontrado = ListaPedidosLocales.Find(p => p.Id == Convert.ToInt32(pedidoEntregado.IdPedido)); meserosUC.GenerarTicketPDF(@rootDirectory, pedidoLocalEncontrado); } }
public void RecibirPedidoDomicilio(PedidoADomicilio pedido) { FuncionesComunes.MostrarMensajeExitoso("PEDIDO A DOMICILIO: " + pedido.Estado.estadoPedido + "\nEmpleado: " + pedido.Empleado.idEmpleadoGenerado); if (pedido.Estado.estadoPedido.Equals("En Espera")) { PedidoADomicilio pedidoExiste = ListaPedidosDomicilio.Find(p => p.Id == Convert.ToInt32(pedido.Id)); if (pedidoExiste != null) { ListaPedidosDomicilio.Remove(pedidoExiste); ListaPedidosDomicilio.Add(pedido); PedidoEnDataGrid pedidoAActualizar = pedidosEnEspera.First(p => p.IdPedido == pedido.Id.ToString()); pedidoAActualizar.Empleado = pedido.Empleado.idEmpleadoGenerado; pedidoAActualizar.MesaOCliente = pedido.Cliente.nombre + " " + pedido.Cliente.apellidoPaterno + " " + pedido.Cliente.apellidoMaterno + ": " + pedido.direccionDestino; pedidoAActualizar.InstruccionesEspeciales = pedido.instruccionesEspeciales; meserosUC.dataGridPedidosEnEspera.Items.Refresh(); } else { PedidoEnDataGrid pedidoEnDataGrid = new PedidoEnDataGrid(pedido.Empleado.idEmpleadoGenerado, pedido.Id.ToString(), "Domicilio", pedido.Cliente.nombre + " " + pedido.Cliente.apellidoPaterno + " " + pedido.Cliente.apellidoMaterno + ": " + pedido.direccionDestino, pedido.instruccionesEspeciales); meserosUC.AgregarOSeleccionar_PedidoEnEspera = pedidoEnDataGrid; pedidosEnEspera.Add(pedidoEnDataGrid); ListaPedidosDomicilio.Add(pedido); } } else if (pedido.Estado.estadoPedido.Equals("Preparado")) { PedidoEnDataGrid pedidoEnDataGrid = new PedidoEnDataGrid(pedido.Empleado.idEmpleadoGenerado, pedido.Id.ToString(), "Domicilio", pedido.Cliente.nombre + " " + pedido.Cliente.apellidoPaterno + " " + pedido.Cliente.apellidoMaterno + ": " + pedido.direccionDestino, pedido.instruccionesEspeciales); meserosUC.AgregarOSeleccionar_PedidoEnEspera = pedidoEnDataGrid; pedidosPreparados.Add(pedidoEnDataGrid); pedidosEnEspera.Remove(pedidosEnEspera.FirstOrDefault(p => p.IdPedido == pedidoEnDataGrid.IdPedido)); } else if (pedido.Estado.estadoPedido.Equals("Enviado")) { PedidoEnDataGrid pedidoEnDataGrid = new PedidoEnDataGrid(pedido.Empleado.idEmpleadoGenerado, pedido.Id.ToString(), "Domicilio", pedido.Cliente.nombre + " " + pedido.Cliente.apellidoPaterno + " " + pedido.Cliente.apellidoMaterno + ": " + pedido.direccionDestino, pedido.instruccionesEspeciales); meserosUC.AgregarOSeleccionar_PedidoEnviado = pedidoEnDataGrid; pedidosEnviados.Add(pedidoEnDataGrid); pedidosPreparados.Remove(pedidosPreparados.FirstOrDefault(p => p.IdPedido == pedidoEnDataGrid.IdPedido)); } else if (pedido.Estado.estadoPedido.Equals("Entregado")) { PedidoEnDataGrid pedidoEnDataGrid = new PedidoEnDataGrid(pedido.Empleado.idEmpleadoGenerado, pedido.Id.ToString(), "Domicilio", pedido.Cliente.nombre + " " + pedido.Cliente.apellidoPaterno + " " + pedido.Cliente.apellidoMaterno + ": " + pedido.direccionDestino, pedido.instruccionesEspeciales); meserosUC.AgregarOSeleccionar_PedidoEntregado = pedidoEnDataGrid; pedidosEntregados.Add(pedidoEnDataGrid); pedidosEnviados.Remove(pedidosEnviados.FirstOrDefault(p => p.IdPedido == pedidoEnDataGrid.IdPedido)); } else if (pedido.Estado.estadoPedido.Equals("Cancelado")) { PedidoEnDataGrid pedidoEnDataGrid = new PedidoEnDataGrid(pedido.Empleado.idEmpleadoGenerado, pedido.Id.ToString(), "Domicilio", pedido.Cliente.nombre + " " + pedido.Cliente.apellidoPaterno + " " + pedido.Cliente.apellidoMaterno + ": " + pedido.direccionDestino, pedido.instruccionesEspeciales); meserosUC.AgregarOSeleccionar_PedidoCancelado = pedidoEnDataGrid; pedidosCancelados.Add(pedidoEnDataGrid); if (pedidosEnEspera.FirstOrDefault(p => p.IdPedido == pedidoEnDataGrid.IdPedido) != null) { pedidosEnEspera.Remove(pedidosEnEspera.FirstOrDefault(p => p.IdPedido == pedidoEnDataGrid.IdPedido)); } else if (pedidosEnviados.FirstOrDefault(p => p.IdPedido == pedidoEnDataGrid.IdPedido) != null) { pedidosEnviados.Remove(pedidosEnviados.FirstOrDefault(p => p.IdPedido == pedidoEnDataGrid.IdPedido)); } } }
private PedidoADomicilio ObtenerDatosPedidoADomicilio() { Cliente1 clienteEnLista = new Cliente1(); var nombreCompleto = UC_NuevoDomicilio.EditarComboBoxClienteNombre.ToString(); foreach (var cliente in UC_NuevoDomicilio.clientes) { if (nombreCompleto.Contains(cliente.nombre + " " + cliente.apellidoPaterno + " " + cliente.apellidoMaterno)) { clienteEnLista = cliente; break; } } PedidoADomicilio pedidoADomicilio = new PedidoADomicilio { Cliente = new Cliente { Id = clienteEnLista.id, nombre = clienteEnLista.nombre, apellidoPaterno = clienteEnLista.apellidoPaterno, apellidoMaterno = clienteEnLista.apellidoMaterno }, ClienteId = clienteEnLista.id, //fecha = DateTime.Now, //ESTO SE QUITA instruccionesEspeciales = textBoxInstruccionesEspeciales.Text, Empleado = new Empleado { IdEmpleado = VentanaPedidos.idEmpleadoCallCenter, idEmpleadoGenerado = VentanaPedidos.idEmpleadoGeneradoCallCenter }, Estado = new Estado { estadoPedido = "En Espera" }, Cuenta = new Cuenta { //Id = GenerarIdPedidoADomicilio(clienteEnLista.id), //ESTO SE QUITA subTotal = (double)labelSubtotal.Content, iva = 0.16, descuento = FuncionesComunes.ParsearADouble(textBoxDescuento.Text), precioTotal = (double)labelTotal.Content }, direccionDestino = UC_NuevoDomicilio.EditarComboBoxDireccion }; List <Telefono> telefonos = new List <Telefono>(); foreach (var telefonoCliente in clienteEnLista.telefonos) { var telefono = ConvertidorDeObjetos.TelefonoCliente_A_Telefono(telefonoCliente); telefonos.Add(telefono); } pedidoADomicilio.Cliente.Telefono = telefonos.ToArray(); pedidoADomicilio.Producto = new Producto[productosSeleccionados.Count]; List <Producto> listaProductosSeleccionados = productosSeleccionados.ToList(); listaProductosSeleccionados.CopyTo(pedidoADomicilio.Producto); pedidoADomicilio.ProvisionDirecta = new ProvisionDirecta[provisionesSeleccionadas.Count]; List <ProvisionDirecta> listaProvisionesSeleccionadas = provisionesSeleccionadas.ToList(); listaProvisionesSeleccionadas.CopyTo(pedidoADomicilio.ProvisionDirecta); return(pedidoADomicilio); }