}// ConexionBD

        public void InsertarCajero(Cajero pCajero)
        {
            SqlConnection conexion;
            SqlCommand    comando = new SqlCommand();
            string        sentencia;

            conexion  = new SqlConnection(cadenaConexion);
            sentencia = "insert into Cajero(Usuario, Nombre, PrimerApellido, SegundoApellido, CajaAsignada, Activo) " +
                        "values(@Usuario, @Nombre, @PrimerApellido, @SegundoApellido, @CajaAsignada, @Activo)";

            comando.CommandType = CommandType.Text;
            comando.CommandText = sentencia;
            comando.Connection  = conexion;
            comando.Parameters.AddWithValue("@Usuario", pCajero.usuario);
            comando.Parameters.AddWithValue("@Nombre", pCajero.nombre);
            comando.Parameters.AddWithValue("@PrimerApellido", pCajero.primerAp);
            comando.Parameters.AddWithValue("@SegundoApellido", pCajero.segundoAp);
            comando.Parameters.AddWithValue("@CajaAsignada", pCajero.cajaAsignada);
            comando.Parameters.AddWithValue("@Activo", pCajero.activo);

            conexion.Open();

            comando.ExecuteNonQuery();

            conexion.Close();
        }// InsertarCajero
示例#2
0
        }// FormServidor_Load

        private void MensajeRecibido(ConexionTcp conexionTcp, string datos)
        {
            var    paquete = new Paquete(datos);
            string comando = paquete.comando;

            if (comando == "insertarCajero")
            {
                string        contenido = paquete.contenido;
                List <string> valores   = Mapa.Deserializar(contenido);
                Cajero        cajero    = new Cajero();
                cajero.usuario      = valores[0];
                cajero.nombre       = valores[1];
                cajero.primerAp     = valores[2];
                cajero.segundoAp    = valores[3];
                cajero.cajaAsignada = 0;
                cajero.activo       = false;

                conexiondb.InsertarCajero(cajero);

                var msgPack = new Paquete("resultadoCajero", "Registro completado.");
                conexionTcp.EnviarPaquete(msgPack);

                if (txtBitacora.InvokeRequired)
                {
                    txtBitacora.Invoke(new MethodInvoker(delegate { txtBitacora.Text = txtBitacora.Text + "Nuevo cajero registrado: " + DateTime.Now.ToString() + "\r\n"; }));
                }
            }
            if (comando == "insertarVenta")
            {
                string        contenido = paquete.contenido;
                List <string> valores   = Mapa.Deserializar(contenido);
                string        usuario   = valores[0];
                DateTime      fecha     = Convert.ToDateTime(valores[1]);
                int           codProd   = Convert.ToInt32(valores[2]);
                int           cantidad  = Convert.ToInt32(valores[3]);
                decimal       precio;
                decimal       montoTotal;
                if (conexiondb.validarUsuario(usuario) != 0)
                {
                    if (conexiondb.esActivo(usuario))
                    {
                        if (conexiondb.validarCodProducto(codProd) != 0)
                        {
                            if (conexiondb.obtenerCantidad(codProd) >= cantidad)
                            {
                                precio     = conexiondb.obtenerPrecio(codProd);
                                montoTotal = precio * cantidad;
                                Venta venta = new Venta();
                                venta.cajeroUsuario  = usuario;
                                venta.fecha          = fecha;
                                venta.codigoProducto = codProd;
                                venta.precioProducto = precio;
                                venta.cantidad       = cantidad;
                                venta.montoTotal     = montoTotal;
                                conexiondb.insertarVenta(venta);
                                var msgPack = new Paquete("resultadoVenta", "Registro completado.");
                                conexionTcp.EnviarPaquete(msgPack);

                                int nuevaCant = conexiondb.obtenerCantidad(codProd) - cantidad;
                                conexiondb.actualizarCantidad(codProd, nuevaCant);

                                if (txtBitacora.InvokeRequired)
                                {
                                    txtBitacora.Invoke(new MethodInvoker(delegate { txtBitacora.Text = txtBitacora.Text + "Nueva venta registrada: " + DateTime.Now.ToString() + "\r\n"; }));
                                }
                            }
                            else
                            {
                                var msgPackProdInsuficiente = new Paquete("resultadoVenta", "No hay suficiente inventario del producto para realizar la venta.");
                                conexionTcp.EnviarPaquete(msgPackProdInsuficiente);
                            }
                        }
                        else
                        {
                            var msgPackProdNoEncontrado = new Paquete("resultadoVenta", "Producto no encontrado.");
                            conexionTcp.EnviarPaquete(msgPackProdNoEncontrado);
                        }
                    }
                    else
                    {
                        var msgPackUsuarioNoAutorizd = new Paquete("resultadoVenta", "Usuario no Autorizado.");
                        conexionTcp.EnviarPaquete(msgPackUsuarioNoAutorizd);
                    }
                }
                else
                {
                    var msgPackUsuarioNoEncontrado = new Paquete("resultadoVenta", "Usuario no encontrado.");
                    conexionTcp.EnviarPaquete(msgPackUsuarioNoEncontrado);
                }
            }
            if (comando == "usuarioConectado")
            {
                string contenido = paquete.contenido;

                if (txtBitacora.InvokeRequired)
                {
                    txtBitacora.Invoke(new MethodInvoker(delegate { txtBitacora.Text = txtBitacora.Text + contenido + ": " + DateTime.Now.ToString() + "\r\n"; }));
                }
            }
            if (comando == "usuarioDesconectado")
            {
                string contenido = paquete.contenido;

                if (txtBitacora.InvokeRequired)
                {
                    txtBitacora.Invoke(new MethodInvoker(delegate { txtBitacora.Text = txtBitacora.Text + contenido + ": " + DateTime.Now.ToString() + "\r\n"; }));
                }
            }
            if (comando == "inicioSesion")
            {
                string contenido        = paquete.contenido;
                bool   cajeroAutorizado = conexiondb.esActivo(contenido);

                if (conexiondb.validarUsuario(contenido) != 0)
                {
                    if (cajeroAutorizado)
                    {
                        var msgPackAutorizado = new Paquete("resultadoIncSes", "Sesión Iniciada");
                        conexionTcp.EnviarPaquete(msgPackAutorizado);
                    }
                    else
                    {
                        var msgPack = new Paquete("resultadoIncSes", "Usuario no autorizado. Debe esperar a que se le autorize para registrar ventas.");
                        conexionTcp.EnviarPaquete(msgPack);
                    }
                }
                else
                {
                    var msgPack = new Paquete("resultadoIncSes", "Usuario no encontrado.");
                    conexionTcp.EnviarPaquete(msgPack);
                }
            }
        }// MensajeRecibido