Está en la página 1de 26

Documentacin:GestordeunaBiblioteca

(Eclipse,MySQL,JDK1.6+)
JoseAlbertoBentezAndrades


MetodologayTecnologadelaProgramacin
2IngenieraInformtica,NIF:71454586A
Infjab02@estudiantes.unileon.es
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina2
Infjab02@estudiantes.unileon.es
NDICE
PRLOGO.
1. ESPECIFICACINDELAPRCTICA.
1.1.CLASESDEOBJETOS
2. ARQUITECTURADELAAPLICACIN.
2.1. DISEODELABASEDEDATOS.
2.1.1. TablaRoles.
2.1.2. TablaTitulaciones.
2.1.3. TablaUsuarios.
2.1.4. TablaLibros.
2.1.5. TablaRevistas.
2.1.6. TablaPrestamos.
2.1.7. TablaReservas.
2.1.8. TablasBuzonyBuzon2.
2.1.9. DiagramaEntidadRelacin.
3. FUNCIONAMIENTODELPROGRAMA.

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina3
Infjab02@estudiantes.unileon.es
PRLOGO
Esta segunda prctica pretende servir de ejemplo como aplicacin de la
Programacin Orientada a Objetos. Decimos que estamos realizando POO cuando
utilizamosclases,objetosyempleamoslaherencia.
Laherenciaesunmecanismoparaconstruirclasesderivadasdeotras,deforma
que esta nueva clase tiene todas las caractersticas de la clase padre (atributos y
mtodos) y permite redefinirlas as como aadir otras nuevas. Con ello conseguimos,
entreotrascosas,facilitarlaconstruccindeTADypermitirlareutilizacindecdigo.
Acontinuaciniremosviendocomoestosconceptosseaplicanenelprograma
GestordeunaBiblioteca.
1.ESPECIFICACINDELAPRCTICA
Elsegundoprogramaconsistirenlaconstruccindeunabibliotecaorientadaa
objetos para una biblioteca. La biblioteca se probar con el desarrollo de las
simulacionesdeprstamos,insercindeusuarios,insercindefondos
1.1.CLASESDEOBJETOS
Estassonlasclasesdeobjetosqueheutilizadopararealizarelgestordelabiblioteca:
controlarLongitud:ClasemediantelacualcontrololalongituddelosJTextField
ysisonnumricosoalfanumricos.
MiLogin :En ella creoun objeto ventana quepide al usuario los datos para su
autentificacin en la biblioteca, Usuario y Contrasea, validndolo mediante
bsquedasenlabasededatos.
MiMysql:SeencuentrantodaslasconsultasSQLquenecesitoparagestionarla
biblioteca.Porejemploalahoradeconsultarfondosenunabiblioteca,aquestnlos
mtodosquenosdevuelvenlatablaparamostrarenpantallaalosusuarios.
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina4
Infjab02@estudiantes.unileon.es
ModeloTablaBuzon : Encargada de devolvernos la tabla con los mensajes que
tengaunusuarioensuBuzn.
RolSuperior:EsutilizadacomopuentedeaccesoentreMiMysqlyotrasclases,
esunaclasedeayudaauxiliar.
VentanaBuzon : Es la encargada de devolvernos el objeto en el cual veremos
nuestrobuzndemensajes.
VentanaConsultarFondo:Muestralaventanaenlacualrealizaremosnuestras
consultasdeFondosdentrodenuestrabiblioteca.
VentanaConsultarPrestamo : Al igual que la anterior, slo que esta vez para
mostrarlosPrestamosquequeremosbuscar.
VentanaConsultarUsuario Igual que las dos anteriores, pero mostrando los
Usuarios.
VentanaEstadisticas : Muestra la ventana donde realizaremos nuestro clculo
deestadsticasdelabiblioteca.
VentanaInsertarFondo : Interfaz mediante la cual insertaremos Libros o
Revistasennuestrabiblioteca.
VentanaInsertarUsuario : Interfaz mediante la cual insertaremos Usuarios en
nuestrabiblioteca.
VentanaMensajeEntrada : Encargada de mostrar los mensajes que recibimos
ennuestrabandejadeentrada.
VentanaMensajeSalida:Muestralaventanaderedaccindeunmensajepara
enviaraunusuario.
VentanaPrincipal: Muestra la ventana principal del programa con su barra
superiordemencorrespondientedependiendodelniveldelusuario.
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina5
Infjab02@estudiantes.unileon.es
ElconjuntodeoperacionesparaunobjetodelaclaseMiLogines:
publicMiLogin()
o Constructordelaclase.
protectedJComponentcreateButtonPanel()
o CreaelpaneldebotonesparalaventanadeMiLogin.
privatestaticvoidcreateAndShowGUI()
o Encargadodemostrarlapartegrficaenpantalla.
publicstaticvoidmain(String[]args)throwsException
o Funcinprincipaldelprograma.
ParalaclasedeobjetoMiMysql:
publicMiMysql()
o Funcinprincipaldelprograma.
publicstaticvoidConectaDB()throwsException
o Encargadodeconectarconlabasededatos.
publicstaticvoidLlamadaDB(Stringllamada)
o Encargadodehacerllamadasalabasededatossinobtenerresultados,
porejemploUPDATE,DELETE,INSERT
publicstaticvoidEntraDB()
o FuncinqueconectaconlabasededatosJABAGB.
publicstaticStringLogin(StringDNI,booleanEjecuta)
o Seencargadeverificarelusuarioylacontraseadelusuariocuandose
autentifican.
public static DefaultTableModel ConsultaUsuarioDB(String Llamada,String
nivel)
o Mediante esta funcin recibiremos una tabla con los datos de los
usuariosquehemosbuscadopreviamente.
public static DefaultTableModel ConsultaFondoDB(String Llamada,
booleanlibro)
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina6
Infjab02@estudiantes.unileon.es
o Conella,losadministradoresytcnicosrecibirnlatabladeFondosque
hanbuscado,pudiendomodificarlosdatosquedeseensobreella.
public static NonEditableTableModel ConsultaFondoDBLector(String Llamada,
booleanlibro)
o Su funcin es igual al procedimiento anterior, slo que la tabla que
devuelve est restringida para que los usuarios no puedan modificar la
tabla.
public static ModeloTablaBuzon ConsultaMensajesBuzon(String
queBuzon,StringLlamada,booleantecnico)
o Devuelvelosmensajes,tantoenviadoscomorecibidos,delusuarioque
estautentificadoenelgestor.
publicstaticDefaultTableModelConsultaPrestamo(StringLlamada)
o Devuelve la tabla de prstamos de un usuario concreto, o de diversos
volmenes,segnhayasidolabsquedadelAdministradoroTcnico.
publicstaticDefaultTableModelConsultaPrestamoLector(StringLlamada)
o Funcin equitativa a la anterior, con la salvedad de que es solamente
paraquecadalectorvisualicesusprstamos.
publicstaticString[]RecogeMensaje(Stringidmensaje)
o Encargadodedevolverunmensajeconcretoparapodervisualizarseen
pantalla.
publicstaticString[]DameTitulaciones()
o Funcin encargada de enviar las titulaciones que estn en la tabla
titulaciones.
publicintultimaID()
o Devuelvelaltimaidaadidaaunatabladelabasededatos.
publicStringdame_fecha(Stringactual,booleancorto)
o Funcinqueutilizoparaconocerlafechaactualoparaconocerlafecha
actualsumndole2daso21das,dependiendodeltipodeprstamo.
publicintresta_fecha(Stringfecha,booleancorto)
o Funcin auxiliar que devuelve la fecha restada a un intervalo de das
definidoporelprogramador.
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina7
Infjab02@estudiantes.unileon.es
publicintgetNumCopiasFondo(Stringllamada)
o Funcin que fue diseada para obtener el nmero de copias de un
fondo,yqueutilizoalolargodelprogramaparaobtenermsnmeros
deseleccionesquehagoenlabasededatos.
publicStringgetCadena(Stringllamada)
o Funcinquerecibeunacadenaenunabsquedaenlabasededatos.
publicintgetNumPrestamosLector(Stringidusuario)
o Devuelveelnmerodeprstamosqueposeeunlectorensupoder.
publicintdevolverConsultas()
o Encargada de hacer las devoluciones de las consultas al abrirse el
programacadada.
publicvoidcomprobarCaducados()
o Gestordefondosquecaducanencargadodeavisaralosusuariosdela
finalizacindeunodesusprstamos.
publicvoidcomprobarReservas()
o Encargadodeborrarlasreservascaducadas.
publicstaticJPanelcomprobarReservasLector(Stringid)
o Avisaalusuariodesitienereservasdisponiblespararecogerprestadas.
ParalaclasedeobjetosRolSuperior:
publicRolSuperior()
o Constructordelaclase.
protectedintsetDatosUsuarios(Stringdatos[])
o Mtodoencargadodeinsertarunusuarioenlabasededatoscuandoel
tcnicooadministradorloordena.
protectedvoidsetDatosFondos(Stringdatos[],booleanesLibro)
o Mtodoqueseencargadeinsertarunfondo(libroorevista)enlabase
dedatos,cuandoeltcnicooadministradorloordena.
protected DefaultTableModel getTablaBusquedaUsuario(String busqueda,
Stringcriterio,Stringnivel)
o Mtodoquedevuelveunatablacuandosebuscanusuarios.
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina8
Infjab02@estudiantes.unileon.es
protectedDefaultTableModelgetTablaBusquedaFondo(Stringbusqueda,String
criterio,booleanesLibro)
o Mtodoquedevuelveelresultadodeunabsquedadelibros.
protected NonEditableTableModel getTablaBusquedaFondoLector(String
busqueda,Stringcriterio,booleanesLibro)
o Poseelamismafuncinquelaanterior,sloqueestavezelresultadoes
paraunlectorenlugardeparaunadministrador.
protectedString[]getDatosMensaje(Stringidmensaje)
o Devuelve los datos de un mensaje (remitente, asunto, texto del
mensaje..).
protectedString[]getTitulaciones()
o Devuelvelastitulacionesquehayenesemomento.
staticpublicvoidcomprobacionesIniciales()
o Realizalascomprobacionesinicialesdecaducados,reservas
ParalaclasedeobjetosVentanaBuzon:
publicVentanaBuzon(StringNSOCIO,StringNivel)
o Constructordelaventanaquemuestraelbuzndemensajes.
classSharedModelDemoextendsJPanel
o ClaseinternaquedevuelveunJPanelparamostrarenpantalla.
o protectedJComponentcreateToolBar()
Crealabarradeherramientassuperiordenuestrobuzn.
o protectedImageIconcreateImageIcon(Stringpath)
Crea los iconos para los botones que creo, es una funcin
auxiliarqueestenmsclases.
o publicvoidactionPerformed(ActionEvente)
Desde el actionPerformed controlo todos los eventos de los
botones,actualizaciones,modificaciones,etc

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina9
Infjab02@estudiantes.unileon.es
ParalaclasedeobjetosVentanaConsultarFondo:
publicVentanaConsultarFondo(Stringnivel,StringNSocio)
o Constructordelaclase.
classConsultorioFondoextendsJPanel
o Clase interna que devuelve el panel a mostrar por la ventana de
consultadefondo.
ParalaclasedeobjetosVentanaConsultarPrestamo:
publicVentanaConsultarPrestamo(Stringnivel,StringNSocio)
o Constructordelaclase.
classConsultorioPrestamoextendsJPanel
o Clase interna que devuelve el panel a mostrar por la ventana de
consultadeprstamo.
ParalaclasedeobjetosVentanaConsultarUsuario:
publicVentanaConsultarUsuario(Stringnivel)
o Constructordelaclase.
classConsultorioFondoextendsJPanel
o Clase interna que devuelve el panel a mostrar por la ventana de
consultadeusuarios.
ParalaclasedeobjetosVentanaEstadisticas:
publicVentanaEstadisticas(Stringnivel,StringNSocio)
o Constructordelaclase.
classConsultorioFondoextendsJPanel
o Clase interna que devuelve el panel a mostrar por la ventana de
consultadeestadsticas,conelresultadohallado.

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina10
Infjab02@estudiantes.unileon.es
ParalaclasedeobjetosVentanaInsertarFondo:
publicVentanaConsultarFondo()
o Constructordelaclase.
classFormularioInsertarFondoextendsJPanel
o Clase interna que devuelve el panel a mostrar por la ventana de
insercindeunfondo.
ParalaclasedeobjetosVentanaInsertarUsuario:
publicVentanaConsultarUsuario()
o Constructordelaclase.
classFormularioInsertarUsuarioextendsJPanel
o Clase interna que devuelve el panel a mostrar por la ventana de
insercindeunusuario.
ParalaclasedeobjetosVentanaMensajeEntrada:
publicVentanaMensajeEntrada(Stringidmensaje,booleanesprestamo)
o Constructordelaclase.
classMensajeUsuarioextendsJPanel
o Clase interna que devuelve el panel a mostrar por la ventana de
mensajedeentrada.
ParalaclasedeobjetosVentanaMensajeSalida:
publicVentanaMensajeSalida()
o Constructordelaclase.
classMensajeUsuarioextendsJPanel
o Clase interna que devuelve el panel a mostrar por la ventana de
mensajedesalida.

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina11
Infjab02@estudiantes.unileon.es
ParalaclasedeobjetosVentanaPrincipal:
publicclassVentanaPrincipalextendsJFrame
o Constructordelaclase.
classMainDesktopPaneextendsJDesktopPane
o Clase interna mediante la cual creo un DesktopPane con un fondo
asignadoporm.
2.ARQUITECTURADELAAPLICACIN.
Laelaboracindeunaprcticamedianaconllevaunabuenafasedeanlisisdel
problemaydiseodelprograma,yaquesinoseguimosbienlasespecificacionesdel
programa,podemoscrearunaaplicacinquenohaceloqueelclientenospide.
Otroproblemamuyfrecuente,eslamalaeleccindeunostiposdedatosyuna
malacodificacindelprograma,yaqueesoconllevaraaunprogramaineficiencia,ya
seaporqueposeemuchaslneasdecdigoparahaceralgosencillo,osimplemente
porquealahoradelaejecucin,elprogramafuncionamuylentamenteyconerrores.
Enesteapartadovoyaexplicareldiseodelabasededatosqueheutilizadopara
hacerelprograma,ytambindesglosarelfuncionamientodelasunidadesydel
programaprincipal.
2.1. DISEODELABASEDEDATOS.
Segnlasespecificacionesdelprograma,debemosalmacenarlossiguientesdatos
enlabasededatos:Usuarios,Libros,Revistas,PrestamosyReservas.Tambin
necesitaremosalmacenarmensajesenalgunapartedelabasededatos,asquelas
tablasquehenecesitadopararealizarelgestorsonlassiguientes:Roles,Titulaciones,
Usuarios,Libros,Revistas,Prestamos,Reservas,BuzonyBuzon2.
2.1.1.TablaRoles.
LatablaRolesesenlaquealmacenaremoslosnivelesqueexistenentreusuarios,que
en principio son 4, Administrador, Tecnico, LectorSocio y LectorBasico.
Campos:
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina12
Infjab02@estudiantes.unileon.es
ID:AlmacenaremosunidprimarioparacadaROLexistente.
ROL:Nombreparacadanivel.
2.1.2.TablaTitulaciones.
LatablaTitulacionesesenlaquealmacenaremoslasposiblestitulacionesquepueden
tenerlosusuarios.Campos:
Titulo:Almacenamoselnombredelacarreraqueestudiellector.
2.1.3.TablaUsuarios.
La tabla Usuarios es en la que almacenaremos los usuarios y sus respectivos datos,
estformadaporlossiguientescampos:
Nombre:Enlalmacenaremoselnombredecadausuario.
Apellidos:Almacenaremoslosapellidosdelusuario.
Telefono:Seguardareltelfonodecadausuario.
Direccin: Almacenaremos tambin la direccin dnde residen nuestros
usuarios.
Titulacion: Guardaremos tambin la informacin de qu carrera estudia
nuestrolector.
NSocio: Id por la cual identificaremos a cada usuario en nuestro gestor, es la
claveprimariadelatablaUsuarios.
ROL:Almacenaremoselnivelqueposeeelusuario,Administrador,Tcnico,
LectorSociooLectorBasico.
DNI:ElDNIdellectortambinsealmacenar.
Password:Yunacontraseaparaidentificarseenelgestor.
2.1.4.TablaLibros.
La tabla Libros es en la que almacenaremos todos los libros de la biblioteca. Los
campossonlossiguientes:
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina13
Infjab02@estudiantes.unileon.es
ID:Unaidprimariaparacadalibro.
Titulo:Ttulodecadalibro.
Autores:Autoresdecadalibro.
Editorial:Quempresaediteselibro.
Edicin:Quedicinllevanyadellibro.
Anio:Aodepublicacindecadalibro.
Paginas:Cuntaspginasposee.
Signatura:Aqusignaturapertenece.
ISBN:ElcdigoISBNqueposee.
CopiasSala:Nmerodecopiasquehayparaconsultas.
CopiasPrestamo:Nmerodecopiasquehayparaprstamo.
PrestadasSala:Nmerodelibrosprestadosactualmenteparaconsultas.
PresadasPrestamo:Nmerodelibrosprestadosparaprstamoactualmente.
CortoPlazo:Almacenasiesdecortoplazo(2das)ono(21das).
2.1.5.TablaRevistas.
La tabla Libros es en la que almacenaremos todos los libros de la biblioteca. Los
campossonlossiguientes:
ID:Unaidprimariaparacadarevista.
Titulo:Ttulodecadarevista.
Autores:Autoresdecadarevista.
Editorial:Quempresaediteserevista.
Volumen:Nombredevolumenasignadoaesarevista.
VolumenCreado: Variable booleana que indica si esa revista est asignada
algnvolumenoestsuelta.
VolumenReal: Nombre del volumen real de ese libro, si est asignado a
alguno..
Nmero:Aodepublicacindecadarevista.
Anio:Aodepublicacindecadarevista.
Paginas:Cuntaspginasposee.
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina14
Infjab02@estudiantes.unileon.es
Signatura:Aqusignaturapertenece.
CopiasSala:Nmerodecopiasquehayparaconsultas.
CopiasPrestamo:Nmerodecopiasquehayparaprstamo.
PrestadasSala:Nmeroderevistaprestadosactualmenteparaconsultas.
PresadasPrestamo:Nmerodelrevistaprestadosparaprstamoactualmente.
2.1.6.TablaPrestamos.
La tabla Prestamos es en la que almacenaremos todos los prstamos de la biblioteca.
Loscampossonlossiguientes:
Id_prestamo:Unaidprimariaparacadaprstamo.
Id_revista: Si el prstamo es de una revista, almacenamos la id de la revista,
sinoelcamposernull.
Id_libro: Si el prstamo es de un libro, almacenamos la id del libro, sino,
almacenaremosnull.
NSocio:Iddelsocioquerealizaeseprstamo.
EsLibro:Booleanoqueindicasiesunlibroounarevistaloqueprestamos.
Fecha_inicio:Fechaenlaqueserealizaelprstamo.
Fecha_fin:Fechaenlaquedebendevolverelprstamo.
Fecha_devuelto:Fechaenlaquedevuelvenelprstamo.
Devuelto:Booleanoqueindicasiellibroyaestdevuelto.
Consulta:BooleanoqueindicasiellibroesdeSalaodePrestamo.
AvisoEnviado: Booleano que nos indica si ya le hemos enviado un mensaje al
usuarioindicandoelvencimientodesulibro.

