예제 #1
0
        public TarjetaInfo ObtenerInformacionTarjeta(int tipoTarjeta,
                                                     string numeroTarjeta,
                                                     string titularTarjeta,
                                                     string mesExpiracion,
                                                     string añoExpiracion,
                                                     string codigoSeguridad)
        {
            TarjetaInfo tarjetaInfo = null;
            string      query       = "SP_TARJETAINFO";
            SqlCommand  comando     = new SqlCommand(query, conexion);

            comando.CommandType = System.Data.CommandType.StoredProcedure;
            comando.Parameters.AddWithValue("@idTipoTarjeta", tipoTarjeta);
            comando.Parameters.AddWithValue("@numeroTarjeta", numeroTarjeta);
            comando.Parameters.AddWithValue("@nombreTarjeta", titularTarjeta);
            comando.Parameters.AddWithValue("@securityCodeTarjeta", codigoSeguridad);
            comando.Parameters.AddWithValue("@mesExpiracionTarjeta", mesExpiracion);
            comando.Parameters.AddWithValue("@añoExpiracionTarjeta", añoExpiracion);
            conexion.Open();
            SqlDataReader reader = comando.ExecuteReader();

            if (reader.HasRows)
            {
                tarjetaInfo = new TarjetaInfo();
                while (reader.Read())
                {
                    tarjetaInfo.titularTarjeta    = reader["nombreTarjeta"].ToString();
                    tarjetaInfo.numeroTarjeta     = reader["numeroTarjeta"].ToString();
                    tarjetaInfo.tarjetaHabilitada = bool.Parse(reader["tarjetaHabilitada"].ToString());
                    tarjetaInfo.creditoDisponible = double.Parse(reader["creditoDisponible"].ToString());
                }
            }
            conexion.Close();
            return(tarjetaInfo);
        }
예제 #2
0
        public bool ValidarPago(out string mensaje,
                                int tipoTarjeta,
                                string numeroTarjeta,
                                string titularTarjeta,
                                double montoConsumir,
                                string mesExpiracion,
                                string añoExpiracion,
                                string codigoSeguridad)
        {
            bool ValidacionCorrecta = false;

            mensaje = "";

            //Verificar que la tarjeta exista

            //LLamar a la capa de datos
            TarjetaInfo tarjetaInfo = tarjetaDatos.ObtenerInformacionTarjeta(tipoTarjeta,
                                                                             numeroTarjeta,
                                                                             titularTarjeta,
                                                                             mesExpiracion,
                                                                             añoExpiracion,
                                                                             codigoSeguridad);

            //Validar que la tarjeta exista
            //validar que la tarjeta exista
            if (tarjetaInfo == null)
            {
                mensaje = "Tarjeta no Existe";
            }
            //la tarjeta existe
            else
            {
                //validar que la tarjeta este habilitada
                if (!tarjetaInfo.tarjetaHabilitada)
                {
                    mensaje = "Tarjeta No Habilitada";
                }
                //si la tarjeta no esta deshabilitada
                else
                {
                    // disponible : 99 , monto : 100
                    if (tarjetaInfo.creditoDisponible < montoConsumir)
                    {
                        mensaje = "Linea de credito insuficiente";
                    }
                    else
                    {
                        ValidacionCorrecta = true;
                    }
                }
            }

            return(ValidacionCorrecta);
        }
예제 #3
0
        public bool ValidarPago(out string mensaje,
                                int tipoTarjeta,
                                string numeroTarjeta,
                                string titularTarjeta,
                                double montoConsumir,
                                string mesExpiracion,
                                string añoExpiracion,
                                string codigoSeguridad)
        {
            bool ValidacionCorrecta = false;

            mensaje = "";

            TarjetaInfo tarjetaInfo = tarjetaDatos.ObtenerInformacionTarjeta(tipoTarjeta, numeroTarjeta, titularTarjeta,
                                                                             mesExpiracion, añoExpiracion, codigoSeguridad);

            if (tarjetaInfo == null)
            {
                mensaje = "Tarjeta no existe";
            }
            else
            {
                if (!tarjetaInfo.tarjetaHabilitada)
                {
                    mensaje = "Tarjeta No Habilitada";
                }
                else
                {
                    if (tarjetaInfo.creditoDisponible < montoConsumir)
                    {
                        mensaje = "Linea de credito insuficiente";
                    }
                    else
                    {
                        ValidacionCorrecta = true;
                        mensaje            = "Usted realizò el pago";
                    }
                }
            }

            return(ValidacionCorrecta);
        }
        public TarjetaInfo ObtenerInformacionTarjeta(int tipoTarjeta, string numeroTarjeta, string titularTarjeta, string mesExpiracion, string añoExpiracion, string codigoSeguridad)
        {
            TarjetaInfo tarjetaInfo = null;

            SqlCommand cmd = new SqlCommand();

            cmd.CommandText = "sp_GetTarjetaByInfo";
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Connection  = conexion;

            conexion.Open();
            //declarar los parametros del procedure
            cmd.Parameters.AddWithValue("@idTipoTarjeta", tipoTarjeta);
            cmd.Parameters.AddWithValue("@numeroTarjeta", numeroTarjeta);
            cmd.Parameters.AddWithValue("@nombreTarjeta", titularTarjeta);
            cmd.Parameters.AddWithValue("@securityCodeTarjeta", codigoSeguridad);
            cmd.Parameters.AddWithValue("@mesExpiracionTarjeta", mesExpiracion);
            cmd.Parameters.AddWithValue("@añoExpiracionTarjeta", añoExpiracion);

            SqlDataReader reader = cmd.ExecuteReader();

            //verificar que tenga filas
            if (reader.HasRows)
            {
                tarjetaInfo = new TarjetaInfo();
                //leer el registro
                while (reader.Read())
                {
                    tarjetaInfo.titularTarjeta    = reader["NOMBRE_TARJETA"].ToString();
                    tarjetaInfo.numeroTarjeta     = reader["NUMERO_TARJETA"].ToString();
                    tarjetaInfo.tarjetaHabilitada = bool.Parse(reader["TARJETA_HABILITADA"].ToString());
                    tarjetaInfo.creditoDisponible = double.Parse(reader["CREDITO_DISPONIBLE"].ToString());
                }
            }

            //cerrar conexion
            conexion.Close();

            return(tarjetaInfo);
        }