Пример #1
0
        /// <summary>
        /// Se hace la conexion a la base de datos para obtener los datos del usuario y llenar el objeto Cuenta
        /// </summary>
        /// <param name="nombre_usuario">Nombre de usuario</param>
        /// <returns>retorna un objeto tipo Cuenta</returns>
        public Entidad ObtenerUsuario(string nombre_usuario)
        {
            BDConexion laConexion;//COnsultar la persona
            BDConexion laConexion2;//Consultar los roles de la persona
            BDConexion laConexion3;//Crea el objeto PERSONA
            List<Parametro> parametros;
            List<Parametro> parametros2;
            Parametro elParametro = new Parametro();

            try
            {
                //laConexion = new BDConexion();
                //laConexion2 = new BDConexion();
                //laConexion3 = new BDConexion();
                parametros = new List<Parametro>();
                parametros2 = new List<Parametro>();
                string idUsuario = RecursosBDM1.idInicial;
                Cuenta laCuenta =(Cuenta) laFabrica.ObtenerCuenta_M1();

                elParametro = new Parametro(RecursosBDM1.AliasNombreUsuario, SqlDbType.VarChar, nombre_usuario, false);
                parametros.Add(elParametro);
                DataTable dt = this.EjecutarStoredProcedureTuplas(
                                RecursosBDM1.ConsultarNombreUsuarioContrasena, parametros);

                foreach (DataRow row in dt.Rows)
                {
                    laCuenta.Nombre_usuario = row[RecursosBDM1.AliasNombreUsuario].ToString();
                    laCuenta.Contrasena = row[RecursosBDM1.AliasContrasena].ToString();
                    laCuenta.Imagen = row[RecursosBDM1.AliasImagen].ToString();
                    idUsuario = row[RecursosBDM1.AliasIdUsuario].ToString();

                }

                //Llenar el usuario

                DataTable dt1 = this.EjecutarStoredProcedureTuplas(
                RecursosBDM1.ConsultarRolesUsuario, parametros);
                List<Rol> listaRol = new List<Rol>();
                foreach (DataRow row in dt1.Rows)
                {

                    Rol elRol = new Rol();
                    elRol.Id_rol = int.Parse(row[RecursosBDM1.AliasIdRol].ToString());
                    elRol.Nombre = row[RecursosBDM1.AliasNombreRol].ToString();
                    elRol.Descripcion = row[RecursosBDM1.AliasDescripcionRol].ToString();
                    elRol.Fecha_creacion = (DateTime)row[RecursosBDM1.AliasFechaCreacion];
                    listaRol.Add(elRol);
                }

                laCuenta.Roles = listaRol;

                elParametro = new Parametro(RecursosBDM1.AliasIdUsuario, SqlDbType.Int, idUsuario, false);
                parametros2.Add(elParametro);
                DataTable dt2 = this.EjecutarStoredProcedureTuplas(
                                RecursosBDM1.consultarPersona, parametros2);

                PersonaM1 laPersona = (PersonaM1) laFabrica.ObtenerPersona_M1();
                foreach (DataRow row in dt2.Rows)
                {

                    laPersona._Id = int.Parse(row[RecursosBDM1.AliasIdUsuario].ToString());
                    laPersona._Nombre = row[RecursosBDM1.AliasNombreUsuario].ToString();
                    laPersona._Apellido = row[RecursosBDM1.aliasApellidoUsuario].ToString();
                }
                laCuenta.PersonaUsuario = laPersona;

                return laCuenta;

            }
            catch (SqlException e)
            {
                throw new ExcepcionesSKD.ExceptionSKDConexionBD(RecursoGeneralBD.Codigo,
                    RecursoGeneralBD.Mensaje, e);
            }
            catch (FormatException e)
            {
                throw new ExcepcionesSKD.Modulo12.FormatoIncorrectoException(RecursosBDM1.Codigo_Error_Formato,
                     RecursosBDM1.Mensaje_Error_Formato, e);
            }
            catch (ExcepcionesSKD.ExceptionSKDConexionBD e)
            {
                throw e;
            }
            catch (Exception e)
            {
                throw new ExcepcionesSKD.ExceptionSKD(RecursoGeneralBD.Mensaje_Generico_Error, e);
            }
        }
Пример #2
0
        /// <summary>
        /// Se hace la conexion a la base de datos para validar si el correo se encuentra asociado a mas usuarios del sistema
        /// </summary>
        /// <param name="correo_usuario">Correo del usuario</param>
        /// <returns>retorna un objeto tipo Cuenta</returns>
        public String ValidarCorreoUsuario(string correo_usuario)
        {
            List<Parametro> parametros;
            Parametro elParametro = new Parametro();

            try
            {
                parametros = new List<Parametro>();
                List<String> elCorreo = new List<String>();

                elParametro = new Parametro(RecursosBDM1.aliasCorreoUsuario, SqlDbType.VarChar, correo_usuario, false);
                parametros.Add(elParametro);
                DataTable dt = this.EjecutarStoredProcedureTuplas(
                               RecursosBDM1.ValidarCorreo, parametros);

                foreach (DataRow row in dt.Rows)
                {

                    elCorreo.Add(row[RecursosBDM1.aliasCorreoUsuario].ToString());
                }
                Console.WriteLine(elCorreo.Count.ToString());
                if (elCorreo.Count == 0)
                    return null;
                else if (elCorreo.Count > 1)
                    throw new Exception(RecursosBDM1.exceptionCorreoMasUno);

                return elCorreo[0];

            }
            catch (SqlException e)
            {
                throw new ExcepcionesSKD.ExceptionSKDConexionBD(RecursoGeneralBD.Codigo,
                    RecursoGeneralBD.Mensaje, e);
            }
            catch (ExcepcionesSKD.ExceptionSKDConexionBD e)
            {
                throw e;
            }
            catch (Exception e)
            {
                throw new ExcepcionesSKD.ExceptionSKD(RecursoGeneralBD.Mensaje_Generico_Error, e);
            }
        }