private void TextBox6_TextChanged(object sender, EventArgs e) // búsqueda por id de la nota de envío para agregar a pedido { if (textBox6.Text != "") { try { long.Parse(textBox6.Text); } catch { return; }; long id = long.Parse(textBox6.Text); NotaDeEnvio nota = _lstNotaDeEnvios.Find(x => x.Id == id); if (nota != null) { label16.Text = nota.Cliente.Direccion; if (comboBox5.Text != "") { button6.Enabled = true; } else { button6.Enabled = false; } } else { label16.Text = "No encontrado"; button6.Enabled = false; } } else { label16.Text = ""; button6.Enabled = false; } }
private static void DeleteNotaDeEnvio(NotaDeEnvio notaDeEnvio) { bool response = _service.Delete(notaDeEnvio); if (!response) { Console.WriteLine("Algo falló al eliminar Nota de Envío de la base de datos"); } }
private static void AddNotaDeEnvio(NotaDeEnvio notaDeEnvio) { bool response = _service.Add(notaDeEnvio); if (!response) { Console.WriteLine("Algo falló al agregar Nota de Envío a base de datos"); } }
private static bool EditNotaDeEnvio(NotaDeEnvio notaDeEnvio) { bool response = _service.Edit(notaDeEnvio); if (!response) { Console.WriteLine("Algo falló al editar Nota de Envío en base de datos"); } return(response); }
private static long AddNotaDeEnvioReturnId(NotaDeEnvio notaDeEnvio) { long response = AddAndGetId(notaDeEnvio); if (response == 0) { Console.WriteLine("Algo falló al agregar Nota de Envío a base de datos"); } return(response); }
private static long AddAndGetId(NotaDeEnvio notaDeEnvio) { try { _service.Add(notaDeEnvio); List <NotaDeEnvio> lst = getNotaDeEnvios(); return(lst.Last().Id); } catch { return(0); } }
private void AgregarProductoVendido_btn9_Click(object sender, EventArgs e) { try { long.Parse(textBox7.Text); } catch { return; }; Producto productoNuevo = getProductoPorNombreExacto(label25.Text); if (productoNuevo == null) { return; } try { long.Parse(textBox7.Text); } catch { return; }; NotaDeEnvio notaDeEnvio = getNotaDeEnvio(long.Parse(textBox7.Text)); try { int.Parse(textBox10.Text); } catch { return; }; ProdVendido nuevoProdVendido = new ProdVendido() { Cantidad = int.Parse(textBox10.Text), Precio = productoNuevo.Precio, ProductoId = productoNuevo.Id, NotaDeEnvioId = getNotaDeEnvio(long.Parse(textBox7.Text)).Id, Descripcion = productoNuevo.Nombre }; if (productoNuevo.Tipo == TipoProducto.Saldo.ToString() && (productoNuevo.SubTipo == TipoSaldo.Bonificacion.ToString() || productoNuevo.SubTipo == TipoSaldo.Devolucion.ToString())) { nuevoProdVendido.Precio *= -1; } _lstProdVendidos.Add(nuevoProdVendido); editNotaDeEnvioAgregar(notaDeEnvio, new List <ProdVendido>() { nuevoProdVendido }); ActualizarNotas(); ActualizarGrid1(_lstNotaDeEnvios); ActualizarGrid2(_lstProdVendidos); decimal impTotal = 0; foreach (ProdVendido prodVend in _lstProdVendidos) { impTotal += prodVend.Cantidad * prodVend.Precio; } label20.Text = impTotal.ToString(); label25.Text = ""; label26.Text = ""; textBox9.Text = ""; textBox10.Text = ""; textBox11.Text = ""; textBox11.Visible = false; button9.Enabled = false; }
public List <NotaDeEnvio> ObtenerListaAImprimir() { List <NotaDeEnvio> listaAImprimir = new List <NotaDeEnvio>(); if (comboBox2.SelectedItem.ToString() == "No impresas") { foreach (NotaDeEnvio nota in _lstNotaDeEnvios) { if (nota.Impresa == 0) { listaAImprimir.Add(nota); } } } if (comboBox2.SelectedItem.ToString() == "Hoy") { foreach (NotaDeEnvio nota in _lstNotaDeEnvios) { if (nota.Fecha == DateTime.UtcNow.ToString(Constants.FormatoDeFecha)) { listaAImprimir.Add(nota); } } } if ( comboBox2.SelectedItem.ToString() == "Establecer rango" && textBox2.Text != "" && textBox3.Text != "" ) { try { int j = int.Parse(textBox3.Text); for (int i = int.Parse(textBox2.Text); i <= j; i++) { NotaDeEnvio nota = _lstNotaDeEnvios.Find(x => x.Id == i); if (nota != null) { listaAImprimir.Add(nota); } } } catch { MessageBox.Show("Rango establecido incorrecto"); } } return(listaAImprimir); }
private void AgregarPedidoDesdeNota_Click(object sender, EventArgs e) { try { long.Parse(textBox6.Text); } catch { return; }; string diaDeReparto = comboBox4.Text; string nombreReparto = comboBox5.Text; NotaDeEnvio notaDeEnvio = getNotaDeEnvio(long.Parse(textBox6.Text)); Reparto reparto = getRepartoPorDiaYNombre(diaDeReparto, nombreReparto); if (notaDeEnvio == null || reparto == null) { return; } addOrEditPedidoEnReparto(reparto, notaDeEnvio.Cliente, notaDeEnvio.ProdVendidos.ToList()); comboBox5.Text = ""; comboBox4.Text = ""; textBox6.Text = ""; button6.Enabled = false; label16.Text = ""; }
private static NotaDeEnvio EditNotaDeEnvioQuitar(NotaDeEnvio notaDeEnvio, ProdVendido prodVendidoAEliminar) { DProdVendido.deleteProdVendido(prodVendidoAEliminar); List <ProdVendido> lstAuxiliar = new List <ProdVendido>(); foreach (ProdVendido prodVendido in notaDeEnvio.ProdVendidos) { if (prodVendido.ProductoId != prodVendidoAEliminar.ProductoId) { lstAuxiliar.Add(prodVendido); } } notaDeEnvio.ProdVendidos = lstAuxiliar; notaDeEnvio.ImporteTotal = ExtraerImporteDeNotaDeEnvio(lstAuxiliar); notaDeEnvio.Detalle = ExtraerDetalleDeNotaDeEnvio(lstAuxiliar); editNotaDeEnvio(notaDeEnvio); // falta eliminar producto vendido return(notaDeEnvio); }
// Agregar o Quitar producto vendido de nota de envio private void TextBox7_TextChanged(object sender, EventArgs e) { if (textBox7.Text != "") { try { long.Parse(textBox7.Text); } catch { return; }; NotaDeEnvio notaDeEnvio = getNotaDeEnvio(long.Parse(textBox7.Text)); if (notaDeEnvio != null) { if (notaDeEnvio.ProdVendidos == null) { return; } _lstProdVendidos = notaDeEnvio.ProdVendidos.ToList(); ActualizarGrid2(_lstProdVendidos); decimal impTotal = 0; foreach (ProdVendido nota in _lstProdVendidos) { impTotal += nota.Cantidad * nota.Precio; } label20.Text = impTotal.ToString(); if (notaDeEnvio.Cliente != null && notaDeEnvio.Cliente.Direccion != null) { label18.Text = notaDeEnvio.Cliente.Direccion.ToString() + " - " + notaDeEnvio.ClienteId.ToString(); } } else { label18.Text = "No encontrado"; label20.Text = "0"; _lstProdVendidos.Clear(); ActualizarGrid2(_lstProdVendidos); } } else { label18.Text = ""; label20.Text = "0"; _lstProdVendidos.Clear(); ActualizarGrid2(_lstProdVendidos); } }
public void Rellenar_Datos(NotaDeEnvio notaDeEnvio) { _notaDeEnvio = notaDeEnvio; try { lFecha.Text = invertirFecha(_notaDeEnvio.Fecha); string elcodigo = _notaDeEnvio.Id.ToString(); for (int i = elcodigo.Length; i < 5; i++) { elcodigo = "0" + elcodigo; } lCodigo.Text = elcodigo; //int separador = _notaDeEnvio.Client.Direccion.IndexOf('-'); //lCalle.Text = _notaDeEnvio.Client.Direccion.Substring(0, separador); lCalle.Text = _notaDeEnvio.Cliente.Direccion; //lLocalidad.Text = nota_notaDeEnvioDeEnvio.Client.Direccion.Substring(separador + 1); lLocalidad.Text = " "; lTotal.Text = "$ " + _notaDeEnvio.ImporteTotal.ToString(".00"); foreach (ProdVendido pvActual in _notaDeEnvio.ProdVendidos) { if (pvActual.Producto.Tipo == TipoProducto.Saldo.ToString()) { label1.Text += Environment.NewLine; } else { label1.Text += pvActual.Cantidad.ToString() + Environment.NewLine; } //label2.Text = label2.Text + pvActual.Descripcion + " ($" + pvActual.Precio.ToString(".00") + " c/u)" + Environment.NewLine; label2.Text = label2.Text + pvActual.Descripcion + Environment.NewLine; label3.Text = label3.Text + (pvActual.Precio * pvActual.Cantidad).ToString(".00") + Environment.NewLine; } } catch (Exception exc) { MessageBox.Show("Error rellenando los datos: " + exc.Message); } }
private static NotaDeEnvio EditNotaDeEnvioAgregar(NotaDeEnvio notaDeEnvio, List <ProdVendido> lstProdVendidos) { if (notaDeEnvio.ProdVendidos == null || notaDeEnvio.ProdVendidos.Count == 0) { notaDeEnvio.ProdVendidos = new List <ProdVendido>(); notaDeEnvio.ProdVendidos.ToList().AddRange(lstProdVendidos); notaDeEnvio.ImporteTotal = ExtraerImporteDeNotaDeEnvio(lstProdVendidos); notaDeEnvio.Detalle = ExtraerDetalleDeNotaDeEnvio(lstProdVendidos); } else { foreach (ProdVendido prodVendidoNuevo in lstProdVendidos) { bool exists = false; foreach (ProdVendido prodVendidoNDC in notaDeEnvio.ProdVendidos) { if (prodVendidoNDC.Id == prodVendidoNuevo.ProductoId) { exists = true; prodVendidoNDC.Cantidad += prodVendidoNuevo.Cantidad; } } if (!exists) { notaDeEnvio.ProdVendidos.Add(prodVendidoNuevo); } notaDeEnvio.ImporteTotal += prodVendidoNuevo.Precio * prodVendidoNuevo.Cantidad; string descripcion = DProdVendido.editDescripcion(prodVendidoNuevo.Descripcion); notaDeEnvio.Detalle += prodVendidoNuevo.Cantidad.ToString() + "x " + descripcion + ". "; } } bool success = editNotaDeEnvio(notaDeEnvio); if (!success) { return(null); } return(notaDeEnvio); }
private void Quitar_btn8_Click(object sender, EventArgs e) { if (label18.Text != "" && label18.Text != "No encontrado" && textBox7.Text != "") { try { long.Parse(textBox7.Text); } catch { return; }; NotaDeEnvio notaDeEnvio = getNotaDeEnvio(long.Parse(textBox7.Text)); ProdVendido prodVendido = getProdVendidoPorNombre(label22.Text); if (notaDeEnvio == null || prodVendido == null) { return; } if (_lstProdVendidos.Count < 2) { MessageBox.Show("No se puede quitar el único producto que tiene una nota, hay que eliminarla"); return; } notaDeEnvio = editNotaDeEnvioQuitar(notaDeEnvio, prodVendido); prodVendido.NotaDeEnvioId = null; editProdVendido(prodVendido); ActualizarNotas(); ActualizarGrid1(_lstNotaDeEnvios); var aux = new List <ProdVendido>(); aux.AddRange(_lstProdVendidos); _lstProdVendidos.Clear(); aux.ForEach(prodVend => { if (prodVend.Id != prodVendido.Id) { _lstProdVendidos.Add(prodVend); } }); ActualizarGrid2(_lstProdVendidos); label20.Text = notaDeEnvio.ImporteTotal.ToString(); textBox8.Text = ""; label22.Text = ""; button8.Enabled = false; } }
public FormImprimirNota() { InitializeComponent(); _notaDeEnvio = new NotaDeEnvio(); }
private void ConfirmarCrearNota_Click(object sender, EventArgs e) { if (labelClienteId.Text != "" && labelClienteId.Text != "No encontrado") { var cliente = getClientePorDireccionExacta(label36.Text); if (cliente == null) { return; } NotaDeEnvio nuevaNota = new NotaDeEnvio { ClienteId = cliente.Id, Fecha = DateTime.Now.ToString(Constants.FormatoDeFecha), Impresa = 0, Detalle = extraerDetalleDeNotaDeEnvio(_lstProdVendidos), ImporteTotal = extraerImporteDeNotaDeEnvio(_lstProdVendidos) }; long notaId = addNotaDeEnvioReturnId(nuevaNota); if (notaId == 0) { MessageBox.Show("Falló al procesar Nota nueva"); return; } foreach (ProdVendido prodVendido in _lstProdVendidos) { prodVendido.NotaDeEnvioId = notaId; addProdVendido(prodVendido); } if (checkBox4.Checked) // agregar productos vendidos a lista de registros y a lista de ventas { RegistroVenta nuevoRegistro = new RegistroVenta { ClienteId = cliente.Id, Cliente = cliente, Fecha = DateTime.Now.ToString(Constants.FormatoDeFecha), NombreCliente = cliente.Direccion }; long registroId = addRegistroVentaReturnId(nuevoRegistro); foreach (var prodVendido in _lstProdVendidos) { prodVendido.RegistroVentaId = registroId; if (esProducto(prodVendido.Producto)) { List <Venta> lstVentas = getVentas(); bool exists = false; foreach (var venta in lstVentas) { if (venta.ProductoId == prodVendido.ProductoId) { exists = true; venta.Cantidad += prodVendido.Cantidad; editVenta(venta); } } if (!exists) { Venta nuevaVenta = new Venta { ProductoId = prodVendido.ProductoId, Cantidad = prodVendido.Cantidad, Producto = getProducto(prodVendido.ProductoId) }; addVenta(nuevaVenta); } } } } if (checkBox1.Checked) // imprimir checkbox { var form = Program.GetConfig().GetRequiredService <FormImprimirNota>(); form.Rellenar_Datos(nuevaNota); form.Show(); } if (checkBox3.Checked) // enviar a hoja de reparto como pedido nuevo para X reparto { Reparto reparto = getRepartoPorDiaYNombre(comboBox4.Text, comboBox3.Text); Pedido pedido = reparto.Pedidos.ToList().Find(x => x.ClienteId != cliente.Id); if (reparto == null || pedido == null) { return; } addOrEditPedidoEnReparto(reparto, cliente, _lstProdVendidos); foreach (ProdVendido prodVendido in _lstProdVendidos) { prodVendido.PedidoId = pedido.Id; editProdVendido(prodVendido); } } Close(); } else { MessageBox.Show("Verifique los campos"); } }