/// <summary> /// Metodo que valida si el username ya existe en la Base de Datos /// </summary> /// <param name="username">El username que se desea registrar</param> /// <returns>Verdadero si es valido, falso sino es valido</returns> public bool ValidarUsernameUnico(String username) { //Indicaremos si se encontro o no el username en la BD bool valido; try { /*Creamos una lista de parametros y le agregamos los valores correspondientes a las variables de stored procedure*/ List<Parametro> listaParametros = new List<Parametro>(); Parametro parametroConsulta; //Aqui se almacenara lo consultado de la BD List<Resultado> resultado; //Si se esta mandando un username que no es nulo if(username != null) { parametroConsulta = new Parametro(RecursosBaseDeDatosModulo7.UsernameUsuario,SqlDbType.VarChar, username,false); listaParametros.Add(parametroConsulta); parametroConsulta = new Parametro(RecursosBaseDeDatosModulo7.Resultadorepetido, SqlDbType.VarChar, true); listaParametros.Add(parametroConsulta); //Ejecutamos el stored procedure y obtenemos el output resultado = EjecutarStoredProcedure(RecursosBaseDeDatosModulo7.ProcedimientoUsuarioUnico, listaParametros); } else { //Escribimos el error y Lanzamos la excepcion UsernameVacioException usernameVacio = new UsernameVacioException( RecursosBaseDeDatosModulo7.EXCEPTION_USERNAME_VACIO_CODIGO, RecursosBaseDeDatosModulo7.EXCEPTION_USERNAME_VACIO_MENSAJE, new UsernameVacioException()); Logger.EscribirError(this.GetType().Name, usernameVacio); throw usernameVacio; } //Sino existe el username en la Base de Datos entonces es valido agregarlo if (resultado[0].valor == "") valido = true; else valido = false; return valido; } catch (SqlException e) { //Si hay error en la Base de Datos escribimos en el logger y lanzamos la excepcion BDDAOUsuarioException daoSqlException = new BDDAOUsuarioException( RecursosBaseDeDatosModulo7.EXCEPTION_BDDAOUSUARIO_CODIGO, RecursosBaseDeDatosModulo7.EXCEPTION_BDDAOUSUARIO_MENSAJE, e); Logger.EscribirError(this.GetType().Name, daoSqlException); throw daoSqlException; } catch (Exception e) { //Si existe un error inesperado escribimos en el logger y lanzamos la excepcion ErrorInesperadoDAOUsuarioException errorInesperado = new ErrorInesperadoDAOUsuarioException( RecursosBaseDeDatosModulo7.EXCEPTION_INESPERADO_CODIGO, RecursosBaseDeDatosModulo7.EXCEPTION_INESPERADO_MENSAJE, e); Logger.EscribirError(this.GetType().Name, errorInesperado); throw errorInesperado; } }
/// <summary> /// Metodo que ejecuta la consulta para eliminar un usuario de la Base de Datos /// </summary> /// <param name="username">El usuario que se desea eliminar</param> /// <returns>Verdadero si se pude eliminar, falso sino se pudo</returns> public bool EliminarUsuario(String username) { //Exito o fallo de la eliminacion bool exito; //Lista de los parametros del query List<Parametro> listaParametros = new List<Parametro>(); //Si el username tiene un valor valido creamos el parametro con su valor, sino, lanzamos la exception if(username != null) { //Creamos un nuevo parametro y lo agregamos a la lista Parametro aux = new Parametro(RecursosBaseDeDatosModulo7.UsernameUsuario, SqlDbType.VarChar, username, false); listaParametros.Add(aux); } else { //Escribimos el error y Lanzamos la excepcion UsernameVacioException usernameVacio = new UsernameVacioException( RecursosBaseDeDatosModulo7.EXCEPTION_USERNAME_VACIO_CODIGO, RecursosBaseDeDatosModulo7.EXCEPTION_USERNAME_VACIO_MENSAJE, new UsernameVacioException()); Logger.EscribirError(this.GetType().Name,usernameVacio); throw usernameVacio; } try { //Ejecutamos la consulta int resultadoQuery = EjecutarStoredProcedureAlteraFilas( RecursosBaseDeDatosModulo7.ProcedimientoEliminarUsuario, listaParametros); //Si el resultado da mayor a cero significa que se elimino un usuario if (resultadoQuery > 0) exito = true; else exito = false; //Retornamos la respuesta return exito; } catch (SqlException e) { //Si hay error en la Base de Datos escribimos en el logger y lanzamos la excepcion BDDAOUsuarioException daoSqlException = new BDDAOUsuarioException( RecursosBaseDeDatosModulo7.EXCEPTION_BDDAOUSUARIO_CODIGO, RecursosBaseDeDatosModulo7.EXCEPTION_BDDAOUSUARIO_MENSAJE,e); Logger.EscribirError(this.GetType().Name, daoSqlException); throw daoSqlException; } catch (Exception e) { //Si existe un error inesperado escribimos en el logger y lanzamos la excepcion ErrorInesperadoDAOUsuarioException errorInesperado = new ErrorInesperadoDAOUsuarioException( RecursosBaseDeDatosModulo7.EXCEPTION_INESPERADO_CODIGO, RecursosBaseDeDatosModulo7.EXCEPTION_INESPERADO_MENSAJE, e); Logger.EscribirError(this.GetType().Name, errorInesperado); throw errorInesperado; } }