Public Class ClsRegistrosCrear
    Implements IRegistrosCrear

    Private conexion As IPrixusConexion

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

    Public Function Crear(data As IRegistrosCrearArgumentos) As Boolean Implements IRegistrosCrear.Crear
        Dim resultado As Boolean = False
        Dim mensajeError As String = ""

        Try
            ' Validaciones
            'ToDo: Validar.

            'Logica de creación de usuario
            Dim listaParametros As New List(Of SqlClient.SqlParameter) From {
                New SqlClient.SqlParameter("@idUsuario", data.IdUsuario),
                New SqlClient.SqlParameter("@tipoMovimiento", data.TipoMovimiento),
                New SqlClient.SqlParameter("@autenticacion", data.Autenticacion),
                New SqlClient.SqlParameter("@fechaRegistro", data.FechaRegistro),
                New SqlClient.SqlParameter("@export", False),
                New SqlClient.SqlParameter("@fechaExport", DBNull.Value),
                New SqlClient.SqlParameter("@email", data.Email),
                New SqlClient.SqlParameter("@fechaEmail", data.Email)}

            resultado = conexion.EjecutarProcedimiento("sp_RegistrosCrear", listaParametros)

        Catch ex As Exception
            Console.WriteLine(vbNewLine + ex.Message)
        Finally
            conexion.CerrarBD()
        End Try

        Return resultado
    End Function
End Class
