public Usuario CrearUsuario(int pTipoUsuario) { Usuario mNuevoUsuario = null; switch (pTipoUsuario) { case ConstantesGestionarUsuarios.kUsuarioAdministrador: mNuevoUsuario = new Administrador(); break; case ConstantesGestionarUsuarios.kUsuarioNarrador: mNuevoUsuario = new Narrador(); break; case ConstantesGestionarUsuarios.kUsuarioFantatico: mNuevoUsuario = new Fanatico(); break; default: break; } return mNuevoUsuario; }
//Funcion que devuel true si el nombre de usuario y la contrasenas son correctas public ContenedorError UsuarioCorrecto(String pNombreUsuario, String pContrasena) { cContenedorError = new ContenedorError(0); //inicializa un contenedor de error, sin error alguno Usuario mUsuario = new Administrador(); mUsuario = UsuariosFactory.Instance.CrearUsuario(mUsuario.RecuperarTipoUsuario(pNombreUsuario)); //usando el factory de usuarios, se recontruye el usuario completo de la base de datos if (mUsuario == null) //Se comprueba que el usuario exista { cContenedorError = new ContenedorError(ConstantesGestionarUsuarios.kCodigoNombreUsuarioNoExiste); } else { mUsuario.RecuperarCuentaBaseDatos(pNombreUsuario); if (!mUsuario.CompararContrasena(pContrasena)) //Se comprueba la contrase del usuario { cContenedorError = new ContenedorError(ConstantesGestionarUsuarios.kCodigoContrasenaIncorrecta); } else { this.cUsuarioActual = mUsuario; this.cUsuarioActual.RecuperarUsuarioBaseDatos(); this.cUsuarioActual.RecuperarDatosBaseDatos(); } } return cContenedorError; //devuelve el valor de la consulta }