2.1.7.TablaReservas.
La tabla Prestamos es en la que almacenaremos todos los prstamos de la biblioteca.
Loscampossonlossiguientes:
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina15
Infjab02@estudiantes.unileon.es
Id_reserva:Unaidprimariaparacadareserva.
Id_revista: Si el prstamo es de una revista, almacenamos la id de la revista,
sinoelcamposernull.
Id_libro: Si el prstamo es de un libro, almacenamos la id del libro, sino,
almacenaremosnull.
NSocio:Iddelsocioquerealizaeseprstamo.
EsLibro:Booleanoqueindicasiesunlibroounarevistaloqueprestamos.
Puede:Booleanoquenosdicesilareservayaestdisponibleparaconvertirse
enprstamo.
Fecha_reserva:Fechaenlaqueserealizaelprstamo.
Fecha_puede: Fecha en la que se puede coger prestado ya ese libro de esa
reserva.
2.1.8.TablasBuzonyBuzon2
Las tablas Buzon y Buzon2 almacenan los mensajes de los usuarios, usamos 2
porquealahoradeborrarunmensaje,siunusuarioborraunmensajedeentrada,el
usuario que envi ese mensaje tambin tendra borrado su mensaje de la carpeta
enviados,paraquenohayaconflictossecreanestasdostablasqueposeenlosmismos
campos:
Id_mensaje:idprimariaparacadamensajeenviado:
Id_remitente:iddelremitentedelmensaje.
Id_receptor:iddelreceptordelmensaje.
Fecha_envio:fechaenlaquefueenviadoelmensaje.
ParaPrestamo: Booleano que indica si el mensaje es un prstamo o es un
mensajenormal.
NoNuevo:Booleanoqueindicasielmensajeesnuevoono.
Asunto:Almacenaelasuntodelmensaje.
Mensaje:Almacenaeltextodelmensajeenviado.

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina16
Infjab02@estudiantes.unileon.es
2.1.9.DIAGRAMAENTIDADRELACION.
Paraqueseveanbienlasreferencias,voyaponerunafotoenlaqueslosemuestran
lasclavesprimariasdelastablasylosnombresdelasmismas,ydebajoladetallada:

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina17
Infjab02@estudiantes.unileon.es
3.FUNCIONAMIENTODELPROGRAMA.
Elprogramacomienzaconunaventanadeautentificacindondeelusuariodebe
introducirsuusuarioysucontrasea,esdecir,sunmerodesocioysucontrasea.

Una vez autentificado el usuario, se abre una ventana principal con todas las
opciones en una barra de herramientas superior, esta barra de herramientas es
distinta dependiendo el nivel que posea el usuario, es decir, si es Administrador o
Tecnico tiene una serie de opciones que los LectoresSocios y LectoresBasicos no
tienen.

Foto:Pantallaprincipaldelgestor.
GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina18
Infjab02@estudiantes.unileon.es
Una vez autentificado, si somos Administradores o Tecnicos podremos
insertarusuariosdesdelasiguienteinterfazdeinsercin:

Sifaltaalgndatoporespecificarnosdarunerroralintentarinsertareseusuario:

De lo contrario, si se inserta bien el usuario, obtendremos un mensaje como el


siguiente:

Tambinpuedeninsertarfondos,yelmensajedeaceptacinsera:

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina19
Infjab02@estudiantes.unileon.es
Tambin siendo Administradores o Tecnicos tenemos la posibilidad de consultar
usuarios, pudiendo modificar los datos que ya hemos insertado a la hora de
introducirlos en la base de datos. La interfaz grfica de consulta de usuarios es la
siguiente:

YlainterfazparaconsultasdelibrosparaAdministradoresyTecnicoses:

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina20
Infjab02@estudiantes.unileon.es
En ella se pueden modificar los datos de los libros/revistas y a su vez crear
volmenesderevistasnuevos.
Para los usuarios LectoresBasicos y LectoresSocios la interfaz de consulta de
fondoseslasiguiente:

