SIPRES Composants - TecostNetwork/Network GitHub Wiki

sipres:applicantLink

Le composant <sipres:applicantLink> permet d'afficher les informations d'un bénéficiaire ainsi qu'un lien pour l'ouverture de son contexte. Par défaut, le composant affiche l'icône d'ouverture du bénéficiaire ainsi que : nom prénom (date de naissance municipalité actuelle), sur une même ligne.

Attributs

id   obligatoire
applicant Bénéficiaire dont on souhaite afficher les informations obligatoire
displayBirthDate Affichage de la date de naissance du bénéficiaire défaut : true
displayDetails Affichage d'informations supplémentaire sur une colonne du bénéficiaire comme : 
nom, prénom, avs, date de naissance et municipalité actuelle
défaut : false

sipres:requestLink

Le composant <sipres:requestLink> permet d'afficher les informations d'une demande ainsi qu'un lien pour l'ouverture de son contexte. Par défaut, le bouton ouvre simplement le contexte de la demande sans redirection ou contrôleur de retour.

Attributs

id   obligatoire
request La demande dont on souhaite afficher les informations obligatoire
openContext Lien vers la méthode d'ouverture du contexte défaut : loadContext(request)

sipres:documentsDownloader

Le composant <sipres:documentsDownloader> permet d'afficher les documents joints d'une entité et les télécharger. Par défaut le composant affiche un document par ligne : un bouton de téléchargement illustré par l’icône du docType suivi par le libellé du document.

  • Le composant installe automatiquement ExportUtils.installExportInfo() donc il n'y a pas à s'en soucier.
  • Le composant insère un log d'action "download" lors d'un téléchargement.

Attributs

id   obligatoire
documents Liste des documents à afficher (List<GeneralDocument>) obligatoire
styleClass  Class appliquée à chaque élément représentant un document. Le composant utilise un "p-grid", ce qui permet de définir le nombre de documents à afficher par ligne en utilisant un "p-col-12" ou autre. défaut : p-col-12
rendered   défaut : true
downloadActionBtnState ControlState permettant de définir l'état du bouton de téléchargement de chaque document. Si non spécifié : title = le nom du fichier et disabled = false. défaut : null

Exemple

<sipres:documentsDownloader id="documentsDownload" documents="#{exam.currentVersion.documents}" />

sipres:documentsUploader

Le composant <sipres:documentsUploader> permet d'afficher, d'ajouter et de supprimer les documents liés à une entité, par exemple depuis la popup d'édition de celle-ci. Il affiche sous forme de tableau pour chaque document : 

  • Type de document (si celui-ci n'est pas défini)
  • Nom du document
  • Bouton de téléchargement (avec icône du type de fichier)
  • Bouton de suppression

Attributs

id   obligatoire
documents Liste des documents à gérer, bindé au contrôleur (List<GeneralDocumentDto>) obligatoire
styleClass Définit le style pour le composant  
rendered Affichage d'informations supplémentaire sur une colonne du bénéficiaire comme : 
nom, prénom, avs, date de naissance et municipalité actuelle
défaut : true
applicant Bénéficiaire lié aux documents que l'on souhaite modifier défaut : null
definedDocumentType

Définit le type de document à utiliser (données de soins, procurations...), parmi les types prédéfinis.

  • S'il n'est pas défini, l'utilisateur aura le choix du type de document. Le composant affiche également le type de document pour chacun d'eux.
  • S'il est défini (via une valeur de l'enum GeneralDocumentPredefinedType), l'utilisateur n'a pas le choix du type de document et les types ne sont pas affichés par le composant (vu que tous les mêmes). A écrire comme un String normal (ex : definedDocumentType="CARE_DATA")
défaut : null
documentType Définit le type de document à utiliser, parmi les types configurables (ou prédéfinis, mais lorsque ceux-ci ne sont pas connus à l'avance). La logique est la même que pour l'attribut précédent. défaut : null

Dans le cas où les attributs definedDocumentType et documentType sont les deux définis à la fois, l'attribut documentType sera utilisé et l'attribut definedDocumentType sera ignoré.

Exemple

Dans le xhtml : 

<sipres:documentsUploader id="documents" documents="#{editTherapy.documentsDto}" 
    definedDocumentType="CARE_DATA"
 applicant="#{editTherapy.therapy.applicant}" />

Dans le contrôleur .java : 

private List<GeneralDocumentDto> documentsDto = new ArrayList<>();

public List<GeneralDocumentDto> getDocumentsDto() {
    return documentsDto;
}

public void setDocumentsDto(List<GeneralDocumentDto> documentsDto) {
    this.documentsDto = documentsDto;
}

public void enter() {
    documentsDto = GeneralDocumentDto.parseToDto(therapyVersion.getDocuments());
}

public void save(ActionEvent e) {
    therapyVersion.setDocuments(GeneralDocumentService.mergeDto(documentsDto));
    TherapyService.merge(therapy, therapyVersion);
}

sipres:trace

Le composant <sipres:trace> permet d'afficher les informations relatives à la dernière modification apporté sur une entité implémentant ITraceModification (date de modification, utilisateur ayant effectué la modification, institution). Par défaut le composant affiche une icone de trace avec un tooltip contenant toutes les informations relatives à la dernière modification.

Attributs

id   obligatoire
modification Lien vers le DataModification de l'entité obligatoire
displayDate Affichage de la date de modification défaut : false
displayOrganization Affichage de l'institution de l'utilisateur défaut : false
displayUserName Affichage du nom complet de l'utilisateur défaut : false

Il suffit qu'un des attribut (displayDate , displayOrganization, displayUserName) soit à true pour que l'icone ne soit plus affichée et que le texte s'affiche à la place. Dans tous les cas, un tooltip contentant toutes les informations est toujours affiché.

Exemple

<sipres:trace id="creation" displayDate="true" displayOrganization="true" displayUserName="true" modification="#{evaluation.modification}" />

p:accordionPanel

Composant PrimeFaces : https://primefaces.github.io/primefaces/8_0/#/components/accordionpanel

Ajout de boutons dans les headers des tabs

Le accordion ne gère pas les <f:facet name="actions">. Pour produire un résultat similaire on utilise un <f:facet name="title"> avec comme contenu le texte et un <span class="ui-t-accordion-actions">. Attention, on ne peut plus utiliser l'attribut title du <p:tab> si on utilise le facet title.

<p:tab id="tabX">   
   <f:facet name="title">
      <t:out value="#{​​​to.my.title}​​​​​​​​​​"/>
      <span class="ui-t-accordion-actions">
         <p:commandButton id="btnXxx" />
      </span>
   </f:facet>
   ..... contenu du panel .....
</p:tab>
⚠️ **GitHub.com Fallback** ⚠️