This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
wiki:epims3_3:developer:ep-web [2008/03/05 15:20] dupierris |
wiki:epims3_3:developer:ep-web [2008/10/06 09:49] (current) barthe |
||
---|---|---|---|
Line 243: | Line 243: | ||
===== Archivage ===== | ===== Archivage ===== | ||
+ | |||
+ | |||
==== Pages JSF ==== | ==== Pages JSF ==== | ||
- | La page JSF permettant l’archivage n’est accessible qu’aux administrateurs. Cette page est couplée à un backing bean, ArchiveBean, permettant d’accéder aux informations utiles et de lancer les actions d'archivage. | + | La page JSF permettant l’archivage n’est accessible qu’aux administrateurs. Cette page est couplée à un backing bean, ArchiveBean, permettant d’accéder aux informations utiles et de lancer les actions d'archivage. |
Les informations sont : | Les informations sont : | ||
Line 252: | Line 254: | ||
* L’état d’avancement (en cours, terminé) et le statut (OK, ERROR) des archivages. | * L’état d’avancement (en cours, terminé) et le statut (OK, ERROR) des archivages. | ||
+ | ---- | ||
**__ATTENTION__** : Dans l’implémentation choisie, il n’existe pas à proprement parlé d’entité représentant un groupe de contrôles. Par conséquent, il n’est pas possible de savoir si un groupe (du point de vue eP-Web) est archivé ou non. | **__ATTENTION__** : Dans l’implémentation choisie, il n’existe pas à proprement parlé d’entité représentant un groupe de contrôles. Par conséquent, il n’est pas possible de savoir si un groupe (du point de vue eP-Web) est archivé ou non. | ||
+ | |||
**__Solution__** : Les différents groupes étant organisés par date, si un groupe datant de x mois est vide on peut supposer qu’il a été archivé. On peut également, se contenter de dire que l’on ne liste que les groupes non vides, sans se préoccuper de savoir si il a été archivé ou non. | **__Solution__** : Les différents groupes étant organisés par date, si un groupe datant de x mois est vide on peut supposer qu’il a été archivé. On peut également, se contenter de dire que l’on ne liste que les groupes non vides, sans se préoccuper de savoir si il a été archivé ou non. | ||
+ | ---- | ||
A partir de ces listes, l’administrateur sélectionne certains des éléments (études et/ou groupes de contrôles) et demande à les archiver. Il est également possible depuis cette page de connaître l’état d’avancement de l’archivage. En effet, lorsque l’administrateur demande l’archivage, celui-ci est lancé mais l’application n’attend pas la fin de l’opération pour rendre la main à l’utilisateur. | A partir de ces listes, l’administrateur sélectionne certains des éléments (études et/ou groupes de contrôles) et demande à les archiver. Il est également possible depuis cette page de connaître l’état d’avancement de l’archivage. En effet, lorsque l’administrateur demande l’archivage, celui-ci est lancé mais l’application n’attend pas la fin de l’opération pour rendre la main à l’utilisateur. | ||
Line 268: | Line 273: | ||
{{ epw_onglet_historique.png }} | {{ epw_onglet_historique.png }} | ||
** Figure3 Onglet Historique ** | ** Figure3 Onglet Historique ** | ||
+ | |||
==== Backing Bean ==== | ==== Backing Bean ==== | ||
Line 280: | Line 286: | ||
ArchivableAcquisition représente un ensemble de toutes les acquisitions de même type ayant été réalisés le même mois sur le même instrument. Afin de ne pas parcourir toutes les acquisitions et de rechercher celles n’étant pas encore archivées puis de les regrouper, chaque instance de ArchivableAcquisition est créé en fonction des acquisitions trouvées sur le SAN. Ainsi un objet ArchivableAcquisition représente un répertoire contenant un ensemble d’acquisitions. Néanmoins, lors de la recherche de ces répertoires, on connaît les caractéristique du groupe correspondant (type, date, instrument). Ces informations peuvent être sauvegardées au niveau de ArchivableAcquisition et lors de l’archivage, il sera plus facile de déterminer quels acquisitions sont à archiver. | ArchivableAcquisition représente un ensemble de toutes les acquisitions de même type ayant été réalisés le même mois sur le même instrument. Afin de ne pas parcourir toutes les acquisitions et de rechercher celles n’étant pas encore archivées puis de les regrouper, chaque instance de ArchivableAcquisition est créé en fonction des acquisitions trouvées sur le SAN. Ainsi un objet ArchivableAcquisition représente un répertoire contenant un ensemble d’acquisitions. Néanmoins, lors de la recherche de ces répertoires, on connaît les caractéristique du groupe correspondant (type, date, instrument). Ces informations peuvent être sauvegardées au niveau de ArchivableAcquisition et lors de l’archivage, il sera plus facile de déterminer quels acquisitions sont à archiver. | ||
- | Les objets ArchiveOperation qui représente une opération d’archivage, sont définis par un identifiant, un statut et éventuellement une date de fin. Le statut peut être soit en cour, si l’opération d’archivage est toujours en cours, soit OK, si l’opération d’archivage s’est correctement terminé, soit invalide, si l’opération d’archivage s’est terminé sur une erreur. Le dernier état est en réalité plus complet, puisque l’objet ArchiveOperation retourne invalide seulement si il n’a pas pu déterminer la raison de l’erreur, sinon il retourne un message décrivant l’erreur qui est survenue. | + | Les objets ArchiveOperation qui représente une opération d’archivage, sont définis par un identifiant, un statut et éventuellement une date de fin. Le statut peut être soit en cour, si l’opération d’archivage est toujours en cours, soit OK, si l’opération d’archivage s’est correctement terminé, soit invalide, si l’opération d’archivage s’est terminé sur une erreur. Le dernier état est en réalité plus complet, puisque l’objet ArchiveOperation retourne invalide seulement si il n’a pas pu déterminer la raison de l’erreur, sinon il retourne un message décrivant l’erreur qui est survenue. |
===== Etats de sortie ===== | ===== Etats de sortie ===== | ||
Line 291: | Line 297: | ||
=== Volumétrie par Programmes/Projets/Etudes === | === Volumétrie par Programmes/Projets/Etudes === | ||
- | a page JSF donnant accès à cette volumétrie, state_context_volumetry.jsp, est aussi couplée au backing bean ExportTextualBean permettant d’accéder aux informations utiles et de lancer l’export. | + | La page JSF donnant accès à cette volumétrie, state_context_volumetry.jsp, est aussi couplée au backing bean ExportTextualBean permettant d’accéder aux informations utiles et de lancer l’export. |
Informations utiles : | Informations utiles : | ||
Line 315: | Line 321: | ||
=== Volumétrie par Personne === | === Volumétrie par Personne === | ||
- | Ce lien n'est visible qu'aux administraeurs. La page JSP donnant accès à cette volumétrie, state_actor_volumetry.jsp, est couplée au backing bean ExportTextualBean qui lui permet d’afficher la liste des formats d’export proposés : XLS, HTML, PDF ainsi que d’effectuer l’export. | + | Ce lien n'est visible qu'aux administrateurs. La page JSP donnant accès à cette volumétrie, state_actor_volumetry.jsp, est couplée au backing bean ExportTextualBean qui lui permet d’afficher la liste des formats d’export proposés : XLS, HTML, PDF ainsi que d’effectuer l’export. |
A partir de cette page, l’utilisateur sélectionne le format du fichier qu’il souhaite obtenir, et spécifie, s'il le souhaite, la période de temps (en donnant la date de début et de fin) durant laquelle les données l’intéressent. | A partir de cette page, l’utilisateur sélectionne le format du fichier qu’il souhaite obtenir, et spécifie, s'il le souhaite, la période de temps (en donnant la date de début et de fin) durant laquelle les données l’intéressent. | ||
+ | |||
==== Backing Bean ==== | ==== Backing Bean ==== | ||
ExportTextualBean, ExportGraphicalBean (et les deux classes dérivées): | ExportTextualBean, ExportGraphicalBean (et les deux classes dérivées): | ||
- | Ces backing beans possèdent une méthode export() qui leur permet, selon le type de volumétrie sélectionné, d’effectuer l’export correspondant en appelant les méthodes de la classe VolumetryTextFileExport, selon les étapes suivantes : | + | Ces backing beans possèdent une méthode export() qui leur permet, selon le type de volumétrie sélectionné, d’effectuer l’export correspondant en appelant les méthodes de la classe VolumetryTextFileExport, selon les étapes suivantes : |
* Identification du type de volumétrie sélectionné (volumétrie programme : complet/résumé, volumétrie par instrument, volumétrie par nature d’acquisition, volumétrie personne) dans les méthodes de la classe VolumetryTextFileExport, choisir ainsi le fichier JasperReport à utilisé et les parametres nécessaires à ce fichier; | * Identification du type de volumétrie sélectionné (volumétrie programme : complet/résumé, volumétrie par instrument, volumétrie par nature d’acquisition, volumétrie personne) dans les méthodes de la classe VolumetryTextFileExport, choisir ainsi le fichier JasperReport à utilisé et les parametres nécessaires à ce fichier; | ||
Line 328: | Line 335: | ||
* Identification du type de fichier sélectionné (xls, html, pdf) dans les méthodes de la classe VolumetryTextFileExport, et choisir la mise en forme adéquate du fichier JasperReport ; | * Identification du type de fichier sélectionné (xls, html, pdf) dans les méthodes de la classe VolumetryTextFileExport, et choisir la mise en forme adéquate du fichier JasperReport ; | ||
- | Ces backing beans possèdent également des méthodes qui renvoient à la page JSP (state_context_volumetry.jsp) la liste de certaines informations telles que : le type de volumétries disponibles, les formats de fichiers proposés, les spectromètres disponibles, les natures d’analyses prises en charge par le laboratoire, … et retournent aussi les messages d'erreurs adéquats lorsqu'une exception est levée. | + | Ces backing beans possèdent également des méthodes qui renvoient à la page JSP (state_context_volumetry.jsp) la liste de certaines informations telles que : le type de volumétries disponibles, les formats de fichiers proposés, les spectromètres disponibles, les natures d’analyses prises en charge par le laboratoire, … et retournent aussi les messages d'erreurs adéquats lorsqu'une exception est levée. |
==== Classes d’export ==== | ==== Classes d’export ==== | ||
Line 368: | Line 375: | ||
Il reste néanmoins à déterminer quel(s) composant(s) (composant existant ou personnalisé) et le niveau de configuration que l’on souhaite autoriser. | Il reste néanmoins à déterminer quel(s) composant(s) (composant existant ou personnalisé) et le niveau de configuration que l’on souhaite autoriser. | ||
+ | |||
==== Spécifications ==== | ==== Spécifications ==== | ||
Line 380: | Line 388: | ||
== Page Recherche == | == Page Recherche == | ||
- | Enfin, lorsque l’on fait une recherche dans l’activité du laboratoire, le resultat répondant aux critères de recherche est donné sous forme de tableau pour chaque type d'entité (Programme, Projet, Etude) | + | Enfin, lorsque l’on fait une recherche dans l’activité du laboratoire, le resultat répondant aux critères de recherche est donné sous forme de tableau pour chaque type d'entité (Programme, Projet, Etude) |
+ | |||
{{ epw_page_recherche.png }} | {{ epw_page_recherche.png }} | ||
Line 386: | Line 395: | ||
Si l’on souhaite faire un composant JSF qui puisse être utilisé dans les différents cas listé ici, voire de nouveaux cas de figure non encore rencontrés, il est nécessaire d’autoriser la configuration de divers paramètres. Néanmoins, si l’on rend trop configurable le composant, plus rien n’assure l’homogénéité de l’IHM. Un compromis pourrait être de permettre : | Si l’on souhaite faire un composant JSF qui puisse être utilisé dans les différents cas listé ici, voire de nouveaux cas de figure non encore rencontrés, il est nécessaire d’autoriser la configuration de divers paramètres. Néanmoins, si l’on rend trop configurable le composant, plus rien n’assure l’homogénéité de l’IHM. Un compromis pourrait être de permettre : | ||
- | * de paramétrer si l’on souhaite ou non voir les fils des entités. | + | * de paramétrer si l’on souhaite ou non voir les fils des entités. |
- | * de spécifier le type d’affichage souhaité parmi 2 ou 3 : compact ou complet. | + | * de spécifier le type d’affichage souhaité parmi 2 ou 3 : compact ou complet. |
- | Le mode compact affiche : | + | * de cacher/voir les entités en cours/clos |
- | o le nom | + | |
- | o la nomenclature | + | Le mode compact affiche : |
- | o l’icône d’accès a la description sommaire | + | * le nom |
+ | * la nomenclature | ||
+ | * l’icône d’accès a la description sommaire | ||
- | Le mode complet affiche le tableau de la page de description. | + | Le mode complet affiche le tableau de la page de description. |
- | * de cacher/voir les entités en cours/clos | + | |
=== Liste des Echantillons / Acquisitions === | === Liste des Echantillons / Acquisitions === | ||
Line 401: | Line 411: | ||
//Liste des Echantillons// : cette page , subView_study_samples.jsp, couplée au Backing Bean StudyBean offre la possibilité de modifier l'état d'un échantillon en cliquant sur la figure représentant une led, ou alors en sélectionnant les échantillons auquels on désire changer l'état et leur attribuer un nouvel état. | //Liste des Echantillons// : cette page , subView_study_samples.jsp, couplée au Backing Bean StudyBean offre la possibilité de modifier l'état d'un échantillon en cliquant sur la figure représentant une led, ou alors en sélectionnant les échantillons auquels on désire changer l'état et leur attribuer un nouvel état. | ||
+ | |||
{{ epw_sample_list.png }} | {{ epw_sample_list.png }} | ||
Line 407: | Line 418: | ||
Lorsqu'il s'agit d'un ensemble d'échantillons, une pop-up s'ouvre lorsqu'on click sur l'icône et présente selon l'état souhaité les informations nécessaires à la planification des échantillons. | Lorsqu'il s'agit d'un ensemble d'échantillons, une pop-up s'ouvre lorsqu'on click sur l'icône et présente selon l'état souhaité les informations nécessaires à la planification des échantillons. | ||
+ | |||
{{ epw_status_set_chg.png }} | {{ epw_status_set_chg.png }} | ||
//Liste des Echantillons en attente d'acquisition// : cette page , subview_tobeanalysed_stdSamples.jsp, couplée au Backing Bean StudyBean permet de changer certaines données en les introduisant dans les champs qui leurs sont dédiés ou le faire pour un ensemble qu'on aurait sélectioné. | //Liste des Echantillons en attente d'acquisition// : cette page , subview_tobeanalysed_stdSamples.jsp, couplée au Backing Bean StudyBean permet de changer certaines données en les introduisant dans les champs qui leurs sont dédiés ou le faire pour un ensemble qu'on aurait sélectioné. | ||
+ | |||
{{ epw_sample_tobeannalyded.png }} | {{ epw_sample_tobeannalyded.png }} | ||
//Liste des Acquisitions// | //Liste des Acquisitions// | ||
+ | |||
{{ epw_sample_acquisitions.png }} | {{ epw_sample_acquisitions.png }} | ||
== Page Recherche == | == Page Recherche == | ||
Une recherche d’acquisitions répondant à certains critères donne une liste (un tableau) en résultat. Cette liste doit contenir des informations autres que celles données dans la page de description. En effet, il faut préciser l’étude d’appartenance (pour les acquisitions recherche) et la nature de l’acquisition, la recherche étant faite éventuellement sur tous les types d’acquisitions. | Une recherche d’acquisitions répondant à certains critères donne une liste (un tableau) en résultat. Cette liste doit contenir des informations autres que celles données dans la page de description. En effet, il faut préciser l’étude d’appartenance (pour les acquisitions recherche) et la nature de l’acquisition, la recherche étant faite éventuellement sur tous les types d’acquisitions. | ||
+ | |||
{{ epw_search_acquisitions.png }} | {{ epw_search_acquisitions.png }} | ||