示例#1
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            if (String.IsNullOrEmpty(txtDescripcion.Text.Trim()))
            {
                MessageBox.Show("Ingrese descripción", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                _tbMarca.descripcion = txtDescripcion.Text.Trim();
                if (_tbMarca.EntityState == EntityState.Detached)
                {
                    _tbMarca.fechaHoraIngreso = Program.fechaHora;
                    _tbMarca.idUsuarioIngreso = idUsuario;
                    _tbMarca.terminalIngreso  = Program.terminal;
                    _dbCosolemEntities.tbMarca.AddObject(_tbMarca);
                }
                else
                {
                    _tbMarca.fechaHoraUltimaModificacion = Program.fechaHora;
                    _tbMarca.idUsuarioUltimaModificacion = idUsuario;
                    _tbMarca.terminalUltimaModificacion  = Program.terminal;
                }
                _dbCosolemEntities.SaveChanges();

                MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                frmMarca_Load(null, null);
            }
        }
示例#2
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                dgvCargos_CellEndEdit(null, null);

                string mensaje = String.Empty;
                if (((Empresa)cmbEmpresa.SelectedItem).idEmpresa == 0)
                {
                    mensaje += "Seleccione empresa\n";
                }
                if (String.IsNullOrEmpty(txtDescripcion.Text.Trim()))
                {
                    mensaje += "Ingrese descripción\n";
                }
                mensaje += VerificaCargo();

                if (String.IsNullOrEmpty(mensaje.Trim()))
                {
                    _tbDepartamento.idEmpresa   = ((Empresa)cmbEmpresa.SelectedItem).idEmpresa;
                    _tbDepartamento.descripcion = txtDescripcion.Text.Trim();
                    _BindingListtbCargo.ToList().ForEach(x => { if (x.idCargo == 0)
                                                                {
                                                                    _tbDepartamento.tbCargo.Add(x);
                                                                }
                                                         });
                    if (_tbDepartamento.EntityState == EntityState.Detached)
                    {
                        _tbDepartamento.fechaHoraIngreso = Program.fechaHora;
                        _tbDepartamento.idUsuarioIngreso = idUsuario;
                        _tbDepartamento.terminalIngreso  = Program.terminal;
                        _dbCosolemEntities.tbDepartamento.AddObject(_tbDepartamento);
                    }
                    else
                    {
                        _tbDepartamento.fechaHoraUltimaModificacion = Program.fechaHora;
                        _tbDepartamento.idUsuarioUltimaModificacion = idUsuario;
                        _tbDepartamento.terminalUltimaModificacion  = Program.terminal;
                    }
                    _dbCosolemEntities.SaveChanges();

                    MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    frmDepartamento_Load(null, null);
                }
                else
                {
                    MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                Util.MostrarException(this.Text, ex);
            }
        }
