示例#1
0
 public static XmlDocument ConsultaUsuario(string numEmpl, string usuaEmpl)
 {
     return(MngNegocioEmpleadoRol.GetUserDataByNumEmpleado(numEmpl, usuaEmpl));
 }
示例#2
0
        public static bool ValidausuarioIpad(string Usuario_TVA, string Pass_Desencript)
        {
            XmlDocument xml = new XmlDocument();
            DataSet     ds  = new DataSet();
            string      Pass_Desencriptado = "";
            string      userDesencriptado  = "";
            string      usuario            = "";

            string UsuarioTVA = string.Empty;
            bool   isUserName = false;

            try
            {
                Pass_Desencriptado = Pass_Desencript;
                userDesencriptado  = Usuario_TVA;

                string TipoUsuario = userDesencriptado.ToUpper().Replace("TVA", "").Replace("PTV", "");

                if (isNumeric(TipoUsuario))
                {
                    isUserName = false;
                    UsuarioTVA = userDesencriptado.ToUpper();
                    usuario    = userDesencriptado.ToUpper();
                }
                else
                {
                    isUserName = true;
                    usuario    = userDesencriptado.ToUpper();
                    XmlDocument DatosUsua = MngNegocioEmpleadoRol.GetUserDataByNumEmpleado("", usuario);
                    string      NumUsua   = (DatosUsua.GetElementsByTagName("NUMUSUA").Count > 0) ? DatosUsua.GetElementsByTagName("NUMUSUA")[0].InnerText : "";
                    if (userDesencriptado.ToUpper().Contains("TVA"))
                    {
                        UsuarioTVA = "TVA" + NumUsua;
                    }
                    else if (userDesencriptado.ToUpper().Contains("PTV"))
                    {
                        UsuarioTVA = "PTV" + NumUsua;
                    }
                    else
                    {
                        UsuarioTVA = "TVA" + NumUsua;
                    }
                }



                string respuesta = string.Empty;


                LDAPUser ldapUser = new LDAPUser();

                try
                {
                    if (isUserName)
                    {
                        ldapUser = ActiveDirectory.GetCurrentUser2(userDesencriptado.ToUpper(), Pass_Desencriptado);
                    }
                    else
                    {
                        ldapUser = ActiveDirectory.GetCurrentUser(userDesencriptado.ToUpper(), Pass_Desencriptado);
                    }
                }
                catch { ldapUser = null; }


                if (ldapUser != null)
                {
                    if (AutenticaUsuario.Validar("", userDesencriptado, Pass_Desencriptado))
                    {
                        XmlDocument UserData = new XmlDocument();
                        if (isUserName)
                        {
                            UserData = MngNegocioEmpleadoRol.GetUserDataByNumEmpleado("", ldapUser.LoginName);
                        }
                        else
                        {
                            UserData   = MngNegocioEmpleadoRol.GetUserDataByNumEmpleado(ldapUser.EmployeeID, "");
                            isUserName = true;
                        }
                    }
                    else
                    {
                    }
                }
                else
                {
                    try
                    {
                        if (isNumeric(TipoUsuario))
                        {
                            respuesta = Llave.validaEmpleado(userDesencriptado, Pass_Desencriptado);
                        }
                        else
                        {
                            respuesta = Llave.validaEmpleado(UsuarioTVA, Pass_Desencriptado);
                        }
                        xml.LoadXml(respuesta);
                    }
                    catch (Exception ex)
                    {
                        THE_LogError oLogErrores = new THE_LogError();
                        oLogErrores.EmplUsua      = UsuarioTVA.Replace("TVA", "").Replace("PTV", "");
                        oLogErrores.DirIP         = "";
                        oLogErrores.Error         = ex.Message + "\n" + ex.StackTrace.ToString();
                        oLogErrores.Pantalla      = "Autenticausuario";
                        oLogErrores.MachineName   = "";
                        oLogErrores.FechaCreacion = DateTime.Now;
                        oLogErrores.Dominio       = "";
                        MngNegocioLogErrores.GuardarLogErrores(oLogErrores);
                    }

                    if ((respuesta.IndexOf("Respuesta=\"[OK]\"") != -1) || respuesta.IndexOf("0 - [") != -1)
                    {
                        string numeroUsuario = xml.FirstChild.ChildNodes[0].Attributes["NumEmp"].Value;

                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }