first commit

This commit is contained in:
2025-10-30 13:23:53 +01:00
commit 433e47e385
1619 changed files with 106327 additions and 0 deletions

View File

@@ -0,0 +1,209 @@
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package Controllers.FactureClt;
import Controllers.Traitement.ParametreSystem;
import Models.CommandeClt.CommandeClt;
import Models.FactureClt.FactureClt;
import Models.ChequeClt.ChequeList;
import Models.FactureClt.FactureCltChequeListe;
import Models.FactureClt.FactureCltDB;
import Models.TraiteClt.TraiteList;
import Models.FactureClt.FactureCltTraiteListe;
import Models.ChequeClt.ChequeClt;
import Models.TraiteClt.TraiteClt;
import java.io.IOException;
import java.net.URL;
import java.util.ArrayList;
import java.util.ResourceBundle;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.fxml.Initializable;
import javafx.scene.Parent;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.layout.AnchorPane;
import javafx.scene.text.Text;
/**
* FXML Controller class
*
* @author PC-Maher
*/
public class FactureCltAjouterDetailTraiteController implements Initializable {
@FXML private AnchorPane PaneFactureCltAjouterDetailTraite;
@FXML public AnchorPane PaneTableViewTraites ;
@FXML public AnchorPane PaneTableViewCheques;
@FXML public Text TextNom ;
@FXML public Text TextPrenomMatricule;
@FXML public Text TextPrenom ;
@FXML public Text TextAdress ;
@FXML public Text TextAvance ;
@FXML public Text TextTypeReglement ; // Traite | Cheque
@FXML public Text TextMontantInteret ;
@FXML public Text TextDetail ;
@FXML public Text TextNbrTraite ;
@FXML public Text TextBanque ;
@FXML public Text Banque ;
@FXML public Text TextMontantTraite ;
@FXML public Text ValMontantTraite;
@FXML public TableView<FactureCltTraiteListe> TableViewListeTraites ;
@FXML public TableColumn<FactureCltTraiteListe ,String> TabColDateTraites;
@FXML public TableColumn<FactureCltTraiteListe ,String> TabColMontantTraites;
@FXML public TableView<FactureCltChequeListe> TableViewListeCheques ;
@FXML public TableColumn<FactureCltChequeListe ,String> TabColDateCheques;
@FXML public TableColumn<FactureCltChequeListe ,String> TabColNumeroCheques;
@FXML public TableColumn<FactureCltChequeListe ,String> TabColBanqueCheques;
@FXML public TableColumn<FactureCltChequeListe ,String> TabColMontantCheques;
final ObservableList<FactureCltTraiteListe> dataListe = FXCollections.observableArrayList();
final ObservableList<FactureCltChequeListe> dataListeCheque = FXCollections.observableArrayList();
public ObservableList<TraiteList> data_List_Traite = FXCollections.observableArrayList();
public ObservableList<ChequeList> data_List_Cheque = FXCollections.observableArrayList();
public boolean TypeFacilite = true; // True Traite | False Cheque
public CommandeClt commande;
public FactureClt Facture ;
public String TextTauxInteret;
public String Net_A_Payer;
public String Avance ;
@Override
public void initialize(URL url, ResourceBundle rb) {
TabColDateTraites.setStyle( "-fx-alignment: CENTER;");
TabColDateTraites.getStyleClass().add("Center");
TabColDateTraites.setCellValueFactory(new PropertyValueFactory<FactureCltTraiteListe, String>("DateTraites"));
TabColMontantTraites.setStyle( "-fx-alignment: CENTER;");
TabColMontantTraites.getStyleClass().add("Center");
TabColMontantTraites.setCellValueFactory(new PropertyValueFactory<FactureCltTraiteListe, String>("MontantTraites"));
TabColDateCheques.setStyle( "-fx-alignment: CENTER;");
TabColDateCheques.getStyleClass().add("Center");
TabColDateCheques.setCellValueFactory(new PropertyValueFactory<FactureCltChequeListe, String>("DateCheques"));
TabColNumeroCheques.setStyle( "-fx-alignment: CENTER;");
TabColNumeroCheques.getStyleClass().add("Center");
TabColNumeroCheques.setCellValueFactory(new PropertyValueFactory<FactureCltChequeListe, String>("NumeroCheques"));
TabColBanqueCheques.setStyle( "-fx-alignment: CENTER;");
TabColBanqueCheques.getStyleClass().add("Center");
TabColBanqueCheques.setCellValueFactory(new PropertyValueFactory<FactureCltChequeListe, String>("BanqueCheques"));
TabColMontantCheques.setStyle( "-fx-alignment: CENTER;");
TabColMontantCheques.getStyleClass().add("Center");
TabColMontantCheques.setCellValueFactory(new PropertyValueFactory<FactureCltChequeListe, String>("MontantCheques"));
}
public void SetDataTraiteFacilite(FactureClt facture){
this.Facture = facture;
TextAvance.setText(Facture.getAvance()+" "+ParametreSystem.CurrencySign);
TextMontantInteret.setText(Facture.getMontantInteret());
ValMontantTraite.setText(Facture.getTotalMontantTraite()+" "+ParametreSystem.CurrencySign);
TextNbrTraite.setText(Facture.getNbrTraite());
TextTauxInteret = Facture.getTauxInteret();
Net_A_Payer = Facture.getNetAPayer();
TypeFacilite = Facture.getTypeFaciliteBoolean();
if(TypeFacilite == true){
TextTypeReglement.setText("Traite");
PaneTableViewCheques.setVisible(false);
PaneTableViewTraites.setVisible(true);
TextMontantTraite.setText("Montant Traite:");
ArrayList<TraiteClt> ListTraites = Facture.getListeTraites();
for(int i=0; i<ListTraites.size(); i++){
//data_List_Traite.add(new FactureCltTraiteList(ListTraites.get(i).getMontantTraiteClt(),new Date()));
dataListe.add(new FactureCltTraiteListe(ListTraites.get(i).getDateTraiteClt(),ListTraites.get(i).getMontantTraiteClt()+" "+ParametreSystem.CurrencySign ));
}
TableViewListeTraites.setItems(dataListe);
}else if(TypeFacilite == false){
Banque.setVisible(true);
TextTypeReglement.setText("Cheque");
PaneTableViewTraites.setVisible(false);
PaneTableViewCheques.setVisible(true);
TextMontantTraite.setText("Montant Chéques:");
ArrayList<ChequeClt> dataListCheque = Facture.getListeCheques();
TextBanque.setText( dataListCheque.get(0).getBanqueChequeClt());
for(int i=0; i<dataListCheque.size(); i++){
dataListeCheque.add(new FactureCltChequeListe( dataListCheque.get(i).getDatePaiement(),
dataListCheque.get(i).getNumeroChequeClt(),
dataListCheque.get(i).getBanqueChequeClt(),
dataListCheque.get(i).getMontantChequeClt()));
}
TableViewListeCheques.setItems(dataListeCheque);
}
}
//Boutton Présédent
@FXML
private void FactureCltAjouterLastButtonAction(ActionEvent event) throws IOException {
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/Views/FactureClt/FactureCltAjouterPaiementFacilite.fxml"));
Parent NodePaneFactureCltAjouterPaiementFacilite = (Parent)fxmlLoader.load();
FactureCltAjouterPaiementFaciliteController FactureCltAjouterPaiementFacilite = fxmlLoader.getController();
FactureCltAjouterPaiementFacilite.TextFieldAvance.setText(Avance);
FactureCltAjouterPaiementFacilite.TextFieldNbrTraite.setText(TextNbrTraite.getText());
FactureCltAjouterPaiementFacilite.TextFieldTauxIntere.setText(TextTauxInteret);
FactureCltAjouterPaiementFacilite.TextMontant_Traite.setVisible(true);
FactureCltAjouterPaiementFacilite.TextMontant_Interet.setVisible(true);
FactureCltAjouterPaiementFacilite.TextMontantTraite.setVisible(true);
FactureCltAjouterPaiementFacilite.TextMontantInteret.setVisible(true);
FactureCltAjouterPaiementFacilite.TextNetaPayer.setText(TextTauxInteret);
FactureCltAjouterPaiementFacilite.TextMontantTraite.setText(ValMontantTraite.getText());
FactureCltAjouterPaiementFacilite.TextMontantInteret.setText(TextMontantInteret.getText());
FactureCltAjouterPaiementFacilite.TextNetaPayer.setText(Net_A_Payer+" "+ParametreSystem.CurrencySign);
FactureCltAjouterPaiementFacilite.commande = commande;
if(TypeFacilite == true){
FactureCltAjouterPaiementFacilite.TypeSelect = true;
FactureCltAjouterPaiementFacilite.RadioTraite.setSelected(true);
FactureCltAjouterPaiementFacilite.dataList = data_List_Traite;
FactureCltAjouterPaiementFacilite.SetTableViewTraite();
}
else if(TypeFacilite == false){
FactureCltAjouterPaiementFacilite.TypeSelect = false;
FactureCltAjouterPaiementFacilite.RadioCheque.setSelected(true);
FactureCltAjouterPaiementFacilite.dataListCheque = data_List_Cheque;
FactureCltAjouterPaiementFacilite.SetTableViewCheque();
}
PaneFactureCltAjouterDetailTraite.getChildren().clear();
PaneFactureCltAjouterDetailTraite.getChildren().add(NodePaneFactureCltAjouterPaiementFacilite);
}
//Boutton Suivant
@FXML
private void FactureCltSaveButtonAction(ActionEvent event) throws IOException {
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/Views/FactureClt/FactureCltDetail.fxml"));
Parent NodeFactureCltDetail = (Parent)fxmlLoader.load();
FactureCltDetailController FactureCltDetail= fxmlLoader.getController();
FactureCltDB FactureDB= new FactureCltDB();
String CodeFacture = FactureDB.AddFactureClt(Facture);
FactureCltDetail.codeFactClt = CodeFacture;
FactureCltDetail.SowDetailFactureClt(true);
PaneFactureCltAjouterDetailTraite.getChildren().clear();
PaneFactureCltAjouterDetailTraite.getChildren().add(NodeFactureCltDetail);
}
}