public static List <tbProcesarPrecio> getProcesarPrecios(long idEmpresa) { List <tbProcesarPrecio> getProcesarPrecios = new List <tbProcesarPrecio>(); using (dbCosolemEntities _dbCosolemEntities = new dbCosolemEntities()) { getProcesarPrecios = (from PP in _dbCosolemEntities.tbProcesarPrecio where PP.idEmpresa == idEmpresa && PP.estadoRegistro && PP.procesarPrecio select PP).ToList(); } getProcesarPrecios.ForEach(x => { var _tbProducto = getProducto(x.idProducto); if (_tbProducto != null) { x.marca = _tbProducto.marca; x.linea = _tbProducto.linea; x.grupo = _tbProducto.grupo; x.subgrupo = _tbProducto.subgrupo; x.modelo = _tbProducto.modelo; x.producto = _tbProducto.producto; } tbCosto _tbCosto = getCosto(idEmpresa, x.idProducto); x.costo = _tbCosto == null ? 0 : _tbCosto.costo; tbIndiceComercial _tbIndiceComercial = getIndiceComercial(idEmpresa, x.idProducto); x.indiceComercial = _tbIndiceComercial == null ? 0 : _tbIndiceComercial.indiceComercial; tbIndiceFinanciero _tbIndiceFinanciero = getIndiceFinanciero(idEmpresa, x.idProducto); x.indiceFinanciero = _tbIndiceFinanciero == null ? 0 : _tbIndiceFinanciero.indiceFinanciero; tbIndiceInformativo _tbIndiceInformativo = getIndiceInformativo(idEmpresa, x.idProducto); x.indiceInformativo = _tbIndiceInformativo == null ? 0 : _tbIndiceInformativo.indiceInformativo; }); return(getProcesarPrecios); }
private void CargarProductos() { long idEmpresa = ((Empresa)cmbEmpresa.SelectedItem).idEmpresa.Value; dtpFechaHasta_CloseUp(null, null); _BindingListtbProducto.Clear(); ((Modelo)cmbModelo.SelectedItem).tbProducto.Where(x => x.estadoRegistro).ToList().ForEach(x => { x.seleccionado = false; x.producto = x.idProducto.ToString() + " - " + x.descripcion; x.idIndiceComercial = 0; x.indiceComercial = 0; x.idCosto = 0; x.costo = 0; x.fechaHasta = new DateTime(2020, 12, 31); x.idProcesarPrecio = 0; tbIndiceComercial _tbIndiceComercial = edmCosolemFunctions.getIndiceComercial(idEmpresa, x.idProducto); if (_tbIndiceComercial != null) { x.idIndiceComercial = _tbIndiceComercial.idIndiceComercial; x.indiceComercial = _tbIndiceComercial.indiceComercial; } tbIndiceFinanciero _tbIndiceFinanciero = edmCosolemFunctions.getIndiceFinanciero(idEmpresa, x.idProducto); if (_tbIndiceFinanciero != null) { x.idIndiceFinanciero = _tbIndiceFinanciero.idIndiceFinanciero; x.indiceFinanciero = _tbIndiceFinanciero.indiceFinanciero; } tbIndiceInformativo _tbIndiceInformativo = edmCosolemFunctions.getIndiceInformativo(idEmpresa, x.idProducto); if (_tbIndiceInformativo != null) { x.idIndiceInformativo = _tbIndiceInformativo.idIndiceInformativo; x.indiceInformativo = _tbIndiceInformativo.indiceInformativo; } tbCosto _tbCosto = edmCosolemFunctions.getCosto(idEmpresa, x.idProducto); if (_tbCosto != null) { x.idCosto = _tbCosto.idCosto; x.costo = _tbCosto.costo; x.fechaHasta = _tbCosto.fechaHasta; } tbProcesarPrecio _tbProcesarPrecio = edmCosolemFunctions.getProcesarPrecio(idEmpresa, x.idProducto); if (_tbProcesarPrecio != null) { x.idProcesarPrecio = _tbProcesarPrecio.idProcesarPrecio; } _BindingListtbProducto.Add(x); }); }
private void tsbGrabar_Click(object sender, EventArgs e) { try { long cantidadTransferir = 0; if (!String.IsNullOrEmpty(txtCantidadTransferir.Text.Trim())) { cantidadTransferir = Convert.ToInt64(txtCantidadTransferir.Text.Trim()); } cmbProducto_SelectionChangeCommitted(null, null); txtCantidadTransferir.Text = cantidadTransferir.ToString(); string mensaje = String.Empty; long idBodegaSaliente = ((Bodega)cmbBodegaSaliente.SelectedItem).idBodega; long idBodegaEntrante = ((Bodega)cmbBodegaEntrante.SelectedItem).idBodega; Producto _tbProducto = (Producto)cmbProducto.SelectedItem; long inventario = 0; if (!String.IsNullOrEmpty(txtInventario.Text.Trim())) { inventario = Convert.ToInt64(txtInventario.Text.Trim()); } if (((Tienda)cmbTiendaSaliente.SelectedItem).idTienda == 0) { mensaje += "Seleccione tienda saliente\n"; } if (idBodegaSaliente == 0) { mensaje += "Seleccione bodega saliente\n"; } if (((Tienda)cmbTiendaEntrante.SelectedItem).idTienda == 0) { mensaje += "Seleccione tienda entrante\n"; } if (idBodegaEntrante == 0) { mensaje += "Seleccione bodega entrante\n"; } if (_tbProducto.idProducto == 0) { mensaje += "Seleccione producto\n"; } if (cantidadTransferir == 0) { mensaje += "Ingrese cantidad a transferir\n"; } if (idBodegaSaliente == idBodegaEntrante) { mensaje += "Bodega saliente y entrante no pueden ser iguales\n"; } if (cantidadTransferir > inventario) { mensaje += "Cantidad a transferir mayor a la del inventario\n"; } tbCosto _tbCosto = edmCosolemFunctions.getCosto(idEmpresa, _tbProducto.idProducto); if (_tbCosto == null || _tbCosto.costo == 0) { mensaje += "Producto no tiene costo\n"; } if (String.IsNullOrEmpty(mensaje.Trim())) { tbTransaccionInventario _tbTransaccionInventario = null; _tbTransaccionInventario = new tbTransaccionInventario(); _tbTransaccionInventario.tipoTransaccion = "Transferencia de inventario"; _tbTransaccionInventario.idBodega = idBodegaSaliente; _tbTransaccionInventario.idProducto = _tbProducto.idProducto; _tbTransaccionInventario.cantidad = -cantidadTransferir; _tbTransaccionInventario.estadoRegistro = true; _tbTransaccionInventario.fechaHoraIngreso = Program.fechaHora; _tbTransaccionInventario.idUsuarioIngreso = idUsuario; _tbTransaccionInventario.terminalIngreso = Program.terminal; _dbCosolemEntities.tbTransaccionInventario.AddObject(_tbTransaccionInventario); _tbTransaccionInventario = new tbTransaccionInventario(); _tbTransaccionInventario.tipoTransaccion = "Transferencia de inventario"; _tbTransaccionInventario.idBodega = idBodegaEntrante; _tbTransaccionInventario.idProducto = _tbProducto.idProducto; _tbTransaccionInventario.cantidad = cantidadTransferir; _tbTransaccionInventario.estadoRegistro = true; _tbTransaccionInventario.fechaHoraIngreso = Program.fechaHora; _tbTransaccionInventario.idUsuarioIngreso = idUsuario; _tbTransaccionInventario.terminalIngreso = Program.terminal; _dbCosolemEntities.tbTransaccionInventario.AddObject(_tbTransaccionInventario); tbInventario _tbInventario = null; _tbInventario = (from I in _dbCosolemEntities.tbInventario where I.idBodega == idBodegaSaliente && I.idProducto == _tbTransaccionInventario.idProducto && I.estadoRegistro select I).FirstOrDefault(); if (_tbInventario == null) { _tbInventario = new tbInventario(); _tbInventario.idBodega = idBodegaSaliente; _tbInventario.idProducto = _tbProducto.idProducto; _tbInventario.fisicoDisponible = cantidadTransferir; _tbInventario.reservado = 0; _tbInventario.estadoRegistro = true; _tbInventario.fechaHoraIngreso = Program.fechaHora; _tbInventario.idUsuarioIngreso = idUsuario; _tbInventario.terminalIngreso = Program.terminal; _dbCosolemEntities.tbInventario.AddObject(_tbInventario); } else { _tbInventario.fisicoDisponible = _tbInventario.fisicoDisponible - cantidadTransferir; _tbInventario.fechaHoraUltimaModificacion = Program.fechaHora; _tbInventario.idUsuarioUltimaModificacion = idUsuario; _tbInventario.terminalUltimaModificacion = Program.terminal; } _tbInventario = (from I in _dbCosolemEntities.tbInventario where I.idBodega == idBodegaEntrante && I.idProducto == _tbTransaccionInventario.idProducto && I.estadoRegistro select I).FirstOrDefault(); if (_tbInventario == null) { _tbInventario = new tbInventario(); _tbInventario.idBodega = idBodegaEntrante; _tbInventario.idProducto = _tbProducto.idProducto; _tbInventario.fisicoDisponible = cantidadTransferir; _tbInventario.reservado = 0; _tbInventario.estadoRegistro = true; _tbInventario.fechaHoraIngreso = Program.fechaHora; _tbInventario.idUsuarioIngreso = idUsuario; _tbInventario.terminalIngreso = Program.terminal; _dbCosolemEntities.tbInventario.AddObject(_tbInventario); } else { _tbInventario.fisicoDisponible = _tbInventario.fisicoDisponible + cantidadTransferir; _tbInventario.fechaHoraUltimaModificacion = Program.fechaHora; _tbInventario.idUsuarioUltimaModificacion = idUsuario; _tbInventario.terminalUltimaModificacion = Program.terminal; } long fisicoDisponible = edmCosolemFunctions.getFisicoDisponible(idEmpresa, idBodegaSaliente, _tbProducto.idProducto); if (cantidadTransferir > fisicoDisponible) { MessageBox.Show("Cantidad a transferir mayor a la del inventario", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { _dbCosolemEntities.SaveChanges(); MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information); frmTransferencias_Load(null, null); } } else { MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning); } } catch (Exception ex) { Util.MostrarException(this.Text, ex); } }
private void tsbGrabar_Click(object sender, EventArgs e) { try { dgvProductos_CellEndEdit(null, null); long idEmpresa = ((Empresa)cmbEmpresa.SelectedItem).idEmpresa.Value; string mensaje = String.Empty; if (idEmpresa == 0) { mensaje += "Seleccione empresa\n"; } if (((Marca)cmbMarca.SelectedItem).idMarca == 0) { mensaje += "Seleccione marca\n"; } if (((Linea)cmbLinea.SelectedItem).idLinea == 0) { mensaje += "Seleccione línea\n"; } if (((Grupo)cmbGrupo.SelectedItem).idGrupo == 0) { mensaje += "Seleccione grupo\n"; } if (((SubGrupo)cmbSubGrupo.SelectedItem).idSubGrupo == 0) { mensaje += "Seleccione subgrupo\n"; } if (((Modelo)cmbModelo.SelectedItem).idModelo == 0) { mensaje += "Seleccione modelo\n"; } if (_BindingListtbProducto.Count == 0) { mensaje += "Ingrese al menos 1 producto\n"; } if (_BindingListtbProducto.Where(x => x.fechaHasta.Date < Program.fechaHora.Date).Any()) { mensaje += "Costo con fecha de vigencia menor a la fecha actual\n"; } if (String.IsNullOrEmpty(mensaje.Trim())) { _BindingListtbProducto.ToList().ForEach(x => { tbCosto _tbCosto = (from C in _dbCosolemEntities.tbCosto where C.idCosto == x.idCosto select C).FirstOrDefault(); if (_tbCosto == null) { _tbCosto = new tbCosto(); _tbCosto.idEmpresa = idEmpresa; _tbCosto.idProducto = x.idProducto; _tbCosto.costo = x.costo; _tbCosto.fechaDesde = Program.fechaHora.Date; _tbCosto.fechaHasta = x.fechaHasta.Date; _tbCosto.estadoRegistro = true; _tbCosto.fechaHoraIngreso = Program.fechaHora; _tbCosto.idUsuarioIngreso = idUsuario; _tbCosto.terminalIngreso = Program.terminal; _dbCosolemEntities.tbCosto.AddObject(_tbCosto); } else { _tbCosto.costo = x.costo; _tbCosto.fechaHoraUltimaModificacion = Program.fechaHora; _tbCosto.idUsuarioUltimaModificacion = idUsuario; _tbCosto.terminalUltimaModificacion = Program.terminal; } if (x.indiceComercial > 0 && x.indiceFinanciero > 0 && x.indiceInformativo > 0 && x.costo > 0) { tbProcesarPrecio _tbProcesarPrecio = (from PP in _dbCosolemEntities.tbProcesarPrecio where PP.idProcesarPrecio == x.idProcesarPrecio select PP).FirstOrDefault(); if (_tbProcesarPrecio == null) { _tbProcesarPrecio = new tbProcesarPrecio(); _tbProcesarPrecio.idEmpresa = idEmpresa; _tbProcesarPrecio.idProducto = x.idProducto; _tbProcesarPrecio.procesarPrecio = true; _tbProcesarPrecio.estadoRegistro = true; _tbProcesarPrecio.fechaHoraIngreso = Program.fechaHora; _tbProcesarPrecio.idUsuarioIngreso = idUsuario; _tbProcesarPrecio.terminalIngreso = Program.terminal; _dbCosolemEntities.tbProcesarPrecio.AddObject(_tbProcesarPrecio); } else { _tbProcesarPrecio.fechaHoraUltimaModificacion = Program.fechaHora; _tbProcesarPrecio.idUsuarioUltimaModificacion = idUsuario; _tbProcesarPrecio.terminalUltimaModificacion = Program.terminal; } } }); _dbCosolemEntities.SaveChanges(); MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information); frmCostos_Load(null, null); } else { MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning); } } catch (Exception ex) { Util.MostrarException(this.Text, ex); } }
private void tsbGrabar_Click(object sender, EventArgs e) { try { dgvInventario_CellEndEdit(null, null); string mensaje = String.Empty; long idEmpresa = ((Empresa)cmbEmpresa.SelectedItem).idEmpresa; long idTienda = ((Tienda)cmbTienda.SelectedItem).idTienda; long idBodega = ((Bodega)cmbBodega.SelectedItem).idBodega; if (idEmpresa == 0) { mensaje += "Seleccione empresa\n"; } if (idTienda == 0) { mensaje += "Seleccione tienda\n"; } if (idBodega == 0) { mensaje += "Seleccione bodega\n"; } if (idBodega > 0 && _BindingListtbInventario.Where(x => x.idBodega != idBodega).Count() > 0) { mensaje += "Favor verifique los parámetros seleccionados son distintos a los agregados en el inventario\n"; } if (_BindingListtbInventario.Where(x => x.cantidad == 0).Count() > 0) { mensaje += "Ingrese cantidad\n"; } _BindingListtbInventario.ToList().ForEach(x => { tbCosto _tbCosto = edmCosolemFunctions.getCosto(idEmpresa, x.idProducto); if (_tbCosto == null || _tbCosto.costo == 0) { mensaje += "Producto " + x.descripcionProducto + " no tiene costo\n"; } }); if (String.IsNullOrEmpty(mensaje.Trim())) { _BindingListtbInventario.ToList().ForEach(x => { tbTransaccionInventario _tbTransaccionInventario = new tbTransaccionInventario(); _tbTransaccionInventario.tipoTransaccion = "Ingreso de inventario"; _tbTransaccionInventario.idBodega = idBodega; _tbTransaccionInventario.idProducto = x.idProducto; _tbTransaccionInventario.cantidad = x.cantidad; _tbTransaccionInventario.estadoRegistro = true; _tbTransaccionInventario.fechaHoraIngreso = Program.fechaHora; _tbTransaccionInventario.idUsuarioIngreso = idUsuario; _tbTransaccionInventario.terminalIngreso = Program.terminal; _dbCosolemEntities.tbTransaccionInventario.AddObject(_tbTransaccionInventario); tbInventario _tbInventario = (from I in _dbCosolemEntities.tbInventario where I.idBodega == _tbTransaccionInventario.idBodega && I.idProducto == _tbTransaccionInventario.idProducto && I.estadoRegistro select I).FirstOrDefault(); if (_tbInventario == null) { _tbInventario = new tbInventario(); _tbInventario.idBodega = idBodega; _tbInventario.idProducto = x.idProducto; _tbInventario.fisicoDisponible = x.cantidad; _tbInventario.reservado = 0; _tbInventario.estadoRegistro = true; _tbInventario.fechaHoraIngreso = Program.fechaHora; _tbInventario.idUsuarioIngreso = idUsuario; _tbInventario.terminalIngreso = Program.terminal; _dbCosolemEntities.tbInventario.AddObject(_tbInventario); } else { _tbInventario.fisicoDisponible = _tbInventario.fisicoDisponible + _tbTransaccionInventario.cantidad; _tbInventario.fechaHoraUltimaModificacion = Program.fechaHora; _tbInventario.idUsuarioUltimaModificacion = idUsuario; _tbInventario.terminalUltimaModificacion = Program.terminal; } }); _dbCosolemEntities.SaveChanges(); MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information); new frmReporteIngresoInventario(_BindingListtbInventario.ToList()).ShowDialog(); frmIngresoInventario_Load(null, null); } else { MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning); } } catch (Exception ex) { Util.MostrarException(this.Text, ex); } }