Public Class ClsUsuariosAutenticar
    Implements IUsuariosAutenticar
    Private conexion As IPrixusConexion

    Public Sub New(conexion As IPrixusConexion)
        Me.conexion = conexion
    End Sub

    Public Function Autenticar(datos As CredencialesBasicasModelo) As Boolean Implements IUsuariosAutenticar.Autenticar
        Dim resultado As Boolean = False

        Try
            If Not datos.DatosOk Then Throw New Exception("Credenciales invalidas")

            Dim parametros As New List(Of SqlClient.SqlParameter) From {
                New SqlClient.SqlParameter("@numeroLegal", datos.Usuario),
                New SqlClient.SqlParameter("@password", datos.Password)}

            Dim mensajeError As String = ""
            Dim bdResultado = conexion.ObtenerObjeto("sp_UsuariosAutenticar", parametros, CommandType.StoredProcedure, mensajeError)

            If (Not IsNothing(bdResultado) AndAlso IsNumeric(bdResultado)) Then
                resultado = Integer.Parse(bdResultado).Equals(1)
            End If
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
        Return resultado
    End Function
End Class
