コード例 #1
0
        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);
        }
コード例 #2
0
        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);
            });
        }
コード例 #3
0
        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);
            }
        }
コード例 #4
0
        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);
            }
        }
コード例 #5
0
        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);
            }
        }