示例#3
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                dgvBodegas_CellEndEdit(null, null);

                string mensaje   = String.Empty;
                Tienda _tbTienda = (Tienda)cmbTienda.SelectedItem;
                if (((Empresa)cmbEmpresa.SelectedItem).idEmpresa == 0)
                {
                    mensaje += "Seleccione empresa\n";
                }
                if (_tbTienda.idTienda == 0)
                {
                    mensaje += "Seleccione tienda\n";
                }
                if (_BindingListtbBodega.Count == 0)
                {
                    mensaje += "Ingrese al menos 1 bodega\n";
                }
                if (_BindingListtbBodega.Where(x => String.IsNullOrEmpty(x.descripcion.Trim())).Count() > 0)
                {
                    mensaje += "Ingrese descripción de bodega\n";
                }

                if (String.IsNullOrEmpty(mensaje.Trim()))
                {
                    _BindingListtbBodega.ToList().ForEach(x =>
                    {
                        x.idTienda = _tbTienda.idTienda.Value;
                        if (x.EntityState == EntityState.Detached)
                        {
                            x.fechaHoraIngreso = Program.fechaHora;
                            x.idUsuarioIngreso = idUsuario;
                            x.terminalIngreso  = Program.terminal;
                            _dbCosolemEntities.tbBodega.AddObject(x);
                        }
                    });
                    _dbCosolemEntities.SaveChanges();

                    MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    frmBodegas_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)
        {
            dgvOrdenPedidoDetalle_CellEndEdit(null, null);

            string mensaje = String.Empty;

            if (String.IsNullOrEmpty(txtSolicita.Text.Trim()))
            {
                mensaje += "No hay datos de quien solicita la orden de pedido";
            }
            if (String.IsNullOrEmpty(txtMotivo.Text.Trim()))
            {
                mensaje += "Ingrese un motivo";
            }
            if (ordenPedidoDetalle.Where(x => x.estadoRegistro).Count() == 0)
            {
                mensaje += "Ingrese al menos 1 producto\n";
            }

            if (String.IsNullOrEmpty(mensaje.Trim()))
            {
                ordenPedido.motivo = txtMotivo.Text.Trim();
                ordenPedidoDetalle.Where(x => x.idOrdenPedidoDetalle == 0).ToList().ForEach(y =>
                {
                    y.fechaHoraIngreso = Program.fechaHora;
                    y.idUsuarioIngreso = idUsuario;
                    y.terminalIngreso  = Program.terminal;
                    ordenPedido.tbOrdenPedidoDetalle.Add(y);
                });

                if (ordenPedido.EntityState == EntityState.Detached)
                {
                    ordenPedido.fechaHoraIngreso = Program.fechaHora;
                    ordenPedido.idUsuarioIngreso = idUsuario;
                    ordenPedido.terminalIngreso  = Program.terminal;
                    _dbCosolemEntities.tbOrdenPedidoCabecera.AddObject(ordenPedido);
                }
                else
                {
                    ordenPedido.fechaHoraUltimaModificacion = Program.fechaHora;
                    ordenPedido.idUsuarioUltimaModificacion = idUsuario;
                    ordenPedido.terminalUltimaModificacion  = Program.terminal;
                }

                _dbCosolemEntities.SaveChanges();
                MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                frmOrdenPedido_Load(null, null);
            }
            else
            {
                MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
示例#5
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            string mensaje = String.Empty;

            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 (String.IsNullOrEmpty(txtDescripcion.Text.Trim()))
            {
                mensaje += "Ingrese descripción\n";
            }

            if (String.IsNullOrEmpty(mensaje))
            {
                _tbModelo.idSubGrupo  = ((SubGrupo)cmbSubGrupo.SelectedItem).idSubGrupo;
                _tbModelo.descripcion = txtDescripcion.Text.Trim();
                if (_tbModelo.EntityState == EntityState.Detached)
                {
                    _tbModelo.fechaHoraIngreso = Program.fechaHora;
                    _tbModelo.idUsuarioIngreso = idUsuario;
                    _tbModelo.terminalIngreso  = Program.terminal;
                    _dbCosolemEntities.tbModelo.AddObject(_tbModelo);
                }
                else
                {
                    _tbModelo.fechaHoraUltimaModificacion = Program.fechaHora;
                    _tbModelo.idUsuarioUltimaModificacion = idUsuario;
                    _tbModelo.terminalUltimaModificacion  = Program.terminal;
                }
                _dbCosolemEntities.SaveChanges();

                MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                frmModelo_Load(null, null);
            }
            else
            {
                MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
示例#6
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            tbEstadoSeguimientoCotizacion estadoSeguimientoCotizacion = (tbEstadoSeguimientoCotizacion)cmbEstadoSeguimientoCotizacion.SelectedItem;

            if (estadoSeguimientoCotizacion.exigeComentario && String.IsNullOrEmpty(txtComentarioSeguimiento.Text.Trim()))
            {
                MessageBox.Show("Ingrese comentario", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (estadoSeguimientoCotizacion.exigeFechaProximoSeguimiento && dtpFechaProximoSeguimiento.Value.Date <= Program.fechaHora.Date)
            {
                MessageBox.Show("Fecha próximo seguimiento tiene que se mayor a la fecha de hoy", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                _tbSeguimientoCotizacionCabecera.idEstadoSeguimientoCotizacion = estadoSeguimientoCotizacion.idEstadoSeguimientoCotizacion;
                _tbSeguimientoCotizacionCabecera.fechaHoraUltimaModificacion   = Program.fechaHora;
                _tbSeguimientoCotizacionCabecera.idUsuarioUltimaModificacion   = idUsuario;
                _tbSeguimientoCotizacionCabecera.terminalUltimaModificacion    = Program.terminal;

                DateTime?fechaProximoSeguimiento = null;
                if (estadoSeguimientoCotizacion.exigeFechaProximoSeguimiento)
                {
                    fechaProximoSeguimiento = dtpFechaProximoSeguimiento.Value.Date;
                }

                _tbSeguimientoCotizacionCabecera.tbSeguimientoCotizacionDetalle.Add(new tbSeguimientoCotizacionDetalle {
                    comentarioSeguimiento = txtComentarioSeguimiento.Text.Trim(), fechaProximoSeguimiento = fechaProximoSeguimiento, estadoRegistro = true, fechaHoraIngreso = Program.fechaHora, idUsuarioIngreso = idUsuario, terminalIngreso = Program.terminal
                });
                _dbCosolemEntities.SaveChanges();

                MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                this.DialogResult = System.Windows.Forms.DialogResult.OK;
            }
        }
示例#7
0
 public string IniciarSesion(string nombreUsuario, string contrasena)
 {
     using (dbCosolemEntities _dbCosolemEntities = new dbCosolemEntities())
     {
         long      idUsuario = 0;
         tbUsuario usuario   = _dbCosolemEntities.tbUsuario.Where(x => x.nombreUsuario == nombreUsuario).FirstOrDefault();
         if (usuario != null)
         {
             idUsuario = usuario.idUsuario;
         }
         contrasena = Util.EncriptaValor(contrasena, idUsuario.ToString());
         usuario    = _dbCosolemEntities.tbUsuario.Include("tbEmpleado.tbPersona").Include("tbEmpleado.tbEmpresa").Include("tbEmpleado.tbTienda").Include("tbUsuarioOpcion.tbOpcion.tbModulo").Where(x => x.nombreUsuario == nombreUsuario && x.contrasena == contrasena).FirstOrDefault();
         if (usuario != null)
         {
             if (!usuario.fechaHoraPrimerAcceso.HasValue && usuario.terminalPrimerAcceso == null)
             {
                 usuario.fechaHoraPrimerAcceso = edmCosolemFunctions.getFechaHora();
                 usuario.terminalPrimerAcceso  = terminal;
             }
             _dbCosolemEntities.SaveChanges();
             _dbCosolemEntities.Dispose();
             return("Ok");
         }
         else
         {
             return("Usuario y/o contraseña incorrectos, favor verificar");
         }
     }
 }
示例#8
0
        private void tsbEliminar_Click(object sender, EventArgs e)
        {
            dgvAgendamientos_CellEndEdit(null, null);
            List <tbOrdenTrabajo> ordenesTrabajo = ((SortableBindingList <tbOrdenTrabajo>)dgvAgendamientos.DataSource).ToList();

            if (ordenesTrabajo.Where(x => new List <int> {
                2, 3
            }.Contains(x.idEstadoOrdenTrabajo) && x.seleccionado).Count() > 0)
            {
                MessageBox.Show("Entre los registros seleccionados hay agendamientos en curso y/o finalizados y estos no puden ser eliminados", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (ordenesTrabajo.Where(x => x.seleccionado).Count() == 0)
            {
                MessageBox.Show("Seleccione un registro para poder eliminarlo", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                if (MessageBox.Show("¿Seguro desea anular las ordenes de trabajo seleccionadas?", this.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
                {
                    ordenesTrabajo.Where(x => x.idEstadoOrdenTrabajo == 1).ToList().ForEach(y =>
                    {
                        y.idEstadoOrdenTrabajo = 4;
                        y.fechaHoraEliminacion = Program.fechaHora;
                        y.idUsuarioEliminacion = idUsuario;
                        y.terminalEliminacion  = Program.terminal;
                    });
                    _dbCosolemEntities.SaveChanges();
                    MessageBox.Show("Ordenes de venta anuladas satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    tsbBuscar_Click(null, null);
                }
            }
        }
示例#9
0
        private void btnIniciarSesion_Click(object sender, EventArgs e)
        {
            Program.tbUsuario = null;

            string mensaje = String.Empty;

            if (String.IsNullOrEmpty(txtNombreUsuario.Text.Trim()))
            {
                mensaje += "Ingrese nombre de usuario\n";
            }
            if (String.IsNullOrEmpty(txtContrasena.Text.Trim()))
            {
                mensaje += "Ingrese contraseña\n";
            }
            if (idUsuario == 0)
            {
                mensaje += "Usuario no existe\n";
            }

            if (String.IsNullOrEmpty(mensaje.Trim()))
            {
                string            nombreUsuario      = txtNombreUsuario.Text.Trim();
                string            contrasena         = Util.EncriptaValor(txtContrasena.Text.Trim(), idUsuario.ToString());
                dbCosolemEntities _dbCosolemEntities = new dbCosolemEntities();
                Program.tbUsuario = _dbCosolemEntities.tbUsuario.Include("tbEmpleado.tbPersona").Include("tbEmpleado.tbEmpresa").Include("tbEmpleado.tbTienda").Include("tbUsuarioOpcion.tbOpcion.tbModulo").Where(x => x.nombreUsuario == nombreUsuario && x.contrasena == contrasena).FirstOrDefault();

                if (Program.tbUsuario != null)
                {
                    if (Program.tbUsuario.estadoRegistro)
                    {
                        if (!Program.tbUsuario.fechaHoraPrimerAcceso.HasValue && Program.tbUsuario.terminalPrimerAcceso == null)
                        {
                            Program.tbUsuario.fechaHoraPrimerAcceso = Program.fechaHora;
                            Program.tbUsuario.terminalPrimerAcceso  = Program.terminal;
                        }
                        _dbCosolemEntities.SaveChanges();
                        _dbCosolemEntities.Dispose();
                        this.Close();
                        new frmPrincipal().Show();
                    }
                    else
                    {
                        MessageBox.Show("Usuario inactivo favor indicar al administrador del sistema", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                }
                else
                {
                    MessageBox.Show("Usuario y/o contraseña incorrectos, favor verificar", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            else
            {
                MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
示例#10
0
        private void tsbEliminar_Click(object sender, EventArgs e)
        {
            dgvOrdenVentaCabecera_CellEndEdit(null, null);
            List <tbOrdenVentaCabecera> ordenesVenta = ((BindingList <tbOrdenVentaCabecera>)dgvOrdenVentaCabecera.DataSource).ToList();

            if (ordenesVenta.Where(x => x.seleccionado).Count() == 0)
            {
                MessageBox.Show("Seleccione un registro para poder eliminarlo", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                if (MessageBox.Show("¿Seguro desea anular las facturas seleccionadas?", this.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
                {
                    ordenesVenta.Where(x => x.seleccionado).ToList().ForEach(x =>
                    {
                        long numeroFactura = x.numeroFactura.Value;

                        x.idEstadoOrdenVenta   = 6;
                        x.fechaHoraEliminacion = Program.fechaHora;
                        x.idUsuarioEliminacion = idUsuario;
                        x.terminalEliminacion  = Program.terminal;

                        x.tbOrdenVentaDetalle.Where(y => y.estadoRegistro).ToList().ForEach(z =>
                        {
                            long idProducto = z.idProducto;
                            if (edmCosolemFunctions.isProductoInventariable(idProducto))
                            {
                                long idBodega = z.idBodega.Value;
                                int cantidad  = z.cantidad;

                                tbInventario _tbInventario                = (from I in _dbCosolemEntities.tbInventario where I.idBodega == idBodega && I.idProducto == idProducto && I.estadoRegistro select I).FirstOrDefault();
                                _tbInventario.fisicoDisponible           += cantidad;
                                _tbInventario.fechaHoraUltimaModificacion = Program.fechaHora;
                                _tbInventario.idUsuarioUltimaModificacion = idUsuario;
                                _tbInventario.terminalUltimaModificacion  = Program.terminal;

                                tbTransaccionInventario _tbTransaccionInventario = new tbTransaccionInventario();
                                _tbTransaccionInventario.tipoTransaccion         = "Ingreso de inventario por anulación de factura " + Util.setFormatoNumeroFactura(idEmpresa, idTienda, numeroFactura);
                                _tbTransaccionInventario.idBodega         = idBodega;
                                _tbTransaccionInventario.idProducto       = idProducto;
                                _tbTransaccionInventario.cantidad         = cantidad;
                                _tbTransaccionInventario.estadoRegistro   = true;
                                _tbTransaccionInventario.fechaHoraIngreso = Program.fechaHora;
                                _tbTransaccionInventario.idUsuarioIngreso = idUsuario;
                                _tbTransaccionInventario.terminalIngreso  = Program.terminal;
                                _dbCosolemEntities.tbTransaccionInventario.AddObject(_tbTransaccionInventario);
                            }
                        });
                    });
                    _dbCosolemEntities.SaveChanges();
                    MessageBox.Show("Facturas anuladas satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    tsbBuscar_Click(null, null);
                }
            }
        }
示例#11
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            string mensaje = String.Empty;

            Usuario tbUsuario = (Usuario)cmbUsuario.SelectedItem;

            if (tbUsuario.idUsuario == 0)
            {
                mensaje += "Seleccione usuario\n";
            }

            if (String.IsNullOrEmpty(mensaje.Trim()))
            {
                foreach (ListViewItem listViewItem in lvwOpciones.Items)
                {
                    long            idUsuario        = tbUsuario.idUsuario;
                    int             idOpcion         = (int)listViewItem.Tag;
                    tbUsuarioOpcion _tbUsuarioOpcion = (from UO in _dbCosolemEntities.tbUsuarioOpcion where UO.idUsuario == idUsuario && UO.idOpcion == idOpcion select UO).FirstOrDefault();
                    if (_tbUsuarioOpcion == null)
                    {
                        _tbUsuarioOpcion                  = new tbUsuarioOpcion();
                        _tbUsuarioOpcion.idUsuario        = idUsuario;
                        _tbUsuarioOpcion.idOpcion         = idOpcion;
                        _tbUsuarioOpcion.fechaHoraIngreso = Program.fechaHora;
                        _tbUsuarioOpcion.idUsuarioIngreso = idUsuario;
                        _tbUsuarioOpcion.terminalIngreso  = Program.terminal;
                        _dbCosolemEntities.tbUsuarioOpcion.AddObject(_tbUsuarioOpcion);
                    }
                    else
                    {
                        _tbUsuarioOpcion.fechaHoraUltimaModificacion = Program.fechaHora;
                        _tbUsuarioOpcion.idUsuarioUltimaModificacion = idUsuario;
                        _tbUsuarioOpcion.terminalUltimaModificacion  = Program.terminal;
                    }
                    _tbUsuarioOpcion.tieneAcceso    = listViewItem.Checked;
                    _tbUsuarioOpcion.estadoRegistro = true;
                }
                _dbCosolemEntities.SaveChanges();

                MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                frmNivelesAcceso_Load(null, null);
            }
            else
            {
                MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
示例#12
0
        private void GeneracionCotizacion(string tipoGeneracion, string directorioArchivo = null, string nombreArchivo = null, string formatoArchivo = null, string extensionArchivo = null, string impresora = null, int?dePagina = null, int?hastaPagina = null, int?cantidadCopias = null)
        {
            tbGeneracionCotizacion _tbGeneracionCotizacion = new tbGeneracionCotizacion();

            _tbGeneracionCotizacion.empresa                       = empresa;
            _tbGeneracionCotizacion.tienda                        = tienda;
            _tbGeneracionCotizacion.empleado                      = empleado;
            _tbGeneracionCotizacion.usuario                       = usuario;
            _tbGeneracionCotizacion.idOrdenVentaCabecera          = idCotizacion;
            _tbGeneracionCotizacion.tipoGeneracion                = tipoGeneracion;
            _tbGeneracionCotizacion.directorioArchivo             = directorioArchivo;
            _tbGeneracionCotizacion.nombreArchivo                 = nombreArchivo;
            _tbGeneracionCotizacion.formatoArchivo                = formatoArchivo;
            _tbGeneracionCotizacion.extensionArchivo              = extensionArchivo;
            _tbGeneracionCotizacion.impresora                     = impresora;
            _tbGeneracionCotizacion.dePagina                      = dePagina;
            _tbGeneracionCotizacion.hastaPagina                   = hastaPagina;
            _tbGeneracionCotizacion.cantidadCopias                = cantidadCopias;
            _tbGeneracionCotizacion.fechaHoraGeneracionCotizacion = Program.fechaHora;
            _tbGeneracionCotizacion.terminalGeneracionCotizacion  = Program.terminal;
            _dbCosolemEntities.tbGeneracionCotizacion.AddObject(_tbGeneracionCotizacion);
            _dbCosolemEntities.SaveChanges();
        }
示例#13
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                long idEmpresa        = ((Empresa)cmbEmpresa.SelectedItem).idEmpresa;
                int  idFrecuenciaPago = ((tbFrecuenciaPago)cmbFrecuenciaPago.SelectedItem).idFrecuenciaPago;
                int  plazos           = 0;
                int.TryParse(txtPlazo.Text.Trim(), out plazos);
                int mesesGracia = 0;
                int.TryParse(txtMesesGracia.Text.Trim(), out mesesGracia);
                txtMesesGracia.Text = mesesGracia.ToString();
                int cuotasGratis = 0;
                int.TryParse(txtCuotasGratis.Text.Trim(), out cuotasGratis);
                txtCuotasGratis.Text = cuotasGratis.ToString();
                decimal porcentajeCuotaInicialExigible = 0;
                decimal.TryParse(txtPorcentajeCuotaInicialExigible.Text.Trim(), out porcentajeCuotaInicialExigible);
                txtPorcentajeCuotaInicialExigible.Text = porcentajeCuotaInicialExigible.ToString();

                int maximoPlazo          = (_BindingListtbProductoFinancieroDetalle.Count > 0 ? _BindingListtbProductoFinancieroDetalle.Max(x => x.plazo) : 0);
                int cantidadMesesGracia  = (_BindingListtbProductoFinancieroDetalle.Count > 0 ? _BindingListtbProductoFinancieroDetalle.Count(x => x.aplicaMesGracia) : 0);
                int cantidadCuotasGratis = (_BindingListtbProductoFinancieroDetalle.Count > 0 ? _BindingListtbProductoFinancieroDetalle.Count(x => x.aplicaCuotaGratis) : 0);

                string mensaje = String.Empty;

                if (idEmpresa == 0)
                {
                    mensaje += "Seleccione empresa\n";
                }
                if (String.IsNullOrEmpty(txtDescripcion.Text.Trim()))
                {
                    mensaje += "Ingrese descripción\n";
                }
                if (this._tbProductoFinancieroCabecera.idProductoFinancieroCabecera == 0 && dtpFechaDesde.Value.Date < Program.fechaHora.Date)
                {
                    mensaje += "Fecha desde tiene que se mayor o igual al día de hoy\n";
                }
                if (dtpFechaDesde.Value.Date > dtpFechaHasta.Value.Date)
                {
                    mensaje += "Fecha desde no puede ser mayor a la fecha hasta\n";
                }
                if (idFrecuenciaPago == 0)
                {
                    mensaje += "Seleccione frecuencia de pago\n";
                }
                if (plazos == 0)
                {
                    mensaje += "Ingrese plazo\n";
                }
                if (plazos > 0 && plazos == mesesGracia)
                {
                    mensaje += "Meses de gracia no pueden ser igual al plazo\n";
                }
                if (plazos > 0 && plazos == cuotasGratis)
                {
                    mensaje += "Cuotas gratis no pueden ser igual al plazo\n";
                }
                if (mesesGracia > 0 && cuotasGratis > 0 && mesesGracia == cuotasGratis)
                {
                    mensaje += "Meses de gracia no pueden ser igual a las cuotas gratis\n";
                }
                if (plazos != maximoPlazo)
                {
                    mensaje += "Favor volver a generar detalle producto financiero ya que el plazo especificado es distinto\n";
                }
                if (mesesGracia != cantidadMesesGracia)
                {
                    mensaje += "Favor volver a generar detalle producto financiero ya que los meses de gracia especificados son distintos\n";
                }
                if (cuotasGratis != cantidadCuotasGratis)
                {
                    mensaje += "Favor volver a generar detalle producto financiero ya que las cuotas gratis especificadas son distintas\n";
                }

                if (String.IsNullOrEmpty(mensaje.Trim()))
                {
                    tbProductoFinancieroCabecera _tbProductoFinancieroCabecera = new tbProductoFinancieroCabecera
                    {
                        idEmpresa        = idEmpresa,
                        descripcion      = txtDescripcion.Text.Trim(),
                        fechaDesde       = dtpFechaDesde.Value.Date,
                        fechaHasta       = dtpFechaHasta.Value.Date,
                        idFrecuenciaPago = idFrecuenciaPago,
                        plazo            = plazos,
                        mesesGracia      = mesesGracia,
                        cuotasGratis     = cuotasGratis,
                        porcentajeCuotaInicialExigible = porcentajeCuotaInicialExigible,
                        estadoRegistro = true
                    };
                    this._tbProductoFinancieroCabecera.idEmpresa        = _tbProductoFinancieroCabecera.idEmpresa;
                    this._tbProductoFinancieroCabecera.descripcion      = _tbProductoFinancieroCabecera.descripcion;
                    this._tbProductoFinancieroCabecera.fechaDesde       = _tbProductoFinancieroCabecera.fechaDesde;
                    this._tbProductoFinancieroCabecera.fechaHasta       = _tbProductoFinancieroCabecera.fechaHasta;
                    this._tbProductoFinancieroCabecera.idFrecuenciaPago = _tbProductoFinancieroCabecera.idFrecuenciaPago;
                    this._tbProductoFinancieroCabecera.plazo            = _tbProductoFinancieroCabecera.plazo;
                    this._tbProductoFinancieroCabecera.mesesGracia      = _tbProductoFinancieroCabecera.mesesGracia;
                    this._tbProductoFinancieroCabecera.cuotasGratis     = _tbProductoFinancieroCabecera.cuotasGratis;
                    this._tbProductoFinancieroCabecera.porcentajeCuotaInicialExigible = _tbProductoFinancieroCabecera.porcentajeCuotaInicialExigible;
                    this._tbProductoFinancieroCabecera.estadoRegistro = _tbProductoFinancieroCabecera.estadoRegistro;
                    if (this._tbProductoFinancieroCabecera.idProductoFinancieroCabecera == 0)
                    {
                        this._tbProductoFinancieroCabecera.fechaHoraIngreso = Program.fechaHora;
                        this._tbProductoFinancieroCabecera.idUsuarioIngreso = idUsuario;
                        this._tbProductoFinancieroCabecera.terminalIngreso  = Program.terminal;
                    }
                    else
                    {
                        if (_BindingListtbProductoFinancieroDetalle.Where(x => x.idProductoFinancieroDetalle == 0).Count() > 0)
                        {
                            _dbCosolemEntities.tbProductoFinancieroCabecera.Where(x => x.idProductoFinancieroCabecera == this._tbProductoFinancieroCabecera.idProductoFinancieroCabecera).FirstOrDefault().tbProductoFinancieroDetalle.ToList().ForEach(y => _dbCosolemEntities.tbProductoFinancieroDetalle.DeleteObject(y));
                        }
                        this._tbProductoFinancieroCabecera.fechaHoraUltimaModificacion = Program.fechaHora;
                        this._tbProductoFinancieroCabecera.idUsuarioUltimaModificacion = idUsuario;
                        this._tbProductoFinancieroCabecera.terminalUltimaModificacion  = Program.terminal;
                    }
                    _BindingListtbProductoFinancieroDetalle.Where(x => x.idProductoFinancieroDetalle == 0).ToList().ForEach(x => this._tbProductoFinancieroCabecera.tbProductoFinancieroDetalle.Add(x));
                    if (this._tbProductoFinancieroCabecera.idProductoFinancieroCabecera == 0)
                    {
                        _dbCosolemEntities.tbProductoFinancieroCabecera.AddObject(this._tbProductoFinancieroCabecera);
                    }
                    _dbCosolemEntities.SaveChanges();

                    MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    frmProductoFinanciero_Load(null, null);
                }
                else
                {
                    MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                Util.MostrarException(this.Text, ex);
            }
        }
示例#14
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            List <tbOrdenVentaDetalle> ordenVentaDetalle = new List <tbOrdenVentaDetalle>();

            if (ordenVenta != null)
            {
                ordenVentaDetalle = ordenVenta.tbOrdenVentaDetalle.Where(x => x.estadoRegistro && x.tbProducto.tbTipoProducto.esInventariable).ToList();
            }

            if (ordenVenta == null)
            {
                MessageBox.Show("Seleccione una factura para poder realizar la devolución", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (ordenVentaDetalle.Where(x => x.idBodegaEntrada != 0).Count() < ordenVentaDetalle.Count)
            {
                MessageBox.Show("Seleccione una bodega en los productos que va a devolver", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (String.IsNullOrEmpty(txtComentarios.Text.Trim()))
            {
                MessageBox.Show("Ingrese un comentario para poder realizar la devolución", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                long idOrdenVentaCabecera = ordenVenta.idOrdenVentaCabecera;

                ordenVenta = (from OVC in _dbCosolemEntities.tbOrdenVentaCabecera where OVC.idOrdenVentaCabecera == idOrdenVentaCabecera select OVC).FirstOrDefault();

                long idEmpresa     = ordenVenta.idEmpresaFactura.Value;
                long idTienda      = ordenVenta.idTiendaFactura.Value;
                long numeroFactura = ordenVenta.numeroFactura.Value;

                ordenVenta.idEstadoOrdenVenta   = 7;
                ordenVenta.comentarios          = txtComentarios.Text.Trim();
                ordenVenta.fechaHoraEliminacion = Program.fechaHora;
                ordenVenta.idUsuarioEliminacion = idUsuario;
                ordenVenta.terminalEliminacion  = Program.terminal;

                List <tbInventario> inventario = new List <tbInventario>();
                ordenVentaDetalle.ForEach(y =>
                {
                    long idBodega   = y.idBodegaEntrada;
                    long idProducto = y.idProducto;
                    int cantidad    = y.cantidad;

                    tbInventario _tbInventario = (from I in _dbCosolemEntities.tbInventario where I.idBodega == idBodega && I.idProducto == idProducto && I.estadoRegistro select I).FirstOrDefault();
                    if (_tbInventario == null)
                    {
                        _tbInventario                  = new tbInventario();
                        _tbInventario.idBodega         = idBodega;
                        _tbInventario.idProducto       = idProducto;
                        _tbInventario.fisicoDisponible = 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           += cantidad;
                        _tbInventario.fechaHoraUltimaModificacion = Program.fechaHora;
                        _tbInventario.idUsuarioUltimaModificacion = idUsuario;
                        _tbInventario.terminalUltimaModificacion  = Program.terminal;
                    }

                    _tbInventario.concepto            = "DEVOLUCIÓN DE FACTURA " + new String('0', 9 - numeroFactura.ToString().Trim().Length) + numeroFactura.ToString().Trim();
                    _tbInventario.fechaFactura        = ordenVenta.fechaHoraFactura.Value;
                    _tbInventario.cliente             = ordenVenta.numeroIdentificacion + " - " + ordenVenta.cliente;
                    _tbInventario.comentarios         = ordenVenta.comentarios;
                    _tbInventario.codigoProducto      = y.codigoProducto;
                    _tbInventario.descripcionProducto = y.descripcionProducto;
                    _tbInventario.cantidad            = cantidad;

                    inventario.Add(_tbInventario);

                    tbTransaccionInventario _tbTransaccionInventario = new tbTransaccionInventario();
                    _tbTransaccionInventario.tipoTransaccion         = "Ingreso de inventario por devolución de factura " + Util.setFormatoNumeroFactura(idEmpresa, idTienda, numeroFactura);
                    _tbTransaccionInventario.idBodega         = idBodega;
                    _tbTransaccionInventario.idProducto       = idProducto;
                    _tbTransaccionInventario.cantidad         = cantidad;
                    _tbTransaccionInventario.estadoRegistro   = true;
                    _tbTransaccionInventario.fechaHoraIngreso = Program.fechaHora;
                    _tbTransaccionInventario.idUsuarioIngreso = idUsuario;
                    _tbTransaccionInventario.terminalIngreso  = Program.terminal;
                    _dbCosolemEntities.tbTransaccionInventario.AddObject(_tbTransaccionInventario);
                });

                _dbCosolemEntities.SaveChanges();
                MessageBox.Show("Factura devuelta satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                if (inventario.Count > 0)
                {
                    new frmReporteIngresoInventarioConcepto(inventario).ShowDialog();
                }
                tsbNuevo_Click(null, null);
            }
        }
示例#15
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);
            }
        }
示例#16
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);
            }
        }
示例#17
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            string mensaje = String.Empty;

            if (String.IsNullOrEmpty(txtNumeroIdentificacion.Text.Trim()))
            {
                mensaje += "Ingrese número de identificación\n";
            }
            if (String.IsNullOrEmpty(txtNombres.Text.Trim()))
            {
                mensaje += "Ingrese nombres\n";
            }
            if (String.IsNullOrEmpty(txtDireccion.Text.Trim()))
            {
                mensaje += "Ingrese dirección\n";
            }
            if (String.IsNullOrEmpty(txtConvencional.Text.Trim()))
            {
                mensaje += "Ingrese convencional\n";
            }
            if (String.IsNullOrEmpty(txtCelular.Text.Trim()))
            {
                mensaje += "Ingrese celular\n";
            }
            if (String.IsNullOrEmpty(txtCorreoElectronico.Text.Trim()))
            {
                mensaje += "Ingrese correo electrónico\n";
            }
            if (!String.IsNullOrEmpty(txtCorreoElectronico.Text.Trim()))
            {
                if (!Util.ValidaEmail(txtCorreoElectronico.Text.Trim()))
                {
                    mensaje += "Correo electrónico inválido, favor verificar\n";
                }
            }

            if (String.IsNullOrEmpty(mensaje.Trim()))
            {
                _tbProveedor.idTipoPersona        = ((TipoPersona)cmbTipoPersona.SelectedItem).idTipoPersona;
                _tbProveedor.idTipoIdentificacion = ((TipoIdentificacion)cmbTipoIdentificacion.SelectedItem).idTipoIdentificacion;
                _tbProveedor.numeroIdentificacion = txtNumeroIdentificacion.Text.Trim();
                _tbProveedor.nombres           = txtNombres.Text.Trim();
                _tbProveedor.direccion         = txtDireccion.Text.Trim();
                _tbProveedor.convencional      = txtConvencional.Text.Trim();
                _tbProveedor.celular           = txtCelular.Text.Trim();
                _tbProveedor.correoElectronico = txtCorreoElectronico.Text.Trim();
                if (_tbProveedor.EntityState == EntityState.Detached)
                {
                    _tbProveedor.fechaHoraIngreso = Program.fechaHora;
                    _tbProveedor.idUsuarioIngreso = idUsuario;
                    _tbProveedor.terminalIngreso  = Program.terminal;
                    _dbCosolemEntities.tbProveedor.AddObject(_tbProveedor);
                }
                else
                {
                    _tbProveedor.fechaHoraUltimaModificacion = Program.fechaHora;
                    _tbProveedor.idUsuarioUltimaModificacion = idUsuario;
                    _tbProveedor.terminalUltimaModificacion  = Program.terminal;
                }
                _dbCosolemEntities.SaveChanges();

                MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                frmProveedores_Load(null, null);
            }
            else
            {
                MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
示例#18
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            Empresa _tbEmpresa = (Empresa)cmbEmpresa.SelectedItem;

            string mensaje = String.Empty;

            if (_tbEmpresa.idEmpresa == 0)
            {
                mensaje += "Seleccione empresa\n";
            }
            if (String.IsNullOrEmpty(txtDescripcion.Text.Trim()))
            {
                mensaje += "Ingrese descripción\n";
            }
            if (String.IsNullOrEmpty(txtDireccion.Text.Trim()))
            {
                mensaje += "Ingrese dirección\n";
            }
            if (String.IsNullOrEmpty(txtTelefono.Text.Trim()))
            {
                mensaje += "Ingrese teléfono\n";
            }
            if (String.IsNullOrEmpty(txtCorreoElectronico.Text.Trim()))
            {
                mensaje += "Ingrese correo electrónico\n";
            }
            if (!String.IsNullOrEmpty(txtCorreoElectronico.Text.Trim()))
            {
                if (!Util.ValidaEmail(txtCorreoElectronico.Text.Trim()))
                {
                    mensaje += "Correo electrónico inválido, favor verificar\n";
                }
            }
            if (String.IsNullOrEmpty(txtPorcentajeIVA.Text.Trim()))
            {
                mensaje += "Ingrese porcentaje IVA\n";
            }

            if (String.IsNullOrEmpty(mensaje.Trim()))
            {
                _tbTienda.idEmpresa         = _tbEmpresa.idEmpresa;
                _tbTienda.descripcion       = txtDescripcion.Text.Trim();
                _tbTienda.idCanton          = ((dynamic)cmbCanton.SelectedItem).idCanton;
                _tbTienda.direccion         = txtDireccion.Text.Trim();
                _tbTienda.telefono          = txtTelefono.Text.Trim();
                _tbTienda.correoElectronico = txtCorreoElectronico.Text.Trim();
                _tbTienda.porcentajeIVA     = Convert.ToDecimal(txtPorcentajeIVA.Text.Trim());
                if (_tbTienda.EntityState == EntityState.Detached)
                {
                    _tbTienda.fechaHoraIngreso = Program.fechaHora;
                    _tbTienda.idUsuarioIngreso = idUsuario;
                    _tbTienda.terminalIngreso  = Program.terminal;
                    _dbCosolemEntities.tbTienda.AddObject(_tbTienda);
                }
                else
                {
                    _tbTienda.fechaHoraUltimaModificacion = Program.fechaHora;
                    _tbTienda.idUsuarioUltimaModificacion = idUsuario;
                    _tbTienda.terminalUltimaModificacion  = Program.terminal;
                }
                _dbCosolemEntities.SaveChanges();

                MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                frmTienda_Load(null, null);
            }
            else
            {
                MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
示例#19
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            dgvOrdenVentaFormaPago_CellEndEdit(null, null);
            string mensaje = String.Empty;

            decimal total         = Decimal.Parse(txtTotal.Text.Trim(), NumberStyles.Currency, Application.CurrentCulture);
            decimal cancelado     = Decimal.Parse(txtCancelado.Text.Trim(), NumberStyles.Currency, Application.CurrentCulture);
            long    numeroFactura = 0;

            long.TryParse(txtNumeroFactura.Text.Trim(), out numeroFactura);

            if (numeroFactura == 0)
            {
                mensaje += "Favor ingrese número de factura\n";
            }
            if (numeroFactura > 0 && edmCosolemFunctions.existNumeroFactura(idEmpresa, idTienda, numeroFactura))
            {
                mensaje += "Número de factura ya existe\n";
            }
            if (cancelado < total)
            {
                mensaje += "Total de " + Util.FormatoMoneda((total - cancelado), 2) + " pendiente por cancelar\n";
            }
            if (_BindingListtbOrdenVentaFormaPago.Where(x => x.idFormaPago == 0).Count() > 0)
            {
                mensaje += "Favor seleccionar forma de pago\n";
            }
            if (_BindingListtbOrdenVentaFormaPago.Where(x => x.valor == 0).Count() > 0)
            {
                mensaje += "Favor ingrese valor\n";
            }

            if (String.IsNullOrEmpty(mensaje.Trim()))
            {
                ordenVenta.idEstadoOrdenVenta          = 5;
                ordenVenta.idEmpresaFactura            = idEmpresa;
                ordenVenta.idTiendaFactura             = idTienda;
                ordenVenta.numeroFactura               = numeroFactura;
                ordenVenta.fechaHoraFactura            = Program.fechaHora;
                ordenVenta.fechaHoraUltimaModificacion = Program.fechaHora;
                ordenVenta.idUsuarioUltimaModificacion = idUsuario;
                ordenVenta.terminalUltimaModificacion  = Program.terminal;
                ordenVenta.tbOrdenVentaDetalle.Where(x => x.estadoRegistro).ToList().ForEach(y =>
                {
                    long idProducto = y.idProducto;
                    if (edmCosolemFunctions.isProductoInventariable(idProducto))
                    {
                        long idBodega       = y.idBodega.Value;
                        int cantidad        = y.cantidad;
                        bool estadoRegistro = y.estadoRegistro;

                        tbInventario _tbInventario                = (from I in _dbCosolemEntities.tbInventario where I.idBodega == idBodega && I.idProducto == idProducto && estadoRegistro select I).FirstOrDefault();
                        _tbInventario.fisicoDisponible           -= cantidad;
                        _tbInventario.reservado                  -= cantidad;
                        _tbInventario.fechaHoraUltimaModificacion = Program.fechaHora;
                        _tbInventario.idUsuarioUltimaModificacion = idUsuario;
                        _tbInventario.terminalUltimaModificacion  = Program.terminal;

                        tbTransaccionInventario _tbTransaccionInventario = new tbTransaccionInventario();
                        _tbTransaccionInventario.tipoTransaccion         = "Egreso de inventario por factura " + Util.setFormatoNumeroFactura(idEmpresa, idTienda, numeroFactura);
                        _tbTransaccionInventario.idBodega         = idBodega;
                        _tbTransaccionInventario.idProducto       = idProducto;
                        _tbTransaccionInventario.cantidad         = -cantidad;
                        _tbTransaccionInventario.estadoRegistro   = true;
                        _tbTransaccionInventario.fechaHoraIngreso = Program.fechaHora;
                        _tbTransaccionInventario.idUsuarioIngreso = idUsuario;
                        _tbTransaccionInventario.terminalIngreso  = Program.terminal;
                        _dbCosolemEntities.tbTransaccionInventario.AddObject(_tbTransaccionInventario);
                    }
                });
                _BindingListtbOrdenVentaFormaPago.ToList().ForEach(x => ordenVenta.tbOrdenVentaFormaPago.Add(x));
                _dbCosolemEntities.SaveChanges();

                MessageBox.Show("Orden de venta facturada satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);

                Excel.Application application = new Excel.Application();
                application.Visible = false;
                Excel.Workbook  workbook  = application.Workbooks.Open(Application.StartupPath + "\\Reportes\\FORMATO FACTURA.xlsx");
                Excel.Worksheet worksheet = workbook.Worksheets["FORMATO"];

                worksheet.Cells[5, 2].value = ordenVenta.cliente;
                worksheet.Cells[6, 2].value = ordenVenta.numeroIdentificacion;
                worksheet.Cells[7, 2].value = ordenVenta.direccion;

                worksheet.Cells[5, 10].value = ordenVenta.fechaHoraFactura.Value.ToString("dd/MM/yyyy");
                worksheet.Cells[6, 10].value = String.Join(", ", new List <string> {
                    ordenVenta.convencional, ordenVenta.celular
                });

                int RowIndex = 11;
                ordenVenta.tbOrdenVentaDetalle.Where(x => x.estadoRegistro).ToList().ForEach(y =>
                {
                    decimal precio = (ordenVenta.idFormaPago == 1 ? y.precioOferta : y.precioVentaPublico);
                    if (ordenVenta.tipoVenta == "P")
                    {
                        precio = y.precio;
                    }

                    worksheet.Cells[RowIndex, 1].value  = y.cantidad;
                    worksheet.Cells[RowIndex, 3].value  = y.tbProducto.descripcion;
                    worksheet.Cells[RowIndex, 9].value  = precio;
                    worksheet.Cells[RowIndex, 11].value = precio * y.cantidad;
                    RowIndex += 1;
                });

                worksheet.Cells[22, 3].value  = ordenVenta.tbFormaPago.descripcion + (ordenVenta.idFormaPago == 1 ? "" : " - " + ordenVenta.tbProductoFinancieroCabecera.descripcion);
                worksheet.Cells[23, 11].value = ordenVenta.subTotalBruto;
                worksheet.Cells[24, 5].value  = Util.ConvertirNumeroALetras(ordenVenta.totalNeto.ToString(), true, "dólares");
                worksheet.Cells[24, 11].value = (ordenVenta.tipoVenta == "P" ? ordenVenta.descuento : 0M);
                worksheet.Cells[26, 11].value = ordenVenta.IVA;
                worksheet.Cells[27, 11].value = ordenVenta.totalNeto;

                worksheet.PrintOut(Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
                workbook.Close(false, System.Reflection.Missing.Value, System.Reflection.Missing.Value);
                application.Quit();

                System.Runtime.InteropServices.Marshal.ReleaseComObject(application);
                System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
                System.Runtime.InteropServices.Marshal.ReleaseComObject(worksheet);

                this.DialogResult = System.Windows.Forms.DialogResult.OK;
            }
            else
            {
                MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
示例#20
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                string contrasena = Program.tbUsuario.contrasena;

                string mensaje = String.Empty;
                if (String.IsNullOrEmpty(txtContrasenaActual.Text.Trim()))
                {
                    mensaje += "Ingrese contraseña actual\n";
                }
                if (String.IsNullOrEmpty(txtContrasenaNueva.Text.Trim()))
                {
                    mensaje += "Ingrese contraseña nueva\n";
                }
                if (String.IsNullOrEmpty(txtConfirmarContrasena.Text.Trim()))
                {
                    mensaje += "Ingrese confirmación de contraseña\n";
                }
                if (!String.IsNullOrEmpty(txtContrasenaActual.Text.Trim()))
                {
                    if (Util.EncriptaValor(txtContrasenaActual.Text.Trim(), idUsuario.ToString()) != contrasena)
                    {
                        mensaje += "Contraseña actual incorrecta, favor verificar\n";
                    }
                }
                if (!String.IsNullOrEmpty(txtContrasenaActual.Text.Trim()) && !String.IsNullOrEmpty(txtContrasenaNueva.Text.Trim()))
                {
                    if (Util.EncriptaValor(txtContrasenaActual.Text.Trim(), idUsuario.ToString()) == Util.EncriptaValor(txtContrasenaNueva.Text.Trim(), idUsuario.ToString()))
                    {
                        mensaje += "Contraseña nueva no puede ser igual a la actual, favor verificar\n";
                    }
                }
                if (!String.IsNullOrEmpty(txtContrasenaNueva.Text.Trim()) && !String.IsNullOrEmpty(txtConfirmarContrasena.Text.Trim()))
                {
                    if (txtContrasenaNueva.Text.Trim() != txtConfirmarContrasena.Text.Trim())
                    {
                        mensaje += "Contraseña nueva y confirmación de contraseña no coinciden\n";
                    }
                }

                if (String.IsNullOrEmpty(mensaje))
                {
                    using (dbCosolemEntities _dbCosolemEntities = new dbCosolemEntities())
                    {
                        tbUsuario usuario = (from U in _dbCosolemEntities.tbUsuario where U.idUsuario == idUsuario select U).FirstOrDefault();
                        usuario.contrasena                  = Util.EncriptaValor(txtContrasenaNueva.Text.Trim(), idUsuario.ToString());
                        usuario.cambiarContrasena           = false;
                        usuario.fechaHoraUltimaModificacion = Program.fechaHora;
                        usuario.idUsuarioUltimaModificacion = idUsuario;
                        usuario.terminalUltimaModificacion  = Program.terminal;

                        _dbCosolemEntities.SaveChanges();

                        Program.tbUsuario = usuario;
                    }
                    MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    Application.Exit();
                }
                else
                {
                    MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                Util.MostrarException(this.Text, ex);
            }
        }
示例#21
0
        private void dgvOrdenVentaCabecera_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex >= 0)
            {
                tbOrdenVentaCabecera ordenVenta = (tbOrdenVentaCabecera)dgvOrdenVentaCabecera.CurrentRow.DataBoundItem;
                long idOrdenVenta       = ordenVenta.idOrdenVentaCabecera;
                int  idEstadoOrdenVenta = ordenVenta.idEstadoOrdenVenta;
                if (!new List <int> {
                    dccSeleccionado.Index, dicComentarios.Index, dicHacerOrdenVenta.Index, dicFacturar.Index, dicImprimir.Index
                }.Contains(e.ColumnIndex))
                {
                    dgvOrdenVentaDetalle.DataSource = new List <tbOrdenVentaDetalle>((ordenVenta).tbOrdenVentaDetalle).Where(x => x.estadoRegistro).Select(y => new
                    {
                        producto = y.tbProducto.codigoProducto + " - " + y.tbProducto.descripcion,
                        bodega   = (y.idBodega.HasValue ? y.tbBodega.tbTienda.descripcion + " - " + y.tbBodega.descripcion : String.Empty),
                        precio   = (ordenVenta.tipoVenta == "N" ? y.precioInformativo : y.costo),
                        cantidad = y.cantidad,
                        total    = y.subTotal
                    }).ToList();
                }
                if (e.ColumnIndex == dicComentarios.Index)
                {
                    frmSeguimientoCotizacion _frmSeguimientoCotizacion = new frmSeguimientoCotizacion(idOrdenVenta, idEstadoOrdenVenta);
                    _frmSeguimientoCotizacion.Text = "Seguimiento de cotización " + " " + idOrdenVenta.ToString();
                    if (_frmSeguimientoCotizacion.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        tsbBuscar_Click(null, null);
                    }
                }
                if (e.ColumnIndex == dicHacerOrdenVenta.Index)
                {
                    if (idEstadoOrdenVenta == 3)
                    {
                        MessageBox.Show("Cotización ya no se puede volver a convertirse en orden de venta", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                    {
                        frmOrdenVenta _frmOrdenVenta = new frmOrdenVenta("O", tipoVenta, "1");
                        _frmOrdenVenta.Text         = (tipoVenta == "N" ? "Orden de venta" : "Orden de venta outsoursing");
                        _frmOrdenVenta.idOrdenVenta = idOrdenVenta;
                        if (_frmOrdenVenta.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                        {
                            ordenVenta = (from OV in _dbCosolemEntities.tbOrdenVentaCabecera where OV.idOrdenVentaCabecera == idOrdenVenta select OV).FirstOrDefault();
                            ordenVenta.idEstadoOrdenVenta          = 3;
                            ordenVenta.fechaHoraUltimaModificacion = Program.fechaHora;
                            ordenVenta.idUsuarioUltimaModificacion = idUsuario;
                            ordenVenta.terminalUltimaModificacion  = Program.terminal;

                            tbSeguimientoCotizacionCabecera seguimientoCotizacion = ordenVenta.tbSeguimientoCotizacionCabecera.FirstOrDefault();
                            seguimientoCotizacion.idEstadoSeguimientoCotizacion = 2;
                            seguimientoCotizacion.fechaHoraUltimaModificacion   = Program.fechaHora;
                            seguimientoCotizacion.idUsuarioUltimaModificacion   = idUsuario;
                            seguimientoCotizacion.terminalUltimaModificacion    = Program.terminal;
                            seguimientoCotizacion.tbSeguimientoCotizacionDetalle.Add(new tbSeguimientoCotizacionDetalle {
                                comentarioSeguimiento = "Cotización " + idOrdenVenta.ToString() + " es una orden de venta", estadoRegistro = true, fechaHoraIngreso = Program.fechaHora, idUsuarioIngreso = idUsuario, terminalIngreso = Program.terminal
                            });

                            _dbCosolemEntities.SaveChanges();

                            tsbBuscar_Click(null, null);
                        }
                    }
                }
                if (e.ColumnIndex == dicFacturar.Index)
                {
                    frmCaja _frmCaja = new frmCaja(idOrdenVenta);
                    _frmCaja.Text = this.Text + " " + idOrdenVenta.ToString();
                    if (_frmCaja.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        tsbBuscar_Click(null, null);
                    }
                }
                if (e.ColumnIndex == dicImprimir.Index)
                {
                    if (idEstadoOrdenVenta == 3)
                    {
                        MessageBox.Show("Cotización ya no se puede imprimir porque se convirtió en orden de venta", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                    {
                        new frmReporteCotizacion(idOrdenVenta).ShowDialog();
                    }
                }
            }
        }
示例#22
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                long        idTecnico      = ((Tecnico)cmbTecnicoAsignado.SelectedItem).idEmpleado;
                TipoPersona _tbTipoPersona = (TipoPersona)cmbTipoPersona.SelectedItem;

                string mensaje = String.Empty;
                if (String.IsNullOrEmpty(txtNumeroIdentificacion.Text.Trim()))
                {
                    mensaje += "Ingrese número de identificación\n";
                }
                if (_tbTipoPersona.idTipoPersona == 1)
                {
                    if (String.IsNullOrEmpty(txtPrimerNombre.Text.Trim()))
                    {
                        mensaje += "Ingrese primer nombre\n";
                    }
                    if (String.IsNullOrEmpty(txtApellidoPaterno.Text.Trim()))
                    {
                        mensaje += "Ingrese apellido paterno\n";
                    }
                    if (String.IsNullOrEmpty(txtApellidoMaterno.Text.Trim()))
                    {
                        mensaje += "Ingrese apellido materno\n";
                    }
                }
                if (_tbTipoPersona.idTipoPersona == 2)
                {
                    if (String.IsNullOrEmpty(txtRazonSocial.Text.Trim()))
                    {
                        mensaje += "Ingrese razón social\n";
                    }
                }
                if (String.IsNullOrEmpty(txtCorreoElectronico.Text.Trim()))
                {
                    mensaje += "Ingrese correo electrónico\n";
                }
                if (!String.IsNullOrEmpty(txtCorreoElectronico.Text.Trim()))
                {
                    if (!Util.ValidaEmail(txtCorreoElectronico.Text.Trim()))
                    {
                        mensaje += "Correo electrónico inválido, favor verificar\n";
                    }
                }
                if (String.IsNullOrEmpty(txtDireccionCliente.Text.Trim()))
                {
                    mensaje += "Ingrese dirección\n";
                }
                if (String.IsNullOrEmpty(txtConvencional.Text.Trim()) && String.IsNullOrEmpty(txtCelular.Text.Trim()))
                {
                    mensaje += "Ingrese al menos 1 teléfono\n";
                }
                if (txtCodigoProducto.Tag == null)
                {
                    mensaje += "Seleccione un producto\n";
                }
                if (String.IsNullOrEmpty(txtSerie.Text.Trim()))
                {
                    mensaje += "Ingrese serie del producto\n";
                }

                if (String.IsNullOrEmpty(mensaje.Trim()))
                {
                    tbPersona persona = null;

                    long idPersona = 0;
                    if (txtNumeroIdentificacion.Tag != null)
                    {
                        idPersona = Convert.ToInt64(txtNumeroIdentificacion.Tag);

                        persona = (from P in _dbCosolemEntities.tbPersona where P.idPersona == idPersona select P).FirstOrDefault();
                    }
                    else
                    {
                        int    idTipoPersona        = ((TipoPersona)cmbTipoPersona.SelectedItem).idTipoPersona;
                        int    idTipoIdentificacion = ((TipoIdentificacion)cmbTipoIdentificacion.SelectedItem).idTipoIdentificacion;
                        string numeroIdentificacion = txtNumeroIdentificacion.Text.Trim();

                        persona = (from P in _dbCosolemEntities.tbPersona where P.idTipoPersona == idTipoPersona && P.idTipoIdentificacion == idTipoIdentificacion && P.numeroIdentificacion == numeroIdentificacion select P).FirstOrDefault();
                    }

                    if (persona == null)
                    {
                        persona = new tbPersona
                        {
                            idTipoPersona        = ((TipoPersona)cmbTipoPersona.SelectedItem).idTipoPersona,
                            idTipoIdentificacion = ((TipoIdentificacion)cmbTipoIdentificacion.SelectedItem).idTipoIdentificacion,
                            numeroIdentificacion = txtNumeroIdentificacion.Text.Trim(),
                            primerNombre         = txtPrimerNombre.Text.Trim(),
                            segundoNombre        = txtSegundoNombre.Text.Trim(),
                            apellidoPaterno      = txtApellidoPaterno.Text.Trim(),
                            apellidoMaterno      = txtApellidoMaterno.Text.Trim(),
                            razonSocial          = txtRazonSocial.Text.Trim(),
                            idSexo            = 3,
                            idEstadoCivil     = 6,
                            correoElectronico = txtCorreoElectronico.Text.Trim(),
                            estadoRegistro    = true,
                            fechaHoraIngreso  = Program.fechaHora,
                            idUsuarioIngreso  = idUsuario,
                            terminalIngreso   = Program.terminal
                        };
                        persona.tbDireccion.Add(new tbDireccion
                        {
                            idCanton          = ((dynamic)cmbCantonCliente.SelectedItem).idCanton,
                            idTipoDireccion   = 1,
                            direccionCompleta = txtDireccionCliente.Text,
                            esPrincipal       = true,
                            estadoRegistro    = true,
                            fechaHoraIngreso  = Program.fechaHora,
                            idUsuarioIngreso  = idUsuario,
                            terminalIngreso   = Program.terminal
                        });
                        if (!String.IsNullOrEmpty(txtConvencional.Text.Trim()))
                        {
                            persona.tbDireccion.FirstOrDefault().tbTelefono.Add(new tbTelefono
                            {
                                idTipoTelefono   = 1,
                                idOperadora      = 1,
                                numero           = txtConvencional.Text.Trim(),
                                esPrincipal      = false,
                                estadoRegistro   = true,
                                fechaHoraIngreso = Program.fechaHora,
                                idUsuarioIngreso = idUsuario,
                                terminalIngreso  = Program.terminal
                            });
                        }
                        if (!String.IsNullOrEmpty(txtCelular.Text.Trim()))
                        {
                            persona.tbDireccion.FirstOrDefault().tbTelefono.Add(new tbTelefono
                            {
                                idTipoTelefono   = 2,
                                idOperadora      = 1,
                                numero           = txtCelular.Text.Trim(),
                                esPrincipal      = false,
                                estadoRegistro   = true,
                                fechaHoraIngreso = Program.fechaHora,
                                idUsuarioIngreso = idUsuario,
                                terminalIngreso  = Program.terminal
                            });
                        }
                        _dbCosolemEntities.tbPersona.AddObject(persona);
                        _dbCosolemEntities.SaveChanges();
                    }
                    else
                    {
                        persona.primerNombre                = txtPrimerNombre.Text.Trim();
                        persona.segundoNombre               = txtSegundoNombre.Text.Trim();
                        persona.apellidoPaterno             = txtApellidoPaterno.Text.Trim();
                        persona.apellidoMaterno             = txtApellidoMaterno.Text.Trim();
                        persona.razonSocial                 = txtRazonSocial.Text.Trim();
                        persona.correoElectronico           = txtCorreoElectronico.Text.Trim();
                        persona.fechaHoraUltimaModificacion = Program.fechaHora;
                        persona.idUsuarioUltimaModificacion = idUsuario;
                        persona.terminalUltimaModificacion  = Program.terminal;
                        long idDireccion = 0;
                        if (txtDireccionCliente.Tag != null)
                        {
                            idDireccion = Convert.ToInt64(txtDireccionCliente.Tag);
                        }
                        tbDireccion _tbDireccion = persona.tbDireccion.Where(x => x.idDireccion == idDireccion).FirstOrDefault();
                        if (_tbDireccion == null)
                        {
                            _tbDireccion                   = new tbDireccion();
                            _tbDireccion.idCanton          = ((dynamic)cmbCantonCliente.SelectedItem).idCanton;
                            _tbDireccion.idTipoDireccion   = 1;
                            _tbDireccion.direccionCompleta = txtDireccionCliente.Text;
                            _tbDireccion.esPrincipal       = true;
                            _tbDireccion.estadoRegistro    = true;
                            _tbDireccion.fechaHoraIngreso  = Program.fechaHora;
                            _tbDireccion.idUsuarioIngreso  = idUsuario;
                            _tbDireccion.terminalIngreso   = Program.terminal;
                        }
                        else
                        {
                            _tbDireccion.idCanton                    = ((dynamic)cmbCantonCliente.SelectedItem).idCanton;
                            _tbDireccion.direccionCompleta           = txtDireccionCliente.Text;
                            _tbDireccion.fechaHoraUltimaModificacion = Program.fechaHora;
                            _tbDireccion.idUsuarioUltimaModificacion = idUsuario;
                            _tbDireccion.terminalUltimaModificacion  = Program.terminal;
                        }
                        if (!String.IsNullOrEmpty(txtConvencional.Text.Trim()))
                        {
                            long idTelefonoConvencional = 0;
                            if (txtConvencional.Tag != null)
                            {
                                idTelefonoConvencional = Convert.ToInt64(txtConvencional.Tag);
                            }
                            tbTelefono _tbTelefonoConvencional = _tbDireccion.tbTelefono.Where(x => x.idTelefono == idTelefonoConvencional).FirstOrDefault();
                            if (_tbTelefonoConvencional == null)
                            {
                                _tbTelefonoConvencional = new tbTelefono();
                                _tbTelefonoConvencional.idTipoTelefono   = 1;
                                _tbTelefonoConvencional.idOperadora      = 1;
                                _tbTelefonoConvencional.numero           = txtConvencional.Text.Trim();
                                _tbTelefonoConvencional.esPrincipal      = false;
                                _tbTelefonoConvencional.estadoRegistro   = true;
                                _tbTelefonoConvencional.fechaHoraIngreso = Program.fechaHora;
                                _tbTelefonoConvencional.idUsuarioIngreso = idUsuario;
                                _tbTelefonoConvencional.terminalIngreso  = Program.terminal;
                            }
                            else
                            {
                                _tbTelefonoConvencional.numero = txtConvencional.Text.Trim();
                                _tbTelefonoConvencional.fechaHoraUltimaModificacion = Program.fechaHora;
                                _tbTelefonoConvencional.idUsuarioUltimaModificacion = idUsuario;
                                _tbTelefonoConvencional.terminalUltimaModificacion  = Program.terminal;
                            }
                            if (_tbTelefonoConvencional.EntityState == EntityState.Detached)
                            {
                                _tbDireccion.tbTelefono.Add(_tbTelefonoConvencional);
                            }
                        }
                        if (!String.IsNullOrEmpty(txtCelular.Text.Trim()))
                        {
                            long idTelefonoCelular = 0;
                            if (txtCelular.Tag != null)
                            {
                                idTelefonoCelular = Convert.ToInt64(txtCelular.Tag);
                            }
                            tbTelefono _tbTelefonoCelular = _tbDireccion.tbTelefono.Where(x => x.idTelefono == idTelefonoCelular).FirstOrDefault();
                            if (_tbTelefonoCelular == null)
                            {
                                _tbTelefonoCelular = new tbTelefono();
                                _tbTelefonoCelular.idTipoTelefono   = 2;
                                _tbTelefonoCelular.idOperadora      = 1;
                                _tbTelefonoCelular.numero           = txtCelular.Text.Trim();
                                _tbTelefonoCelular.esPrincipal      = false;
                                _tbTelefonoCelular.estadoRegistro   = true;
                                _tbTelefonoCelular.fechaHoraIngreso = Program.fechaHora;
                                _tbTelefonoCelular.idUsuarioIngreso = idUsuario;
                                _tbTelefonoCelular.terminalIngreso  = Program.terminal;
                            }
                            else
                            {
                                _tbTelefonoCelular.numero = txtCelular.Text.Trim();
                                _tbTelefonoCelular.fechaHoraUltimaModificacion = Program.fechaHora;
                                _tbTelefonoCelular.idUsuarioUltimaModificacion = idUsuario;
                                _tbTelefonoCelular.terminalUltimaModificacion  = Program.terminal;
                            }
                            if (_tbTelefonoCelular.EntityState == EntityState.Detached)
                            {
                                _tbDireccion.tbTelefono.Add(_tbTelefonoCelular);
                            }
                        }
                        if (_tbDireccion.EntityState == EntityState.Detached)
                        {
                            persona.tbDireccion.Add(_tbDireccion);
                        }
                    }
                    if (persona.tbCliente == null)
                    {
                        persona.tbCliente = new tbCliente
                        {
                            estadoRegistro   = true,
                            fechaHoraIngreso = Program.fechaHora,
                            idUsuarioIngreso = idUsuario,
                            terminalIngreso  = Program.terminal
                        };
                    }
                    else
                    {
                        persona.tbCliente.fechaHoraUltimaModificacion = Program.fechaHora;
                        persona.tbCliente.idUsuarioUltimaModificacion = idUsuario;
                        persona.tbCliente.terminalUltimaModificacion  = Program.terminal;
                    }

                    tbOrdenTrabajo ordenTrabajo = new tbOrdenTrabajo {
                        estadoRegistro = true, fechaHoraIngreso = Program.fechaHora, idUsuarioIngreso = idUsuario, terminalIngreso = Program.terminal
                    };

                    if (idOrdenTrabajo != 0)
                    {
                        ordenTrabajo = (from OT in _dbCosolemEntities.tbOrdenTrabajo where OT.idOrdenTrabajo == idOrdenTrabajo select OT).FirstOrDefault();
                        ordenTrabajo.fechaHoraUltimaModificacion = Program.fechaHora;
                        ordenTrabajo.idUsuarioUltimaModificacion = idUsuario;
                        ordenTrabajo.terminalUltimaModificacion  = Program.terminal;
                    }

                    ordenTrabajo.idEmpresa            = idEmpresa;
                    ordenTrabajo.idCliente            = persona.tbCliente.idCliente;
                    ordenTrabajo.tipoIdentificacion   = persona.tbTipoIdentificacion.descripcion;
                    ordenTrabajo.numeroIdentificacion = persona.numeroIdentificacion;
                    ordenTrabajo.cliente               = persona.nombreCompleto;
                    ordenTrabajo.direccion             = txtDireccionCliente.Text;
                    ordenTrabajo.convencional          = (!String.IsNullOrEmpty(txtConvencional.Text.Trim()) ? txtConvencional.Text.Trim() : null);
                    ordenTrabajo.celular               = (!String.IsNullOrEmpty(txtCelular.Text.Trim()) ? txtCelular.Text.Trim() : null);
                    ordenTrabajo.correoElectronico     = persona.correoElectronico;
                    ordenTrabajo.fechaHoraOrdenTrabajo = (dtpFechaHoraAgendamiento.Checked ? dtpFechaHoraAgendamiento.Value : (DateTime?)null);
                    ordenTrabajo.idTecnico             = (idTecnico == 0 ? (long?)null : idTecnico);
                    ordenTrabajo.idEstadoOrdenTrabajo  = (ordenTrabajo.fechaHoraOrdenTrabajo.HasValue && ordenTrabajo.idTecnico.HasValue ? 2 : 1);
                    ordenTrabajo.idProducto            = Convert.ToInt64(txtCodigoProducto.Tag);
                    ordenTrabajo.serie          = txtSerie.Text.Trim();
                    ordenTrabajo.fallaReportada = txtFallaReportada.Text.Trim();
                    if (ordenTrabajo.idOrdenTrabajo == 0)
                    {
                        _dbCosolemEntities.tbOrdenTrabajo.AddObject(ordenTrabajo);
                    }
                    _dbCosolemEntities.SaveChanges();
                    MessageBox.Show("Agendamiento de servicio técnico #" + ordenTrabajo.idOrdenTrabajo.ToString(), this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    frmAgendamientoServicioTecnico_Load(null, null);
                    this.DialogResult = System.Windows.Forms.DialogResult.OK;
                }
                else
                {
                    MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                Util.MostrarException(this.Text, ex);
            }
        }
示例#23
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                string mensaje = String.Empty;

                if (_tbPersona == null)
                {
                    mensaje += "Seleccione un empleado para proceder con la generación de contraseña\n";
                }
                if (String.IsNullOrEmpty(txtCorreoElectronico.Text.Trim()))
                {
                    mensaje += "Ingrese correo electrónico\n";
                }
                if (!String.IsNullOrEmpty(txtCorreoElectronico.Text.Trim()))
                {
                    if (!Util.ValidaEmail(txtCorreoElectronico.Text.Trim()))
                    {
                        mensaje += "Correo electrónico inválido, favor verificar\n";
                    }
                }
                if (String.IsNullOrEmpty(txtNombreUsuario.Text.Trim()))
                {
                    mensaje += "Ingrese nombre de usuario\n";
                }
                if (!String.IsNullOrEmpty(txtNombreUsuario.Text.Trim()) && _dbCosolemEntities.tbUsuario.Count(x => x.nombreUsuario == txtNombreUsuario.Text.Trim()) > 1)
                {
                    mensaje += "Nombre de usuario ya existe, favor verificar\n";
                }

                if (String.IsNullOrEmpty(mensaje.Trim()))
                {
                    _tbPersona.tbEmpleado.correoElectronico                       = txtCorreoElectronico.Text.Trim();
                    _tbPersona.tbEmpleado.fechaHoraUltimaModificacion             = Program.fechaHora;
                    _tbPersona.tbEmpleado.idUsuarioUltimaModificacion             = idUsuario;
                    _tbPersona.tbEmpleado.terminalUltimaModificacion              = Program.terminal;
                    _tbPersona.tbEmpleado.tbUsuario.nombreUsuario                 = txtNombreUsuario.Text.Trim();
                    _tbPersona.tbEmpleado.tbUsuario.contrasena                    = Util.EncriptaValor(txtContrasena.Text.Trim(), _tbPersona.tbEmpleado.tbUsuario.idUsuario.ToString());
                    _tbPersona.tbEmpleado.tbUsuario.contrasenaNuncaExpira         = chbContrasenaNuncaExpira.Checked;
                    _tbPersona.tbEmpleado.tbUsuario.cambiarContrasena             = chbCambiarContrasena.Checked;
                    _tbPersona.tbEmpleado.tbUsuario.fechaHoraGeneracionContrasena = Program.fechaHora;
                    _tbPersona.tbEmpleado.tbUsuario.idUsuarioGeneracionContrasena = idUsuario;
                    _tbPersona.tbEmpleado.tbUsuario.terminalGeneracionContrasena  = Program.terminal;
                    if (!_dbCosolemEntities.tbUsuario.Any(x => x.idUsuario == _tbPersona.tbEmpleado.tbUsuario.idUsuario))
                    {
                        _tbPersona.tbEmpleado.tbUsuario.fechaHoraIngreso = Program.fechaHora;
                        _tbPersona.tbEmpleado.tbUsuario.idUsuarioIngreso = idUsuario;
                        _tbPersona.tbEmpleado.tbUsuario.terminalIngreso  = Program.terminal;
                    }
                    else
                    {
                        _tbPersona.tbEmpleado.tbUsuario.fechaHoraUltimaModificacion = Program.fechaHora;
                        _tbPersona.tbEmpleado.tbUsuario.idUsuarioUltimaModificacion = idUsuario;
                        _tbPersona.tbEmpleado.tbUsuario.terminalUltimaModificacion  = Program.terminal;
                    }
                    _dbCosolemEntities.SaveChanges();
                    MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    new frmReporteGeneracionContrasena(_tbPersona).ShowDialog();
                    frmGeneracionContrasena_Load(null, null);
                }
                else
                {
                    MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                Util.MostrarException(this.Text, ex);
            }
        }
示例#24
0
        private void tsbProcesar_Click(object sender, EventArgs e)
        {
            try
            {
                dgvProcesarPrecios_CellEndEdit(null, null);
                List <tbProcesarPrecio> _ListtbProcesarPrecio = ((List <tbProcesarPrecio>)dgvProcesarPrecios.DataSource).Where(x => x.seleccionado).ToList();

                string mensaje = String.Empty;

                if (_ListtbProcesarPrecio.Count == 0)
                {
                    mensaje += "Seleccione al menos 1 precio para proceder a procesarlo\n";
                }
                if (_ListtbProcesarPrecio.Where(x => x.costo <= 0 || x.indiceComercial <= 0 || x.indiceFinanciero <= 0 || x.indiceInformativo <= 0).Any())
                {
                    mensaje += "Hay productos seleccionados con costo, índice comercial, índice financiero o índice informativo menor o igual que 0, favor verificar\n";
                }


                if (String.IsNullOrEmpty(mensaje.Trim()))
                {
                    _ListtbProcesarPrecio.ForEach(x =>
                    {
                        tbProcesarPrecio _tbProcesarPrecio = (from PP in _dbCosolemEntities.tbProcesarPrecio where PP.idProcesarPrecio == x.idProcesarPrecio select PP).FirstOrDefault();
                        if (_tbProcesarPrecio != null)
                        {
                            _tbProcesarPrecio.procesarPrecio = false;
                            _tbProcesarPrecio.estadoRegistro = false;
                            _tbProcesarPrecio.fechaHoraUltimaModificacion = Program.fechaHora;
                            _tbProcesarPrecio.idUsuarioUltimaModificacion = idUsuario;
                            _tbProcesarPrecio.terminalUltimaModificacion  = Program.terminal;
                        }
                        _dbCosolemEntities.tbPrecio.Where(y => y.idEmpresa == idEmpresa && y.idProducto == x.idProducto && y.estadoRegistro).ToList().ForEach(z =>
                        {
                            z.estadoRegistro = false;
                            z.fechaHoraUltimaModificacion = Program.fechaHora;
                            z.idUsuarioUltimaModificacion = idUsuario;
                            z.terminalUltimaModificacion  = Program.terminal;
                            z.fechaHoraEliminacion        = Program.fechaHora;
                            z.idUsuarioEliminacion        = idUsuario;
                            z.terminalEliminacion         = Program.terminal;
                        });
                        tbPrecio _tbPrecio           = new tbPrecio();
                        _tbPrecio.idEmpresa          = idEmpresa;
                        _tbPrecio.idProducto         = x.idProducto;
                        _tbPrecio.costo              = x.costo;
                        _tbPrecio.precioOferta       = _tbPrecio.costo * x.indiceComercial;
                        _tbPrecio.precioVentaPublico = _tbPrecio.precioOferta * x.indiceFinanciero;
                        _tbPrecio.precioInformativo  = _tbPrecio.precioVentaPublico * x.indiceInformativo;
                        _tbPrecio.estadoRegistro     = true;
                        _tbPrecio.fechaHoraIngreso   = Program.fechaHora;
                        _tbPrecio.idUsuarioIngreso   = idUsuario;
                        _tbPrecio.terminalIngreso    = Program.terminal;
                        _dbCosolemEntities.tbPrecio.AddObject(_tbPrecio);
                    });
                    _dbCosolemEntities.SaveChanges();

                    MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    frmPrecios_Load(null, null);
                }
                else
                {
                    MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                Util.MostrarException(this.Text, ex);
            }
        }
示例#25
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                dgvDireccionesTelefonos_CellEndEdit(null, null);
                dgvTelefonosPersonales_CellEndEdit(null, null);

                string mensajeDatosPersonales = String.Empty;

                if (String.IsNullOrEmpty(txtNumeroIdentificacion.Text.Trim()))
                {
                    mensajeDatosPersonales += "Ingrese número de identificación\n";
                }
                if (!String.IsNullOrEmpty(txtNumeroIdentificacion.Text.Trim()))
                {
                    mensajeDatosPersonales += VerificaPersona(((TipoPersona)cmbTipoPersona.SelectedItem).idTipoPersona, ((TipoIdentificacion)cmbTipoIdentificacion.SelectedItem).idTipoIdentificacion, txtNumeroIdentificacion.Text.Trim());
                }
                TipoPersona _tbTipoPersona = (TipoPersona)cmbTipoPersona.SelectedItem;
                if (_tbTipoPersona.idTipoPersona == 1)
                {
                    if (String.IsNullOrEmpty(txtPrimerNombre.Text.Trim()))
                    {
                        mensajeDatosPersonales += "Ingrese primer nombre\n";
                    }
                    if (String.IsNullOrEmpty(txtApellidoPaterno.Text.Trim()))
                    {
                        mensajeDatosPersonales += "Ingrese apellido paterno\n";
                    }
                    if (String.IsNullOrEmpty(txtApellidoMaterno.Text.Trim()))
                    {
                        mensajeDatosPersonales += "Ingrese apellido materno\n";
                    }
                }
                if (_tbTipoPersona.idTipoPersona == 2)
                {
                    if (String.IsNullOrEmpty(txtRazonSocial.Text.Trim()))
                    {
                        mensajeDatosPersonales += "Ingrese razón social\n";
                    }
                }
                if (String.IsNullOrEmpty(txtCorreoElectronico.Text.Trim()))
                {
                    mensajeDatosPersonales += "Ingrese correo electrónico\n";
                }
                if (!String.IsNullOrEmpty(txtCorreoElectronico.Text.Trim()))
                {
                    if (!Util.ValidaEmail(txtCorreoElectronico.Text.Trim()))
                    {
                        mensajeDatosPersonales += "Correo electrónico inválido, favor verificar\n";
                    }
                }
                mensajeDatosPersonales += VerificaDireccion();
                mensajeDatosPersonales += VerificaTelefonoPersonal();
                if (!String.IsNullOrEmpty(mensajeDatosPersonales))
                {
                    mensajeDatosPersonales = "[Datos personales]\n" + mensajeDatosPersonales;
                }

                string mensaje = mensajeDatosPersonales;

                if (String.IsNullOrEmpty(mensaje.Trim()))
                {
                    _tbPersona.idTipoPersona        = _tbTipoPersona.idTipoPersona;
                    _tbPersona.idTipoIdentificacion = ((TipoIdentificacion)cmbTipoIdentificacion.SelectedItem).idTipoIdentificacion;
                    _tbPersona.numeroIdentificacion = txtNumeroIdentificacion.Text.Trim();
                    _tbPersona.primerNombre         = txtPrimerNombre.Text.Trim();
                    _tbPersona.segundoNombre        = txtSegundoNombre.Text.Trim();
                    _tbPersona.apellidoPaterno      = txtApellidoPaterno.Text.Trim();
                    _tbPersona.apellidoMaterno      = txtApellidoMaterno.Text.Trim();
                    _tbPersona.razonSocial          = txtRazonSocial.Text.Trim();
                    _tbPersona.idSexo          = ((dynamic)cmbSexo.SelectedItem).idSexo;
                    _tbPersona.fechaNacimiento = null;
                    if (dtpFechaNacimiento.Checked)
                    {
                        _tbPersona.fechaNacimiento = dtpFechaNacimiento.Value.Date;
                    }
                    _tbPersona.idEstadoCivil     = ((dynamic)cmbEstadoCivil.SelectedItem).idEstadoCivil;
                    _tbPersona.correoElectronico = txtCorreoElectronico.Text.Trim();
                    _BindingListtbDireccion.ToList().ForEach(x =>
                    {
                        if (x.idDireccion == 0)
                        {
                            _tbPersona.tbDireccion.Add(x);
                        }
                        else
                        {
                            x.tbTelefono.ToList().ForEach(y => { if (y.idTelefono == 0)
                                                                 {
                                                                     x.tbTelefono.Add(y);
                                                                 }
                                                          });
                        }
                    });
                    _BindingListtbTelefonoPersonal.ToList().ForEach(x => { if (x.idTelefonoPersonal == 0)
                                                                           {
                                                                               _tbPersona.tbTelefonoPersonal.Add(x);
                                                                           }
                                                                    });
                    if (_tbPersona.EntityState == EntityState.Detached)
                    {
                        _tbPersona.fechaHoraIngreso           = Program.fechaHora;
                        _tbPersona.idUsuarioIngreso           = idUsuario;
                        _tbPersona.terminalIngreso            = Program.terminal;
                        _tbPersona.tbCliente.fechaHoraIngreso = Program.fechaHora;
                        _tbPersona.tbCliente.idUsuarioIngreso = idUsuario;
                        _tbPersona.tbCliente.terminalIngreso  = Program.terminal;
                        _dbCosolemEntities.tbPersona.AddObject(_tbPersona);
                    }
                    else
                    {
                        _tbPersona.fechaHoraUltimaModificacion = Program.fechaHora;
                        _tbPersona.idUsuarioUltimaModificacion = idUsuario;
                        _tbPersona.terminalUltimaModificacion  = Program.terminal;
                        if (!_dbCosolemEntities.tbCliente.Any(x => x.idCliente == _tbPersona.tbCliente.idCliente))
                        {
                            _tbPersona.tbCliente.fechaHoraIngreso = Program.fechaHora;
                            _tbPersona.tbCliente.idUsuarioIngreso = idUsuario;
                            _tbPersona.tbCliente.terminalIngreso  = Program.terminal;
                        }
                        else
                        {
                            _tbPersona.tbCliente.fechaHoraUltimaModificacion = Program.fechaHora;
                            _tbPersona.tbCliente.idUsuarioUltimaModificacion = idUsuario;
                            _tbPersona.tbCliente.terminalUltimaModificacion  = Program.terminal;
                        }
                    }
                    _dbCosolemEntities.SaveChanges();

                    MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    frmCliente_Load(null, null);
                }
                else
                {
                    MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                Util.MostrarException(this.Text, ex);
            }
        }
示例#26
0
        private void tsbGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                dgvProductos_CellEndEdit(null, null);

                string mensaje  = String.Empty;
                Marca  _tbMarca = (Marca)cmbMarca.SelectedItem;
                if (_tbMarca.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";
                }
                mensaje += VerificaProducto(_BindingListtbProducto.ToList());

                if (String.IsNullOrEmpty(mensaje.Trim()))
                {
                    _BindingListtbProducto.ToList().ForEach(x =>
                    {
                        x.idMarca = _tbMarca.idMarca;
                        if (x.EntityState == EntityState.Detached)
                        {
                            x.fechaHoraIngreso = Program.fechaHora;
                            x.idUsuarioIngreso = idUsuario;
                            x.terminalIngreso  = Program.terminal;
                            _dbCosolemEntities.tbProducto.AddObject(x);
                        }
                    });
                    _dbCosolemEntities.SaveChanges();
                    MessageBox.Show("Registro grabado satisfactoriamente", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    frmProductos_Load(null, null);
                }
                else
                {
                    MessageBox.Show(mensaje, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                Util.MostrarException(this.Text, ex);
            }
        }
示例#27
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);
            }
        }