public static LibroInventario CrearItem(Compra factura, ComprasIngrediente item) { using (var db = new DatosEntities()) { DateTime FechaInventario = Convert.ToDateTime("01/" + factura.Mes.Value.ToString("00") + "/" + factura.Año.Value.ToString("0000")); LibroInventario q = (from p in db.LibroInventarios where factura.Mes == p.Mes && factura.Año == p.Año && p.IdProducto == item.IdIngrediente select p).FirstOrDefault(); if (q == null) { LibroInventario ant = (from p in db.LibroInventarios where p.Fecha < FechaInventario && p.IdProducto == item.IdIngrediente select p).FirstOrDefault(); q = new LibroInventario(); q.IdProducto = item.IdIngrediente; q.Fecha = factura.Fecha; q.Inicio = ant == null ? 0 : ant.InventarioFisico; q.Entradas = 0; q.Salidas = 0; q.Final = 0; q.InventarioFisico = 0; q.Ajustes = 0; q.Producto = item.Ingrediente; q.Mes = factura.Mes; q.Año = factura.Año; q.IdLibroInventarios = FactoryContadores.GetMax("IdLibroInventarios"); db.LibroInventarios.AddObject(q); db.SaveChanges(); } return(q); } }
private void txtIngrediente_Validating(object sender, CancelEventArgs e) { DevExpress.XtraEditors.TextEdit Editor = (DevExpress.XtraEditors.TextEdit) this.gridControl1.MainView.ActiveEditor; if (!Editor.IsModified) { return; } string Texto = Editor.Text; registroDetalle = (ComprasIngrediente)this.comprasIngredienteBindingSource.Current; if (UbicarProducto(Texto)) { if (ingrediente == null) { Editor.Undo(); e.Cancel = true; return; } LeerIngrediente(false); Editor.Text = ingrediente.Descripcion; if (string.IsNullOrEmpty(ingrediente.Descripcion)) { Editor.Undo(); e.Cancel = true; return; } } else { LeerIngrediente(false); Editor.Undo(); e.Cancel = true; return; } }
void txtIngrediente_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) { registroDetalle = (ComprasIngrediente)this.comprasIngredienteBindingSource.Current; if (UbicarProducto("")) { LeerIngrediente(false); } }
private void CalcularMontoItem(ComprasIngrediente item) { if (item != null) { this.comprasIngredienteBindingSource.EndEdit(); item.Iva = registroDetalle.Costo * registroDetalle.TasaIva / 100; item.CostoIva = item.Costo + item.Iva; item.Total = registroDetalle.Cantidad * registroDetalle.CostoIva; item.CostoNeto = registroDetalle.Total / registroDetalle.CantidadNeta; registro.Totalizar(); this.comprasIngredienteBindingSource.ResetCurrentItem(); } registro.Totalizar(); }
void txtCostoIva_Validating(object sender, CancelEventArgs e) { DevExpress.XtraEditors.CalcEdit Editor = (DevExpress.XtraEditors.CalcEdit) this.gridControl1.MainView.ActiveEditor; if (!Editor.IsModified) { return; } if (this.comprasIngredienteBindingSource.Current == null) { return; } registroDetalle = (ComprasIngrediente)this.comprasIngredienteBindingSource.Current; registroDetalle.Costo = (double)Editor.Value / (1 + (registroDetalle.TasaIva / 100)); }
private void LeerIngrediente(bool Buscar) { if (ingrediente == null) { return; } registroDetalle = (ComprasIngrediente)this.comprasIngredienteBindingSource.Current; // this.gridControl1.MainView.ActiveEditor.Text = producto.Codigo; registroDetalle.Cantidad = 1; registroDetalle.CantidadNeta = 1; registroDetalle.Costo = ingrediente.Costo; registroDetalle.ExistenciaAnterior = ingrediente.Existencia; registroDetalle.IdIngrediente = ingrediente.IdIngrediente; registroDetalle.Ingrediente = ingrediente.Descripcion; registroDetalle.TasaIva = ingrediente.TasaIva; registroDetalle.UnidadMedida = ingrediente.UnidadMedida; CalcularMontoItem(registroDetalle); }
void txtCantidadNeta_Validating(object sender, CancelEventArgs e) { DevExpress.XtraEditors.CalcEdit Editor = (DevExpress.XtraEditors.CalcEdit) this.gridControl1.MainView.ActiveEditor; if (!Editor.IsModified) { return; } if (this.comprasIngredienteBindingSource.Current == null) { return; } registroDetalle = (ComprasIngrediente)this.comprasIngredienteBindingSource.Current; if ((double)Editor.Value == 0) { Editor.Value = (decimal)registroDetalle.Cantidad; } registroDetalle.CantidadNeta = (double)Editor.Value; CalcularMontoItem(registroDetalle); }
private void gridControl1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Return) { gridView1.MoveBy(0); } if (gridView1.ActiveEditor == null) { if (e.KeyCode == Keys.Delete || e.KeyCode == Keys.Subtract) { if (this.gridView1.IsFocusedView) { ComprasIngrediente i = (ComprasIngrediente)this.comprasIngredienteBindingSource.Current; registro.ComprasIngredientes.Remove(i); } e.Handled = true; } } }
internal static void DevolverInventario(ComprasIngrediente item) { using (RestaurantEntities db = new RestaurantEntities()) { Ingrediente i = FactoryIngredientes.Item(db, item.IdIngrediente); if (i != null) { i.Existencia = i.Existencia.GetValueOrDefault(0) - item.CantidadNeta; i.Costo = item.CostoNeto; } IngredientesInventario inventario = (from x in db.IngredientesInventarios where x.IdIngrediente == item.IdIngrediente select x).FirstOrDefault(); if (inventario != null) { inventario.Entradas -= item.CantidadNeta; inventario.Final = inventario.Inicio + inventario.Entradas - inventario.Salidas; inventario.InventarioFisico = inventario.Final; } db.SaveChanges(); } }
internal static void RegistrarInventario(ComprasIngrediente item) { using (RestaurantEntities db = new RestaurantEntities()) { Ingrediente i = FactoryIngredientes.Item(db, item.IdIngrediente); if (i != null) { i.Existencia = i.Existencia.GetValueOrDefault(0) + item.CantidadNeta; i.Costo = item.CostoNeto; } IngredientesInventario inventario = (from x in db.IngredientesInventarios where x.IdIngrediente == item.IdIngrediente select x).FirstOrDefault(); if (inventario == null) { IngredientesInventario nuevoItem = new IngredientesInventario(); nuevoItem.Ajuste = 0; nuevoItem.Entradas = item.CantidadNeta;; nuevoItem.FechaInicio = DateTime.Today; nuevoItem.Grupo = i.Grupo; nuevoItem.IdIngrediente = i.IdIngrediente; nuevoItem.IdIngredienteInventario = FactoryContadores.GetMax("IdIngredienteInventario"); nuevoItem.Ingrediente = i.Descripcion; nuevoItem.Inicio = 0; nuevoItem.Salidas = 0; nuevoItem.Final = nuevoItem.Inicio + nuevoItem.Entradas - nuevoItem.Salidas; nuevoItem.InventarioFisico = nuevoItem.Final; db.IngredientesInventarios.AddObject(nuevoItem); } else { inventario.Entradas += item.CantidadNeta; inventario.Final = inventario.Inicio + inventario.Entradas - inventario.Salidas; inventario.InventarioFisico = inventario.Final; } db.SaveChanges(); } }