private void dgrid_entrada_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e) { int valor; if (!int.TryParse((e.EditingElement as TextBox).Text, out valor)) { e.Cancel = true; return; } valor = Math.Max(valor, 0); var objeto = e.Row.Item as entrada; Existencia exist; using (var db = new TiendaDbContext()) exist = db.Tiendas.First().Productos.Where(p => p.Codigo == objeto.Codigo).First(); var column = e.Column as DataGridBoundColumn; if (column != null) { var bindingPath = (column.Binding as Binding).Path.Path; if (bindingPath == "CantidadBuenEstado") { source_entrada.Find(a => a.Codigo == objeto.Codigo).CantidadBuenEstado = Math.Min(valor, exist.CantidadBuenEstado); } else { source_entrada.Find(a => a.Codigo == objeto.Codigo).CantidadDefectuoso = Math.Min(valor, exist.CantidadDefectuoso); } } Metodos_Auxiliares.refresh(dgrid_entrada, source_entrada); }
private void btn_agragar_venta_Click(object sender, RoutedEventArgs e) { if (dgrid_existencia.SelectedItem == null || !(dgrid_existencia.SelectedItem is objeto_existencia)) { MessageBox.Show("Debe seleccionar un producto antes de agregar"); return; } var existencia = dgrid_existencia.SelectedItem as objeto_existencia; bool existe_venta = source_venta.Find(p => p.ExistenciaId == existencia.ExistenciaId) != null; bool existe_deuda = source_deuda.Find(p => p.ExistenciaId == existencia.ExistenciaId) != null; bool existe_devolucion = source_devolucion.Find(p => p.ExistenciaId == existencia.ExistenciaId) != null; if (existe_venta) { dgrid_venta.SelectedIndex = dgrid_venta.Items.IndexOf(source_venta.Find(p => p.ExistenciaId == existencia.ExistenciaId)); return; } var venta_new = new objeto_venta(existencia.ExistenciaId); source_venta.Add(venta_new); Metodos_Auxiliares.refresh(dgrid_venta, source_venta); }
private void dgrid_entrada_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e) { int valor; if (!int.TryParse((e.EditingElement as TextBox).Text, out valor)) { e.Cancel = true; return; } if (valor < 0) { valor = 0; } var objeto = e.Row.Item as entrada; var column = ((e.Column as DataGridBoundColumn).Binding as Binding).Path.Path; var obj = source_entrada.Find(r => r.Codigo == objeto.Codigo); if (column == "CantidadBuenEstado") { obj.CantidadBuenEstado = valor; } else { obj.CantidadDefectuoso = valor; } Metodos_Auxiliares.refresh(dgrid_entrada, source_entrada); }
private void dg_trab_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e) { var row = e.Row.Item as Trabajador; if (row.TrabajadorId == 0) { using (var db = new TiendaDbContext()) { var tienda = db.Tiendas.First(); var trabajador = new Trabajador { Nombre = (e.EditingElement as TextBox).Text, ShopId = tienda.ShopId }; if (trabajador.Nombre == "") { e.Cancel = true; return; } db.Trabajadores.Add(trabajador); db.SaveChanges(); data_trabajador.Add(trabajador); Metodos_Auxiliares.refresh(dg_trab, data_trabajador); } } else if (MessageBox.Show("Esta seguro", "Cambio de Nombre", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { using (var db = new TiendaDbContext()) { db.Trabajadores.Find((dg_trab.SelectedItem as Trabajador).TrabajadorId).Nombre = (e.EditingElement as TextBox).Text; db.SaveChanges(); } } }
private void dgrid_venta_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e) { int value; if (!int.TryParse((e.EditingElement as TextBox).Text, out value)) { e.Cancel = true; return; } var column = e.Column as DataGridBoundColumn; if (column != null) { int id = (dgrid_venta.SelectedItem as objeto_venta).ExistenciaId; var art = venta_source.Find(p => p.ExistenciaId == id); if (value < 0) { value = 0; } var bindingPath = (column.Binding as Binding).Path.Path; if (bindingPath == "CantidadBuenEstado") { if (art.CantidadExistenteBE < value) { value = art.CantidadExistenteBE; } venta_source.Find(s => s.ExistenciaId == id).CantidadBuenEstado = value; } else { if (art.CantidadExistenteDefec < value) { value = art.CantidadExistenteDefec; } venta_source.Find(s => s.ExistenciaId == id).CantidadDefectuoso = value; } } Metodos_Auxiliares.refresh(dgrid_venta, venta_source); double costo_total = 0; venta_source.ForEach(p => costo_total += p.PrecioTotal); tbox_pagado.Text = costo_total.ToString(); }
private void btn_retirar_deuda_Click(object sender, RoutedEventArgs e) { if (dgrid_deuda.SelectedItem == null || !(dgrid_deuda.SelectedItem is objeto_deuda)) { MessageBox.Show("Necesita seleccionar un producto para retirar"); return; } var objeto = dgrid_deuda.SelectedItem as objeto_deuda; bool existe_venta = source_venta.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; bool existe_deuda = source_deuda.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; bool existe_devolucion = source_devolucion.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; bool existe_existencia = source_existencia.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; source_deuda.RemoveAt(source_deuda.FindIndex(p => p.ExistenciaId == objeto.ExistenciaId)); Metodos_Auxiliares.refresh(dgrid_deuda, source_deuda); }
private void btn_Eliminar_Click(object sender, RoutedEventArgs e) { if (dgrid_venta.SelectedItem == null || !(dgrid_venta.SelectedItem is objeto_venta)) { MessageBox.Show("Necesita seleccionar un producto para remover"); return; } var obj_venta = dgrid_venta.SelectedItem as objeto_venta; venta_source.RemoveAt(venta_source.FindIndex(p => p.Codigo == obj_venta.Codigo)); Metodos_Auxiliares.refresh(dgrid_venta, venta_source); double costo_total = 0; venta_source.ForEach(p => costo_total += p.PrecioTotal); tbox_pagado.Text = costo_total.ToString(); }
private void delete_empleado_Click(object sender, RoutedEventArgs e) { if (dg_trab.SelectedItem == null || !(dg_trab.SelectedItem is Trabajador)) { MessageBox.Show("Debe escoger un trabajador"); } else { if (MessageBox.Show("Esta seguro", "Eliminar Trabajador", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { using (var db = new TiendaDbContext()) { db.Trabajadores.Find((dg_trab.SelectedItem as Trabajador).TrabajadorId).eliminado = true; db.SaveChanges(); data_trabajador.Remove(dg_trab.SelectedItem as Trabajador); Metodos_Auxiliares.refresh(dg_trab, data_trabajador); } } } }
private void btn_Eliminar_Click_1(object sender, RoutedEventArgs e) { var objeto_select = dgrid_entrada.SelectedItem; if (objeto_select == null || !(objeto_select is entrada)) { MessageBox.Show("Antes de retirar necesita seleccionar un producto"); return; } var exist = objeto_select as entrada; int existencia_id; using (var db = new TiendaDbContext()) existencia_id = db.Tiendas.First().Productos.Where(p => p.Codigo == exist.Codigo).First().ExistenciaId; source_entrada.RemoveAt(source_entrada.FindIndex(p => p.Codigo == exist.Codigo)); source_producto.Add(new objeto_existencia(existencia_id)); Metodos_Auxiliares.refresh(dgrid_entrada, source_entrada); Metodos_Auxiliares.refresh(dgrid_productos, source_producto.Where(s => s.Codigo.ToLower().Contains(codigo_src) && s.Descripcion.ToLower().Contains(descrip_src)).ToList()); }
private void btn_Agregar_Click(object sender, RoutedEventArgs e) { var objeto_select = dgrid_productos.SelectedItem; if (objeto_select == null || !(objeto_select is objeto_existencia)) { MessageBox.Show("Antes de agregar necesita seleccionar un producto"); return; } var exist = objeto_select as objeto_existencia; if (source_entrada.Exists(p => p.Codigo == exist.Codigo)) { var objeto = source_entrada.Find(p => p.Codigo == exist.Codigo); dgrid_entrada.SelectedIndex = dgrid_entrada.Items.IndexOf(objeto); return; } source_entrada.Add(new entrada(exist.Codigo, exist.Descripcion)); Metodos_Auxiliares.refresh(dgrid_entrada, source_entrada); Metodos_Auxiliares.refresh(dgrid_productos, source_producto.Where(s => s.Codigo.ToLower().Contains(codigo_src) && s.Descripcion.ToLower().Contains(descrip_src)).ToList()); }
private void dgrid_deuda_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e) { var columna = e.Column as DataGridBoundColumn; if (columna != null && (columna.Binding as Binding).Path.Path == "Pagado") { double value = 0; if (!double.TryParse((e.EditingElement as TextBox).Text, out value)) { e.Cancel = true; return; } if (!(e.Row.Item is objeto_deuda)) { return; } var obj = e.Row.Item as objeto_deuda; value = Math.Max(0, value); value = Math.Min(value, obj.PrecioTotal); source_deuda.Find(s => s.Codigo == obj.Codigo).Pagado = value; CostoDeuda = 0; source_deuda.ForEach(s => CostoDeuda += s.Pagado); tbox_importe_total.Text = CostoTotal.ToString(); Metodos_Auxiliares.refresh(dgrid_deuda, source_deuda); return; } int valor; if (!int.TryParse((e.EditingElement as TextBox).Text, out valor)) { e.Cancel = true; return; } if (!(e.Row.Item is objeto_deuda)) { return; } var objeto = e.Row.Item as objeto_deuda; bool existe_venta = source_venta.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; bool existe_deuda = source_deuda.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; bool existe_devolucion = source_devolucion.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; bool existe_existencia = source_existencia.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; int cantidadBuenEstado = 0; int cantidadDefectuoso = 0; if (existe_venta) { var venta = source_venta.Find(p => p.ExistenciaId == objeto.ExistenciaId); cantidadBuenEstado += venta.CantidadBuenEstado; cantidadDefectuoso += venta.CantidadDefectuoso; } if (existe_devolucion) { var devolucion = source_devolucion.Find(p => p.ExistenciaId == objeto.ExistenciaId); cantidadBuenEstado += devolucion.CantidadBuenEstado; cantidadDefectuoso += devolucion.CantidadBuenEstado; } var existencia = source_existencia.Find(p => p.ExistenciaId == objeto.ExistenciaId); int cantidadBEmax = existencia.CantidadBuenEstado - cantidadBuenEstado; int cantidadDefmax = existencia.CantidadDefectuoso - cantidadDefectuoso; cantidadBuenEstado = Math.Max(0, valor); cantidadDefectuoso = Math.Max(0, valor); cantidadBuenEstado = Math.Min(cantidadBEmax, valor); cantidadDefectuoso = Math.Min(cantidadDefmax, valor); var column = e.Column as DataGridBoundColumn; if (column != null) { var bindingPath = (column.Binding as Binding).Path.Path; if (bindingPath == "CantidadBuenEstado") { source_deuda.Find(s => s.Codigo == objeto.Codigo).CantidadBuenEstado = cantidadBuenEstado; } else { source_deuda.Find(s => s.Codigo == objeto.Codigo).CantidadDefectuoso = cantidadDefectuoso; } } Metodos_Auxiliares.refresh(dgrid_deuda, source_deuda); }
private void dgrid_devolucion_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e) { int valor; if (!int.TryParse((e.EditingElement as TextBox).Text, out valor)) { e.Cancel = true; return; } if (!(e.Row.Item is objeto_devolucion)) { return; } var objeto = e.Row.Item as objeto_devolucion; bool existe_venta = source_venta.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; bool existe_deuda = source_deuda.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; bool existe_devolucion = source_devolucion.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; bool existe_existencia = source_existencia.Find(p => p.ExistenciaId == objeto.ExistenciaId) != null; int cantidadBuenEstado = 0; int cantidadDefectuoso = 0; if (existe_deuda) { var deuda = source_deuda.Find(p => p.ExistenciaId == objeto.ExistenciaId); cantidadBuenEstado += deuda.CantidadBuenEstado; cantidadDefectuoso += deuda.CantidadDefectuoso; } if (existe_venta) { var venta = source_venta.Find(p => p.ExistenciaId == objeto.ExistenciaId); cantidadBuenEstado += venta.CantidadBuenEstado; cantidadDefectuoso += venta.CantidadBuenEstado; } var existencia = source_existencia.Find(p => p.ExistenciaId == objeto.ExistenciaId); int cantidadBEmax = existencia.CantidadBuenEstado - cantidadBuenEstado; int cantidadDefmax = existencia.CantidadDefectuoso - cantidadDefectuoso; cantidadBuenEstado = Math.Max(0, valor); cantidadDefectuoso = Math.Max(0, valor); cantidadBuenEstado = Math.Min(cantidadBEmax, valor); cantidadDefectuoso = Math.Min(cantidadDefmax, valor); var column = e.Column as DataGridBoundColumn; if (column != null) { var bindingPath = (column.Binding as Binding).Path.Path; if (bindingPath == "CantidadBuenEstado") { source_devolucion.Find(s => s.Codigo == objeto.Codigo).CantidadBuenEstado = cantidadBuenEstado; } else { source_devolucion.Find(s => s.Codigo == objeto.Codigo).CantidadDefectuoso = cantidadDefectuoso; } } Metodos_Auxiliares.refresh(dgrid_devolucion, source_devolucion); }
private void btn_buscar_Click(object sender, RoutedEventArgs e) { codigo_src = tbox_codigo.Text.ToLower(); descrip_src = tbox_descripcion.Text.ToLower(); Metodos_Auxiliares.refresh(dgrid_productos, productos_source.Where(exis => exis.Codigo.ToLower().Contains(codigo_src) && exis.Descripcion.ToLower().Contains(descrip_src)).ToList()); }