Pueden realizar un prstamos pulsando el botn Prestamoo realizar una consulta


pulsandoSala.
Cuandorealizanunprstamoconxitolaventanaqueapareceeslasiguiente:

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina21
Infjab02@estudiantes.unileon.es
Situvieselibrosadevolverofondoscaducados,mostraraelsiguientedialogo:

Siellibronosepudiesecogerprestadoenesemomento,mostraraelsiguiente
mensaje:

Permitiendoalusuariorealizarunareservadeeselibroorevista.Sielusuario
aceptalareserva,apareceraunmensajesimilaralsiguiente:

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina22
Infjab02@estudiantes.unileon.es
TambintenemosuninterfazdeconsultasdePrstamosqueesdistintopara
usuariosAdministradoresoTecnicosqueparausuariosLectores.Paralos
primeros,elinterfazesas:

ParalosLectores,elinterfazeselsiguiente:

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina23
Infjab02@estudiantes.unileon.es
Puedenpedirunaampliacindeprstamo,queasuvezpuedeestardenegadao
aceptada:

Porotraparte,tenemoslaopcindemirarnuestroBuzndemensajes:

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina24
Infjab02@estudiantes.unileon.es
Yunabandejadeenviadostalqueas:

Siqueremosleeroenviarunmensaje,tendremosunasventanascomolas
siguientes:

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina25
Infjab02@estudiantes.unileon.es
Sielmensajeseenvacorrectamente,obtendremoselsiguientemensaje:

Laventanadeestadsticaseslasiguiente:

Enrelacinalborradodeusuarios,siunusuariotuvieseunprstamoensupoder,
ylointentsemosborrar,elprogramamostraraelsiguienteerror:

GestordeunaBibliotecaMetodologayTecnologadelaProgramacin

JoseAlbertoBentezAndrades[71454586A] Pgina26
Infjab02@estudiantes.unileon.es
Yyaporltimo,muestrodosimgenesdeloqueseralainterfazparaenviarSMSy
Correoselectrnicosalosusuarios,peroquenoestimplementado.

También podría gustarte