first commit
This commit is contained in:
@@ -0,0 +1,313 @@
|
||||
/*
|
||||
* 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.Reglement;
|
||||
|
||||
import Controllers.CommandeClt.CommandeCltDialogConfirmationController;
|
||||
import Controllers.Traitement.Adaptateur;
|
||||
import Controllers.Traitement.MyWindow;
|
||||
import Controllers.Traitement.ParametreSystem;
|
||||
import Models.FactureFrs.FactureFrs;
|
||||
import Models.Reglement.ChequeFrs;
|
||||
import Models.Reglement.Reglement;
|
||||
import Models.Reglement.ReglementDB;
|
||||
import Models.Reglement.TraiteFrs;
|
||||
import java.io.IOException;
|
||||
import java.net.URL;
|
||||
import java.text.DecimalFormat;
|
||||
import java.util.ResourceBundle;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
import javafx.collections.FXCollections;
|
||||
import javafx.collections.ObservableList;
|
||||
import javafx.concurrent.Service;
|
||||
import javafx.concurrent.Task;
|
||||
import javafx.concurrent.WorkerStateEvent;
|
||||
import javafx.event.ActionEvent;
|
||||
import javafx.event.EventHandler;
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.fxml.FXMLLoader;
|
||||
import javafx.fxml.Initializable;
|
||||
import javafx.scene.Node;
|
||||
import javafx.scene.Scene;
|
||||
import javafx.scene.control.ProgressIndicator;
|
||||
import javafx.scene.control.TableCell;
|
||||
import javafx.scene.control.TableColumn;
|
||||
import javafx.scene.control.TableView;
|
||||
import javafx.scene.control.cell.PropertyValueFactory;
|
||||
import javafx.scene.layout.AnchorPane;
|
||||
import javafx.scene.layout.GridPane;
|
||||
import javafx.scene.layout.StackPane;
|
||||
import javafx.scene.text.Text;
|
||||
import javafx.stage.Stage;
|
||||
import javafx.util.Callback;
|
||||
|
||||
/**
|
||||
* FXML Controller class
|
||||
*
|
||||
* @author Maher
|
||||
*/
|
||||
public class ReglementDialogDetailController implements Initializable {
|
||||
|
||||
public Node nodeFxml ;
|
||||
|
||||
@FXML public AnchorPane AnchorPrincipal ;
|
||||
@FXML public ProgressIndicator ProgressReglement;
|
||||
@FXML public AnchorPane PaneDetailReglement;
|
||||
|
||||
@FXML private Text TextCodeReglement;
|
||||
@FXML private Text TextTypePaiement;
|
||||
@FXML private Text TextModePaiement;
|
||||
@FXML private Text TextDateCreation;
|
||||
@FXML private Text TextTotalReglement;
|
||||
@FXML private Text TextProfile;
|
||||
|
||||
@FXML private Text TextCodeFrs;
|
||||
@FXML private Text TextNomFrs;
|
||||
@FXML private Text TextTele1Frs;
|
||||
@FXML private Text TextTele2Frs;
|
||||
|
||||
@FXML private GridPane GridPaneCheque;
|
||||
@FXML private GridPane GridPaneCarte;
|
||||
|
||||
@FXML private Text TextCartNomBanque;
|
||||
@FXML private Text TextCartNumeroCart;
|
||||
@FXML private Text TextCartNumeroTransaction;
|
||||
@FXML private Text TextCartDateHeurTransaction;
|
||||
|
||||
@FXML private Text TextChequeNomBanque;
|
||||
@FXML private Text TextChequeNumero;
|
||||
@FXML private Text TextChequeNomComple;
|
||||
@FXML private Text TextChequeDate;
|
||||
|
||||
@FXML private TableView<ChequeFrs> TableViewListeCheque ;
|
||||
@FXML private TableColumn<ChequeFrs ,String> TabColDateCheque;
|
||||
@FXML private TableColumn<ChequeFrs ,String> TabColNumeroCheque;
|
||||
@FXML private TableColumn<ChequeFrs ,String> TabColBanqueCheque;
|
||||
@FXML private TableColumn<ChequeFrs ,String> TabColMontantCheque;
|
||||
|
||||
@FXML private TableView<TraiteFrs> TableViewListeTraite ;
|
||||
@FXML private TableColumn<TraiteFrs ,String> TabColDateTraite;
|
||||
@FXML private TableColumn<TraiteFrs ,String> TabColMontantTraite;
|
||||
|
||||
|
||||
@FXML private TableView<FactureFrs> TableViewFactureFrs;
|
||||
@FXML private TableColumn<FactureFrs ,String> TabColNumeroFact;
|
||||
@FXML private TableColumn<FactureFrs ,String> TabColProfile;
|
||||
@FXML private TableColumn<FactureFrs ,String> TabColDate;
|
||||
@FXML private TableColumn<FactureFrs ,String> TabColHeur;
|
||||
@FXML private TableColumn<FactureFrs ,String> TabColLocalReception;
|
||||
@FXML private TableColumn<FactureFrs ,String> TabColNetPayer;
|
||||
|
||||
private Service<Void> ThreadReglement;
|
||||
|
||||
DecimalFormat Formatter = new DecimalFormat("##,###.## ");
|
||||
|
||||
/**
|
||||
* Initializes the controller class.
|
||||
*/
|
||||
@Override
|
||||
public void initialize(URL url, ResourceBundle rb) {
|
||||
TabColMontantTraite.setStyle( "-fx-alignment: CENTER;");
|
||||
TabColMontantTraite.getStyleClass().add("Center");
|
||||
TabColMontantTraite.setCellValueFactory(new PropertyValueFactory<TraiteFrs, String>("Montant"));
|
||||
|
||||
TabColDateTraite.setStyle( "-fx-alignment: CENTER; -fx-font-weight:bold; -fx-font-size: 10pt;");
|
||||
TabColDateTraite.getStyleClass().add("Center");
|
||||
TabColDateTraite.setCellValueFactory(new PropertyValueFactory<TraiteFrs, String>("DatePaiement"));
|
||||
|
||||
|
||||
TabColNumeroCheque.setStyle( "-fx-alignment: CENTER;");
|
||||
TabColNumeroCheque.getStyleClass().add("Center");
|
||||
TabColNumeroCheque.setCellValueFactory(new PropertyValueFactory<ChequeFrs, String>("NumeroChequeFrs"));
|
||||
|
||||
TabColBanqueCheque.setStyle( "-fx-alignment: CENTER;");
|
||||
TabColBanqueCheque.getStyleClass().add("Center");
|
||||
TabColBanqueCheque.setCellValueFactory(new PropertyValueFactory<ChequeFrs, String>("BanqueChequeFrs"));
|
||||
|
||||
TabColDateCheque.setStyle( "-fx-alignment: CENTER;");
|
||||
TabColDateCheque.getStyleClass().add("Center");
|
||||
TabColDateCheque.setCellValueFactory(new PropertyValueFactory<ChequeFrs, String>("DatePaiement"));
|
||||
|
||||
TabColMontantCheque.setStyle( "-fx-alignment: CENTER;");
|
||||
TabColMontantCheque.getStyleClass().add("Center");
|
||||
TabColMontantCheque.setCellValueFactory(new PropertyValueFactory<ChequeFrs, String>("MontantChequeFrs"));
|
||||
|
||||
TabColNumeroFact.setCellValueFactory(new PropertyValueFactory<FactureFrs, String>("Numero"));
|
||||
|
||||
TabColProfile.setStyle( "-fx-alignment: CENTER; -fx-font-weight:bold; -fx-font-size: 10pt;");
|
||||
TabColProfile.getStyleClass().add("Center");
|
||||
TabColProfile.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<FactureFrs,String>, ObservableValue<String>>() {
|
||||
@Override
|
||||
public ObservableValue<String> call(TableColumn.CellDataFeatures<FactureFrs, String> data) {
|
||||
return new SimpleStringProperty(data.getValue().getProfile().getNom()+" "+data.getValue().getProfile().getPrenom());
|
||||
}
|
||||
});
|
||||
|
||||
TabColDate.setCellValueFactory(new PropertyValueFactory<FactureFrs, String>("DateCreation"));
|
||||
TabColDate.setStyle( "-fx-alignment: CENTER; -fx-font-weight:bold; -fx-font-size: 10pt;");
|
||||
TabColDate.getStyleClass().add("Center");
|
||||
|
||||
TabColHeur.setCellValueFactory(new PropertyValueFactory<FactureFrs, String>("HeurCreation"));
|
||||
TabColHeur.setStyle( "-fx-alignment: CENTER; -fx-font-weight:bold; -fx-font-size: 10pt;");
|
||||
TabColHeur.getStyleClass().add("Center");
|
||||
|
||||
TabColLocalReception.setCellValueFactory(new PropertyValueFactory<FactureFrs, String>("Local"));
|
||||
TabColLocalReception.setStyle( "-fx-alignment: CENTER; -fx-font-weight:bold; -fx-font-size: 10pt;");
|
||||
TabColLocalReception.getStyleClass().add("Center");
|
||||
|
||||
TabColNetPayer.setCellValueFactory(new PropertyValueFactory<FactureFrs, String>("NetAPayer"));
|
||||
TabColNetPayer.setStyle( "-fx-alignment: CENTER; -fx-font-weight:bold; -fx-font-size: 10pt;");
|
||||
TabColNetPayer.getStyleClass().add("Center");
|
||||
TabColNetPayer.setCellFactory(new Callback<TableColumn<FactureFrs,String>,TableCell<FactureFrs,String>>(){
|
||||
@Override
|
||||
public TableCell<FactureFrs, String> call(TableColumn<FactureFrs, String> param) {
|
||||
TableCell<FactureFrs, String> cell = new TableCell<FactureFrs, String>(){
|
||||
@Override
|
||||
public void updateItem(String item, boolean empty) {
|
||||
if(item!= null){
|
||||
Text text = new Text(Formatter.format(Float.parseFloat(item)));
|
||||
setGraphic(text);
|
||||
}else{
|
||||
setGraphic(null);
|
||||
}
|
||||
}
|
||||
};
|
||||
return cell;
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public void LanchShowReglement(final String IdReglement){
|
||||
|
||||
ThreadReglement = new Service<Void>(){
|
||||
@Override
|
||||
protected Task<Void> createTask(){
|
||||
return new Task<Void>(){
|
||||
@Override
|
||||
protected Void call() throws Exception{
|
||||
Reglement reglement = new ReglementDB().getReglementDB(IdReglement);
|
||||
setReglement(reglement);
|
||||
return null;
|
||||
}
|
||||
};
|
||||
}
|
||||
};
|
||||
ThreadReglement.setOnSucceeded(new EventHandler<WorkerStateEvent>(){
|
||||
@Override
|
||||
public void handle(WorkerStateEvent event){
|
||||
ProgressReglement.setVisible(false);
|
||||
PaneDetailReglement.setVisible(true);
|
||||
}
|
||||
});
|
||||
ThreadReglement.start();
|
||||
}
|
||||
|
||||
public void setReglement(Reglement reglement){
|
||||
|
||||
TextCodeReglement.setText(reglement.getNumero());
|
||||
TextTypePaiement.setText(reglement.getTypePaiementString());
|
||||
TextModePaiement.setText(reglement.getModePaiementString());
|
||||
TextDateCreation.setText(reglement.getDateTimeCreationString());
|
||||
|
||||
|
||||
TextTotalReglement.setText(Formatter.format(Float.parseFloat(reglement.getMontant()))+" "+ParametreSystem.CurrencySign);
|
||||
TextProfile.setText(reglement.getProfile().getPrenom()+" "+reglement.getProfile().getNom());
|
||||
|
||||
TextCodeFrs.setText(reglement.getFournisseur().getCode());
|
||||
TextNomFrs.setText(reglement.getFournisseur().getNom());
|
||||
TextTele1Frs.setText(reglement.getFournisseur().getTele1());
|
||||
TextTele2Frs.setText(reglement.getFournisseur().getTele2());
|
||||
|
||||
TableViewFactureFrs.setItems(reglement.getListFacture());
|
||||
// 0 Comptant
|
||||
if(reglement.getTypePaiement().equals("0")){
|
||||
|
||||
//0 espèce
|
||||
if(reglement.getModePaiement().equals("0")){
|
||||
|
||||
//1 Chéque
|
||||
}else if(reglement.getModePaiement().equals("1")){
|
||||
GridPaneCheque.setVisible(true);
|
||||
TextChequeNomBanque.setText(reglement.getCheque().getBanqueChequeFrs());
|
||||
TextChequeNumero.setText(reglement.getCheque().getNumeroChequeFrs());
|
||||
TextChequeNomComple.setText(reglement.getCheque().getNomCompletChequeFrs());
|
||||
TextChequeDate.setText(reglement.getCheque().getDateCreation());
|
||||
|
||||
//2 Carte électronique
|
||||
}else if(reglement.getModePaiement().equals("2")){
|
||||
GridPaneCarte.setVisible(true);
|
||||
TextCartNomBanque.setText(reglement.getCarte().getBanque());
|
||||
TextCartNumeroCart.setText(reglement.getCarte().getNumeroCarte());
|
||||
TextCartNumeroTransaction.setText(reglement.getCarte().getNumeroTransaction());
|
||||
TextCartDateHeurTransaction.setText(reglement.getCarte().getDateTransaction()+" "+reglement.getCarte().getHeurTransaction());
|
||||
}
|
||||
|
||||
|
||||
//1 Facilité
|
||||
}else if(reglement.getTypePaiement().equals("1")){
|
||||
|
||||
//1 Chéque
|
||||
if(reglement.getModePaiement().equals("1")){
|
||||
TableViewListeCheque.setVisible(true);
|
||||
ObservableList<ChequeFrs> NewListCheque = FXCollections.observableArrayList();
|
||||
for(ChequeFrs Cheque : reglement.getListCheque()) {
|
||||
String CodeChequeFrs = Cheque.getCodeChequeFrs();
|
||||
String NumeroChequeFrs = Cheque.getNumeroChequeFrs();
|
||||
String BanqueChequeFrs = Cheque.getBanqueChequeFrs();
|
||||
String MontantChequeFrs = Adaptateur.StringDeleZero(Cheque.getMontantChequeFrs());
|
||||
String NomCompletChequeFrs = Cheque.getNomCompletChequeFrs();
|
||||
String DatePaiement = Adaptateur.NormalDateFormat(Cheque.getDatePaiement());
|
||||
String DateCreation = Adaptateur.NormalDateTimeFormat(Cheque.getDateCreation());
|
||||
NewListCheque.add(new ChequeFrs(CodeChequeFrs, NumeroChequeFrs, BanqueChequeFrs, MontantChequeFrs, NomCompletChequeFrs, DatePaiement, DateCreation));
|
||||
}
|
||||
TableViewListeCheque.setItems(NewListCheque);
|
||||
|
||||
|
||||
//3 Traite
|
||||
}else if(reglement.getModePaiement().equals("3")){
|
||||
TableViewListeTraite.setVisible(true);
|
||||
TableViewListeTraite.setItems(reglement.getListTraiteString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public ReglementDialogDetailController(){
|
||||
try {
|
||||
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/Views/Reglement/ReglementDialogDetail.fxml"));
|
||||
fxmlLoader.setController(this);
|
||||
nodeFxml = (Node) fxmlLoader.load();
|
||||
} catch (IOException ex) {
|
||||
Logger.getLogger(CommandeCltDialogConfirmationController.class.getName()).log(Level.SEVERE, null, ex);
|
||||
}
|
||||
}
|
||||
|
||||
@FXML
|
||||
private void ExitButtonAction(ActionEvent event) throws IOException {
|
||||
AnchorPrincipal.setVisible(false);
|
||||
}
|
||||
|
||||
|
||||
|
||||
public void Show()
|
||||
{
|
||||
StackPane Sp = new StackPane();
|
||||
|
||||
Scene scene = new Scene(Sp);
|
||||
|
||||
Sp.setPrefSize((double)MyWindow.PrincipalContentWidth, (double)MyWindow.PrincipalContentHeight);
|
||||
|
||||
Sp.getChildren().add(MyWindow.myParent);
|
||||
Sp.getChildren().add(nodeFxml);
|
||||
|
||||
Stage stage = MyWindow.myStage;
|
||||
stage.setScene(scene);
|
||||
stage.show();
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user