Bonjour,
je essait de selectionner certain facture dans une liste de facture pour regler a la fin, en glissant dans une zone dedié pour accueillir plusieurs facture qui fait que c'est une autre liste de type facture. mais le problem c'est que lorsque je appuie sur une facture pour le metre dans le zone de reglement il accepte qu'un seul facture et non deux ou plus si j'ai le met une facture de plus c'est l'anscienne est retirer et est remplacé par la nouvelle. s'il vous plait essayer de m'aider c'est tres urgent. MERCI.
je vous passe mes code.
la page xhtml
<script type="text/javascript">
function handleDrop(event, ui) {
var dropeFacture = ui.draggable;
dropeFacture.fadeOut('fast');
}
</script>
<h3>Bienvenu dans la page l'enregistrement des Chèque</h3>
<div id="liste">
<p:fieldset id="availableCarsField" legend="Formulaite enregistrement cheque">
<h:form id="carForm">
<p:growl id="growl" />
<p:fieldset id="availableCarsField" legend="Available facturs">
<p:dataTable id="availableCars" var="car" value="#{chequeBeans.listeFacture}">
<p:column style="width:20px">
<h:outputText id="dragIcon" styleClass="ui-icon ui-icon-arrow-4" />
<p:draggable for="dragIcon" revert="true" helper="clone"/>
</p:column>
<p:column headerText="Id">
<h:outputText value="#{car.id}" />
</p:column>
<p:column headerText="Date">
<h:outputText value="#{car.datereglement}" />
</p:column>
<p:column headerText="fournisseur">
<h:outputText value="#{car.fournisseur.nom}" />
</p:column>
<p:column headerText="Numero">
<h:outputText value="#{car.numero}" />
</p:column>
<p:column headerText="Montant">
<h:outputText value="#{car.montant}" />
</p:column>
</p:dataTable>
</p:fieldset>
<p:fieldset id="selectedCars" legend="Selected Facture" style="margin-top:20px">
<p:outputPanel id="dropArea">
<h:outputText value="!!veuillez glisser dans ce cadre le(s) facture(s) que vous voulez regler!!" rendered="#{empty chequeBeans.dropFacture}" style="font-size:24px;" />
<p:dataTable id="selectedCarsTable" var="facture" value="#{chequeBeans.dropFacture}" rendered="#{not empty chequeBeans.dropFacture}">
<p:column headerText="Id">
<h:outputText value="#{facture.id}" />
</p:column>
<p:column headerText="Numero">
<h:outputText value="#{facture.numero}" />
</p:column>
<p:column headerText="date">
<h:outputText value="#{facture.datereglement}" />
</p:column>
<p:column headerText="etat">
<h:outputText value="#{facture.etat}" />
</p:column>
<p:column headerText="NomFournisseur">
<h:outputText value="#{facture.fournisseur.nom}" />
</p:column>
<p:column style="width:32px">
<p:commandButton update=":carForm:display" oncomplete="PF('carDialog').show()" icon="ui-icon-search">
<f:setPropertyActionListener value="#{facture}" target="#{chequeBeans.selectedFACTURE}" />
<f:param name="idpersonne" value="#{facture.id}" />
</p:commandButton>
</p:column>
</p:dataTable>
</p:outputPanel>
</p:fieldset>
<p:droppable for="selectedCars" tolerance="touch" activeStyleClass="ui-state-highlight" datasource="availableCars" onDrop="handleDrop">
<p:ajax listener="#{chequeBeans.onFactureDrop}" update="dropArea availableCars" />
</p:droppable>
<p:dialog header="Details facture" widgetVar="carDialog" resizable="false" draggable="false"
showEffect="fade" hideEffect="fade" modal="true">
<p:outputPanel id="display">
<h:panelGrid columns="2" cellpadding="4" rendered="#{not empty chequeBeans.selectedFACTURE}" columnClasses="label,value">
<h:outputText value="Numero:" />
<h:outputText value="#{chequeBeans.selectedFACTURE.numero}" style="font-weight:bold"/>
<h:outputText value="Montant" />
<h:outputText value="#{chequeBeans.selectedFACTURE.montant}" style="font-weight:bold"/>
<h:outputText value="Nom Fournisseur" />
<h:outputText value="#{chequeBeans.selectedFACTURE.fournisseur.nom}" style="font-weight:bold"/>
<h:outputText value="date" />
<h:outputText value="#{chequeBeans.selectedFACTURE.datereglement}" style="font-weight:bold"/>
<h:outputText value="Etat:" />
<h:outputText value="#{chequeBeans.selectedFACTURE.etat}" style="font-weight:bold"/>
</h:panelGrid>
</p:outputPanel>
</p:dialog>
<p:panelGrid columns="2">
<p:outputLabel value="Montant:" for="montant" />
<p:inputText id="montant" value="#{chequeBeans.cheque.montant}" title="Montant" requiredMessage="le champs montant est obligatoir."/>
<p:outputLabel value="Compt:" for="compt" />
<p:selectOneMenu id="compt" value="#{chequeBeans.id_compte}" >
<!-- TODO: update below reference to list of available items-->
<f:selectItems value="#{chequeBeans.listCompte}" var="c" itemLabel="#{c.nom}" itemValue="#{c.id}"/>
</p:selectOneMenu>
<p:outputLabel value="Fournisseur:" for="fournisseur" />
<p:selectOneMenu id="fournisseur" value="#{chequeBeans.id_fournisseur}">
<!-- TODO: update below reference to list of available items-->
<f:selectItems value="#{chequeBeans.lisrFournisseur}" var="f" itemLabel="#{f.nom}" itemValue="#{f.id}"/>
</p:selectOneMenu>
<p:outputLabel value="Banque:" for="banque" />
<p:selectOneMenu id="banque" value="#{chequeBeans.id_banque}" >
<!-- TODO: update below reference to list of available items-->
<f:selectItems value="#{chequeBeans.listBanque}" var="b" itemLabel="#{b.nom}" itemValue="#{b.id}"/>
</p:selectOneMenu>
<p:outputLabel value="EtatCheque" for="barre" />
<p:selectOneMenu id="barre" value="#{chequeBeans.id_barree}" >
<!-- TODO: update below reference to list of available items-->
<f:selectItems value="#{chequeBeans.listBaree}" var="u" itemLabel="#{u.libelle}" itemValue="#{u.id}"/>
</p:selectOneMenu>
<p:outputLabel value="NumeroC:" for="numeroC" />
<p:inputText id="numeroC" value="#{chequeBeans.cheque.numeroCheque}" title="NumeroC" required="true" requiredMessage="Vous devez renseigner le champs numero de cheque."/>
</p:panelGrid>
<h:panelGrid border="0" columns="1" style="float: left">
<p:commandButton icon="ui-icon-check" value="Enregistrer" styleClass="enr" action="#{chequeBeans.createCheque()}" update="growl" ajax="false"/>
</h:panelGrid>
<h:panelGrid border="0" columns="1" style="float: right">
<p:commandButton icon="ui-icon-close" value="Abondonner" styleClass="enr" action="#{chequeBeans.cancel()}" ajax="false"/>
</h:panelGrid>
</h:form>
</p:fieldset>
la methoe permettant d'ajouter une facture dans la liste de selection
public void onFactureDrop(DragDropEvent ddEvent) {
Facture fac = ((Facture) ddEvent.getData());
DropFacture.add(fac);
listeFacture.remove(fac);
System.out.println("la taille de la liste selectionnée " + DropFacture.size());
int montant = 0;
for (Facture f : DropFacture) {
montant = montant + f.getMontant();
}
setMontntcheque(montant);
System.out.println("le montant du cheque "+this.getMontntcheque());
cheque.setMontant(montant);
Voila tout je vous prie veuillez m'aider
Afficher la suite