Configure Maven repository for unionflow-server-api dependency

This commit is contained in:
dahoud
2025-12-10 01:12:54 +00:00
commit 2910809949
1173 changed files with 435718 additions and 0 deletions

View File

@@ -0,0 +1,212 @@
<!DOCTYPE html>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
xmlns:p="http://primefaces.org/ui"
template="/templates/main-template.xhtml">
<ui:define name="title">Gestion des Organisations</ui:define>
<ui:define name="content">
<h:form id="formOrgs">
<p:messages id="messages" showDetail="true" closable="true" />
<div class="card mb-3">
<div class="flex justify-content-between align-items-center">
<div>
<h5 class="mb-1">Organisations</h5>
<span class="text-600">
CRUD complet des organisations. Respect DRY/WOU: composants réutilisés et simplicité.
</span>
</div>
<div>
<p:commandButton value="Nouvelle organisation"
icon="pi pi-plus"
styleClass="ui-button-success"
actionListener="#{organisationsBean.preparerNouvelleOrganisation}"
update=":formOrgs:dlgCreate"
oncomplete="PF('dlgCreate').show();" />
<p:commandButton value="Rafraîchir"
icon="pi pi-refresh"
styleClass="ui-button-secondary ml-2"
actionListener="#{organisationsBean.recharger}"
update=":formOrgs:dtOrgs :formOrgs:stats :formOrgs:messages" />
</div>
</div>
</div>
<p:outputPanel id="stats" styleClass="grid mb-3">
<div class="col-12 md:col-4">
<p:card>
<f:facet name="title">Total</f:facet>
<h:outputText value="#{organisationsBean.totalOrganisations}" />
</p:card>
</div>
<div class="col-12 md:col-4">
<p:card>
<f:facet name="title">Actives</f:facet>
<h:outputText value="#{organisationsBean.organisationsActives}" />
</p:card>
</div>
<div class="col-12 md:col-4">
<p:card>
<f:facet name="title">Inactives</f:facet>
<h:outputText value="#{organisationsBean.organisationsInactives}" />
</p:card>
</div>
</p:outputPanel>
<div class="card">
<div class="grid mb-3 p-3">
<div class="col-12 md:col-4">
<p:inputText placeholder="Recherche (nom, ville, description)"
value="#{organisationsBean.rechercheGlobale}">
<p:ajax event="keyup" update=":formOrgs:dtOrgs" listener="#{organisationsBean.appliquerFiltres}" />
</p:inputText>
</div>
<div class="col-12 md:col-3">
<p:selectOneMenu value="#{organisationsBean.filtreStatut}">
<f:selectItems value="#{organisationsBean.statutsSelectItems}" />
<p:ajax update=":formOrgs:dtOrgs" listener="#{organisationsBean.appliquerFiltres}" />
</p:selectOneMenu>
</div>
<div class="col-12 md:col-3">
<p:selectOneMenu value="#{organisationsBean.filtreType}">
<f:selectItems value="#{organisationsBean.typesSelectItems}" />
<p:ajax update=":formOrgs:dtOrgs" listener="#{organisationsBean.appliquerFiltres}" />
</p:selectOneMenu>
</div>
<div class="col-12 md:col-2 text-right">
<p:commandButton value="Réinitialiser"
icon="pi pi-filter-slash"
styleClass="ui-button-secondary"
actionListener="#{organisationsBean.reinitialiserFiltres}"
update=":formOrgs:dtOrgs :formOrgs:filters" />
</div>
</div>
<p:dataTable id="dtOrgs"
value="#{organisationsBean.organisationsFiltrees}"
var="org"
paginator="true"
rows="20"
rowsPerPageTemplate="10,20,50"
paginatorPosition="bottom"
emptyMessage="Aucune organisation trouvée">
<p:column headerText="Nom" sortBy="#{org.nom}">
<h:outputText value="#{org.nom}" />
</p:column>
<p:column headerText="Type" sortBy="#{org.typeAssociation}" style="width: 200px;">
<p:tag value="#{org.typeLibelle}" severity="info" />
</p:column>
<p:column headerText="Statut" style="width: 140px; text-align: center;">
<p:tag value="#{org.statutLibelle}" severity="#{org.statutSeverity}" />
</p:column>
<p:column headerText="Localisation" sortBy="#{org.ville}">
<h:outputText value="#{org.ville}" />
<h:outputText value=", " rendered="#{not empty org.ville and not empty org.region}" />
<h:outputText value="#{org.region}" />
</p:column>
<p:column headerText="Actions" style="width: 220px; text-align: center;">
<p:commandButton icon="pi pi-pencil"
title="Modifier"
styleClass="ui-button-rounded ui-button-warning mr-2"
actionListener="#{organisationsBean.setOrganisationSelectionnee(org)}"
update=":formOrgs:dlgEdit"
oncomplete="PF('dlgEdit').show();" />
<p:commandButton icon="#{organisationsBean.estActive(org) ? 'pi pi-ban' : 'pi pi-check'}"
title="#{organisationsBean.estActive(org) ? 'Désactiver' : 'Activer'}"
styleClass="ui-button-rounded #{organisationsBean.estActive(org) ? 'ui-button-secondary' : 'ui-button-success'} mr-2"
update=":formOrgs:dtOrgs :formOrgs:messages :formOrgs:stats"
actionListener="#{organisationsBean.basculerStatutOrganisation(org)}">
<p:confirm header="Confirmation"
message="Confirmez l'action sur le statut de l'organisation ?"
icon="pi pi-exclamation-triangle" />
</p:commandButton>
<p:commandButton icon="pi pi-trash"
title="Supprimer"
styleClass="ui-button-rounded ui-button-danger"
update=":formOrgs:dtOrgs :formOrgs:messages :formOrgs:stats"
actionListener="#{organisationsBean.supprimerOrganisation(org)}">
<p:confirm header="Confirmation"
message="Supprimer cette organisation ?"
icon="pi pi-exclamation-triangle" />
</p:commandButton>
</p:column>
</p:dataTable>
</div>
<p:confirmDialog global="true" showEffect="fade" hideEffect="fade" responsive="true" width="350">
<p:commandButton value="Non" type="button" styleClass="ui-button-secondary" icon="pi pi-times"
onclick="PF('confirmDialog').hide()" />
<p:commandButton value="Oui" type="button" styleClass="ui-button-danger" icon="pi pi-check" />
</p:confirmDialog>
<!-- Dialogue création -->
<p:dialog id="dlgCreate"
widgetVar="dlgCreate"
header="Nouvelle organisation"
modal="true"
resizable="false"
responsive="true"
width="700">
<ui:include src="/ui/includes/organisation-form.xhtml">
<ui:param name="model" value="#{organisationsBean.nouvelleOrganisation}" />
<ui:param name="typesItems" value="#{organisationsBean.typesSelectItemsForForm}" />
</ui:include>
<f:facet name="footer">
<p:commandButton value="Annuler"
icon="pi pi-times"
onclick="PF('dlgCreate').hide();"
styleClass="ui-button-secondary" />
<p:commandButton value="Créer"
icon="pi pi-check"
process="@form"
update=":formOrgs:dtOrgs :formOrgs:messages :formOrgs:stats"
actionListener="#{organisationsBean.creerOrganisation}"
oncomplete="if(!args.validationFailed) PF('dlgCreate').hide();" />
</f:facet>
</p:dialog>
<!-- Dialogue édition -->
<p:dialog id="dlgEdit"
widgetVar="dlgEdit"
header="Modifier l'organisation"
modal="true"
resizable="false"
responsive="true"
width="700">
<ui:include src="/ui/includes/organisation-form.xhtml">
<ui:param name="model" value="#{organisationsBean.organisationSelectionnee}" />
<ui:param name="typesItems" value="#{organisationsBean.typesSelectItemsForForm}" />
</ui:include>
<f:facet name="footer">
<p:commandButton value="Annuler"
icon="pi pi-times"
onclick="PF('dlgEdit').hide();"
styleClass="ui-button-secondary" />
<p:commandButton value="Enregistrer"
icon="pi pi-check"
process="@form"
update=":formOrgs:dtOrgs :formOrgs:messages"
actionListener="#{organisationsBean.modifierOrganisation}"
oncomplete="if(!args.validationFailed) PF('dlgEdit').hide();" />
</f:facet>
</p:dialog>
</h:form>
</ui:define>
</ui:composition>