Public Class ClsEmpresasCrear
    Implements IEmpresasCrear

    Private conexion As IPrixusConexion

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

    Public Function Crear(empresasModelo As IEmpresasCrearArgumentos, ByRef mensajeError As String) As Boolean Implements IEmpresasCrear.Crear
        Dim resultado As Boolean = False
        mensajeError = ""

        Try
            ' Validaciones

            If empresasModelo.Pais = Nothing Then empresasModelo.Pais = "NO DEFINIDO"
            If empresasModelo.Activo = Nothing Then empresasModelo.Activo = "1"


            'Logica de creación de empresa
            Dim listaParametros As New List(Of SqlClient.SqlParameter) From {
                New SqlClient.SqlParameter("@id", empresasModelo.Id),
                New SqlClient.SqlParameter("@numeroLegal", empresasModelo.NumeroLegal),
                New SqlClient.SqlParameter("@nombreLegal", empresasModelo.NombreLegal),
                New SqlClient.SqlParameter("@pais", empresasModelo.Pais),
                New SqlClient.SqlParameter("@activo", empresasModelo.Activo),
                New SqlClient.SqlParameter("@idContrato", empresasModelo.IdContrato)}


            resultado = conexion.EjecutarProcedimiento("sp_empresasCrear", listaParametros, mensajeError)

        Catch ex As Exception
            mensajeError += vbNewLine + ex.Message
        Finally
            conexion.CerrarBD()
        End Try

        Return resultado
    End Function
End Class
