viernes, 21 de agosto de 2020

Class Principal Gestion de Devolucion

 Public Class Principal

#Region "Declaraciones"

    Private LABASE As String

    Private SERVIDOR As String

    Private mDtResultado As New DataTable

    Private ConeccionExitosa As Boolean

    Private ResuBoolean As Boolean = False

    Private LogueoExitoso As Boolean

    Private AvisarAlSalir As Boolean

    Private sUsuario As String

    Private FrmGestiondeDevolucion As GestiondeDevolucion

    Private FrmAuditoria As AuditoriaCorreos

#End Region


#Region "Eventos"


    Private Sub Principal_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        Try

            IniciarAplicacion()

            OperacionesControles()

        Catch ex As Exception

            GestorMensajes.MensajeDelSistema(MensajeSistema.TipoDeMensaje.Errores, "#ERROR: al intentar abrir la aplicación. " & vbCrLf & ex.Message.ToString).ShowDialog()

        End Try

    End Sub

#End Region


#Region "Funciones"


    Private Sub OperacionesControles()

        RegistroControles()

        EjecutarPermisos()

    End Sub

    Private Sub RegistroControles()

        ControlesPermisos.RegistrarControles(Me)

    End Sub


    Private Sub EjecutarPermisos()

        ControlesPermisos.DesactivarControlesAplicacion(Me)

        ControlesPermisos.ActivarControlesPorPefil(Me, My.Application.IDAPLICACION, My.Application.IDPERFIL)

        ControlesPermisos.ActivarControlesPorUsuario(Me, My.Application.IDAPLICACION, My.Application.IDUSUARIO)

    End Sub


    Private Sub IniciarAplicacion()

        InfoUsuario()

        InfoBD()

        ValidarVersiones(My.Application.IDAPLICACION)

        If ConectarUsuarioAAplicacionSinSeguridad(My.Application.IDUSUARIO, My.Application.IDAPLICACION, My.Computer.Name.ToString, My.Application.Info.Version.ToString) = False Then

            Me.Close()

        Else

            LogueoExitoso = True

        End If



    End Sub

    Private Function ConectarUsuarioAAplicacionSinSeguridad(ByVal unUsuario As Integer, ByVal unaAplicacion As Integer, ByVal unaPC As String,

                                         ByVal unaVersion As String) As Boolean

        mDtResultado = New DataTable

        ResuBoolean = False

        mDtResultado = AccesoBase.SetSP("SP_HERRAMIENTAS_SIGMA_CONECTAR_USUARIO_A_APLICACION_SIN_BLOQUEO").SetParam(unUsuario, unaAplicacion, unaPC, unaVersion)

        If mDtResultado IsNot Nothing Then

            ' 1 - INSERTO CORRECTAMENTE

            '-1 - FALLO EL INSERT

            ' 2 - HIZO EL UPDATE DEL ESTADO CORRECTAMENTE

            '-2 - FALLO EL UPDATE DEL ESTADO 

            Select Case mDtResultado.Rows(0).Item(0)

                Case 1

                    ResuBoolean = True

                Case -1

                    GestorMensajes.MensajeDelSistema(MensajeSistema.TipoDeMensaje.Errores, "Falló el ingreso del dato en la tabla 'HERRAMIENTAS_SIGMA_USUARIOS_CONECTADOS'").ShowDialog()

                Case 2

                    ResuBoolean = True

                Case -2

                    GestorMensajes.MensajeDelSistema(MensajeSistema.TipoDeMensaje.Errores, "Falló la actualización del dato en la tabla 'HERRAMIENTAS_SIGMA_USUARIOS_CONECTADOS'").ShowDialog()

            End Select

        Else

            ResuBoolean = False

        End If


        Return ResuBoolean

    End Function

    Private Sub ValidarVersiones(ByVal unIdAplicacion As Integer)

        Try

            mDtResultado = New DataTable

            mDtResultado = AccesoBase.SetSP("SP_MAESTRO_VERSIONES_LEER").SetParam(unIdAplicacion)

            If mDtResultado IsNot Nothing Then

                If mDtResultado.Rows(0).Item("VERSIONACTUAL") = My.Application.Info.Version.ToString Then

                    'Ok tiene la version actual

                Else

                    If mDtResultado.Rows(0).Item("VERSIONANTERIOR") = My.Application.Info.Version.ToString Then

                        'Tiene la versión anterior

                        If mDtResultado.Rows(0).Item("URGENTE") = 0 Then

                            'No es urgente

                        Else

                            'La actualización debe ser inmediatamente

                            GestorMensajes.MensajeDelSistema(MensajeSistema.TipoDeMensaje.Adveretencia, "Su versión está desactualizada, por favor salga del Sigma y vuelva a ingresar.").ShowDialog()


                            Application.ExitThread()

                        End If

                    Else

                        'Tiene una versión no registrada - mail a sistemas


                        'EnviarMail("desarrollo@mimo.com.ar", "Sigma - Versión no registrada", "URGENTE. La computadora " & My.Computer.Name & " (usuario " & My.Application.IDUSUARIO & ") posee una versión no registrada de la aplicación: " & My.Application.Info.AssemblyName & " (" & VVidaplic & "). version: " & My.Application.Info.Version.ToString)


                        GestorMensajes.MensajeDelSistema(MensajeSistema.TipoDeMensaje.Adveretencia, "Su versión no está registrada. Envío de email automático a Sistemas.").ShowDialog()

                        Application.ExitThread()

                    End If

                End If

            Else

                GestorMensajes.MensajeDelSistema(MensajeSistema.TipoDeMensaje.Adveretencia, "Ocurrio un error al validar la versión, se cerrará la aplicación. ").ShowDialog()

                Application.ExitThread()

            End If

        Catch ex As Exception

            GestorMensajes.MensajeDelSistema(MensajeSistema.TipoDeMensaje.Adveretencia, "Ocurrio un error al validar la versión, se cerrará la aplicación. " & vbCrLf & ex.Message.ToString).ShowDialog()

            Application.ExitThread()

        End Try

    End Sub

    Public Sub InfoBD()


        If AccesoBase.ObtenerBase <> "SIGMA" Then

            LABASE = " | Base: " & UCase(AccesoBase.ObtenerBase)

            SERVIDOR = " | Servidor: " & IIf(UCase(AccesoBase.ObtenerServidor) = "SR01SIG01" Or UCase(AccesoBase.ObtenerServidor) = "192.168.1.20", "PRODUCCIÓN", "TESTING")

        Else

            LABASE = ""

            'SERVIDOR = " | Servidor: " & UCase(objRemRN.ppServidor)

            SERVIDOR = " | Servidor: " & IIf(UCase(AccesoBase.ObtenerServidor) = "SR01SIG01" Or UCase(AccesoBase.ObtenerServidor) = "192.168.1.20", "PRODUCCIÓN", "TESTING")

        End If


        Me.Text = Me.Text & SERVIDOR & LABASE & " | Versión  " & My.Application.Info.Version.ToString


        ''Cargo la infro al supertip

        'Dim sTooltip2 As SuperToolTip = New SuperToolTip

        'Dim args As SuperToolTipSetupArgs = New SuperToolTipSetupArgs

        'args.Title.Text = "Mensaje del sistema"

        'args.Contents.Text = "Usted se encuentra en: " & vbCrLf & SERVIDOR & LABASE & vbCrLf & " | Versión  " & My.Application.Info.Version.ToString

        'args.Contents.Image = My.Resources.database_32x32

        ''args.Footer.Text = "Equipo de sistemas"

        'sTooltip2.Setup(args)


        '' Assign the created SuperToolTip to a BarItem.

        ''BarStaticItem_BASE.SuperTip = sTooltip2

    End Sub


    Private Sub InfoUsuario()

        sUsuario = ObtenerUsuarioLogueado(My.Application.IDUSUARIO)


    End Sub


    Private Function ObtenerUsuarioLogueado(ByVal idUsuario As Integer) As String

        mDtResultado = New DataTable

        mDtResultado = AccesoBase.SetSP("SP_ECOMMERCE_DEVOLUCION_OBTENER_USUARIO_LOGUEADO").SetParam(idUsuario)

        If mDtResultado IsNot Nothing Then

            Return mDtResultado.Rows(0).Item(0)

        Else

            Return Nothing

        End If

    End Function


    Private Sub BBI_Devoluciones_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BBI_Devoluciones.ItemClick

        Try


            FrmGestiondeDevolucion = New GestiondeDevolucion

            FrmGestiondeDevolucion.Show()

        Catch ex As Exception

            GestorMensajes.MensajeDelSistema(MensajeSistema.TipoDeMensaje.Errores, "#ERROR: al intentar abrir 'Gestión de Devolucion'." & vbCrLf & ex.Message.ToString).ShowDialog()

        End Try

    End Sub


    Private Sub BBI_AuditoriaCorreo_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BBI_AuditoriaCorreo.ItemClick

        Try


            FrmAuditoria = New AuditoriaCorreos

            FrmAuditoria.Show()

        Catch ex As Exception

            GestorMensajes.MensajeDelSistema(MensajeSistema.TipoDeMensaje.Errores, "#ERROR: al intentar abrir 'Gestión Auditoria de Correos'." & vbCrLf & ex.Message.ToString).ShowDialog()

        End Try

    End Sub


#End Region


End Class

No hay comentarios:

Publicar un comentario

Los mail de oulook no se pueden reenviar.

 cuando en el asunto poseen un caracter especial por ejemplo @#$ los correos no salen y no te muestra ningun correo de rebote, especialmente...