public void CambiarEstadoPedidoCancelar(Clases.Pedido pedido) { using (ModeloDeDatosContainer context = new ModeloDeDatosContainer()) { if (pedido.Estado != EstadoPedido.EnEspera || pedido.Estado != EstadoPedido.Completado || pedido.Estado != EstadoPedido.Realizado || pedido.Estado != EstadoPedido.Entregado) { AccesoADatos.Pedido pedidoDb = context.Pedidos.Find(pedido.Id); if (pedidoDb != null) { pedidoDb.Estado = 6; context.SaveChanges(); } else { throw new ArgumentException("Id no encontrada PedidoDAO.DarDeBaja"); } } else { throw new ArgumentException("El pedido ya se encuentra en un estado imposible de cancelar"); } } pedido.AumentarIngredientes(); }
private List <Clases.Pedido> ObtenerListaPedidos(IReadOnlyCollection <string[]> pedidos) { bool esTeclaPar = false; var listaPedidos = new List <Clases.Pedido>(); var filaPlanillaCalculo = 2; foreach (var filaPedido in pedidos) { // Mostraremos solo las sig. columnas de la planilla: Fecha, Cliente, Detalle, Fecha entrega, Estado, Usuario var pedido = new Clases.Pedido( filaPedido[0], filaPedido[1], filaPedido[2], filaPedido[3], filaPedido[4], filaPedido[5], filaPedido[6], filaPedido[7], filaPedido[8], filaPedido[9], filaPlanillaCalculo ); listaPedidos.Add(pedido); esTeclaPar = !esTeclaPar; filaPlanillaCalculo += 1; } return(listaPedidos); }
public bool ValidarCuentaParaGuardado(Clases.Pedido pedido) { bool resultado = false; if (pedido.CantidadAlimentos.Count > 0) { resultado = true; } return(resultado); }
public Pedido(Clases.Pedido pedido, SpreadsheetsService servicio, CellFeed celdas = null) { InitializeComponent(); InicializarValoresGenerales(); _pedido = pedido; _servicio = servicio; _celdas = celdas; ConstruirVistaDePedido(); }
public AccesoADatos.Pedido ConvertirPedidoLogicaADatos(Clases.Pedido pedidoLogica) { AccesoADatos.Pedido pedidoDatos = new AccesoADatos.Pedido { Id = pedidoLogica.Id, FechaDeCreacion = pedidoLogica.FechaDeCreacion, PrecioTotal = pedidoLogica.PrecioTotal, Iva = pedidoLogica.Iva, Estado = (short)pedidoLogica.Estado, }; return(pedidoDatos); }
public Clases.Pedido ConvertirPedidoDeDatosALogica(AccesoADatos.Pedido pedidoDatos) { Clases.Pedido pedidoLogica = new Clases.Pedido() { Id = pedidoDatos.Id, FechaDeCreacion = pedidoDatos.FechaDeCreacion, PrecioTotal = pedidoDatos.PrecioTotal, Iva = pedidoDatos.Iva, Estado = (EstadoPedido)pedidoDatos.Estado }; return(pedidoLogica); }
private void btnEliminar_Click(object sender, EventArgs e) { if (Program.Cliente != true) { Clases.Pedido ped = new Clases.Pedido(); ped.CambiarEstado(3, idpedido); Cargardatos(); MessageBox.Show("Eliminado"); } else { MessageBox.Show("No puedes eliminar"); } }
public Clases.Pedido RecuperarPedidoPorId(int idPedido) { AccesoADatos.Pedido pedido; using (ModeloDeDatosContainer context = new ModeloDeDatosContainer()) { pedido = context.Pedidos.Find(idPedido); } Clases.Pedido pedidoLogico = new Clases.Pedido(); if (pedido != null) { pedidoLogico = ConvertirPedidoDeDatosALogica(pedido); } return(pedidoLogico); }
public Clases.Pedido ConvertirPedidoDeDatosALogicaConCuenta(AccesoADatos.Pedido pedidoDatos) { CuentaDAO cuentaDAO = new CuentaDAO(); Clases.Pedido pedidoLogica = new Clases.Pedido() { Id = pedidoDatos.Id, FechaDeCreacion = pedidoDatos.FechaDeCreacion, PrecioTotal = pedidoDatos.PrecioTotal, Iva = pedidoDatos.Iva, Estado = (EstadoPedido)pedidoDatos.Estado, Cuenta = cuentaDAO.ConvertirCuentaSinMesaDatosALogica(pedidoDatos.Cuenta) }; return(pedidoLogica); }
private double CalcularPrecioTotal(Clases.Pedido pedido) { double precioTotal = 0; foreach (CantidadAlimento cantidadAlimento in pedido.CantidadAlimentos) { if (cantidadAlimento is CantidadProducto cantidadProducto) { precioTotal += cantidadProducto.Alimento.Precio * cantidadProducto.Cantidad; } else if (cantidadAlimento is CantidadPlatillo cantidadPlatillo) { precioTotal += cantidadPlatillo.Alimento.Precio * cantidadPlatillo.Cantidad; } } return(precioTotal); }
public void Guardar(Clases.Pedido pedido) { if (ValidarCuentaParaGuardado(pedido) && ValidarCantidadDeCantidadAlimentos(pedido.CantidadAlimentos)) { pedido.FechaDeCreacion = DateTime.Now; IvaDAO ivaDAO = new IvaDAO(); pedido.Iva = ivaDAO.CargarIvaActual().Valor; pedido.PrecioTotal = CalcularPrecioTotal(pedido); } else { throw new ArgumentException("Pedido no tiene contenido"); } AccesoADatos.Pedido pedidoAGuardar = ConvertirPedidoLogicaADatos(pedido); pedido.DescontarIngredientes(); using (ModeloDeDatosContainer context = new ModeloDeDatosContainer()) { foreach (CantidadAlimento cantidadAlimento in pedido.CantidadAlimentos) { if (cantidadAlimento is CantidadProducto cantidadProducto) { ProductoPedido productoPedido = new ProductoPedido(); productoPedido.Cantidad = cantidadProducto.Cantidad; productoPedido.Productos = context.Productos.Find(cantidadProducto.Alimento.Id); pedidoAGuardar.ProductoPedido.Add(productoPedido); } else if (cantidadAlimento is CantidadPlatillo cantidadPlatillo) { PlatilloPedido platilloPedido = new PlatilloPedido(); platilloPedido.Cantidad = cantidadPlatillo.Cantidad; platilloPedido.Platillo = context.Platillos.Find(cantidadPlatillo.Alimento.Id); pedidoAGuardar.PlatilloPedidos.Add(platilloPedido); } } pedidoAGuardar.Cuenta = context.Cuentas.Find(pedido.Cuenta.Id); context.Pedidos.Add(pedidoAGuardar); context.SaveChanges(); } }
private async void GuardarPedidoHojaDeCalculoGoogle(Picker comboCliente) { _mensaje = "Ha ocurrido un error mientras se guardaba el pedido."; var servicioGoogle = new ServiciosGoogle(); var grabo = false; var idCliente = _clientes[comboCliente.SelectedIndex][0]; var cliente = _clientes[comboCliente.SelectedIndex][1]; var idPedido = _listaPedidos.OrderByDescending(p => Convert.ToInt32(p.Id)).First()?.Id ?? "0"; var pedido = new Clases.Pedido() { Id = (Convert.ToInt32(idPedido) + 1).ToString(), Fecha = DateTime.Now.ToString("dd/MM/yyyy"), IdCliente = idCliente, Cliente = cliente, Detalle = _listaProducto.ToList(), FechaEntrega = DateTime.Now.ToString("dd/MM/yyyy"), Estado = "Pendiente", Usuario = CuentaUsuario.ObtenerNombreUsuarioGoogle() ?? "-", Comentario = "-", Lugar = "-" }; try { //Ingresa el pedido en la tabla servicioGoogle.InsertarPedido(_servicio, pedido); grabo = true; } catch (Exception) { // Si se quedó la pantalla abierta un largo tiempo y se venció el token, se cierra y refresca el token var paginaAuntenticacion = new PaginaAuntenticacion(true); Navigation.InsertPageBefore(paginaAuntenticacion, this); await Navigation.PopAsync(); } _mensaje = grabo ? "El pedido ha sido guardado correctamente." : "No se ha registrado el pedido."; }