/*
 * 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 Models.FactureFrs;

import Controllers.Traitement.contro;
import Models.BonReceptionFrs.BonReceptionFrs;
import Models.CommandeFrs.CommandeFrs;
import Models.Fournisseur.Fournisseur;
import Models.Produit.ListeProduit;
import Models.Reglement.Reglement;
import Models.User.Profile;
import javafx.collections.ObservableList;


/**
 * @author Maher
 */
public class FactureFrs {
    
    public String IdFactureFrs;
    public String Numero;
    public String HeurCreation;
    public String DateCreation;
    public String TypeReglement; //     0 comptant  |    1 facilité
    public String EtatReglement; //     0 payer     | 1 cour    |   2 non pays
    public String Devise;
    public Fournisseur Fournisseur;
    public String Local;
    public Profile Profile;
    public String  BonReception; // 1 Facture par Bon Réception |  null Facture sans Bon Réception 
    public Reglement Reglement;
    
    
    public String TotalHorsTaxNet;
    public String Remise;
    public String TotalTVA;
    public String Timbre;
    public String NetAPayer;
    
    public float FTotalHorsTaxNet;
    public float FRemise;
    public float FTotalTVA;
    public float FTimbre;
    public float FNetAPayer;
    
    
    public CommandeFrs CommandeFrs;
    public ObservableList<ListeProduit> ListProduit ;
    public ObservableList<BonReceptionFrs> ListeBonReception;
    
    contro Controle = new contro();
    public String getIdFactureFrs() {
        return IdFactureFrs;
    }

    public void setIdFactureFrs(String IdFactureFrs) {
        this.IdFactureFrs = IdFactureFrs;
    }

    public String getNumero() {
        return Numero;
    }

    public void setNumero(String Numero) {
        this.Numero = Numero;
    }

    public String getHeurCreation() {
        return HeurCreation;
    }

    public void setHeurCreation(String HeurCreation) {
        this.HeurCreation = HeurCreation;
    }

    public String getDateCreation() {
        return DateCreation;
    }

    public void setDateCreation(String DateCreation) {
        this.DateCreation = DateCreation;
    }

    public String getTypeReglement() {
        return TypeReglement;
    }

    public Reglement getReglement() {
        return Reglement;
    }

    public void setReglement(Reglement Reglement) {
        this.Reglement = Reglement;
    }

    
    
    //     0 comptant  |    1 facilité
    public String getTypeReglementString() {
        if(Controle.isStringNull(TypeReglement)){
            return null;
        }else{
            if(TypeReglement.equals("0")){
                return "Comptant";
            }else{
                return "Facilité";
            }
        }
    }
    
    public void setTypeReglement(String TypeReglement) {
        this.TypeReglement = TypeReglement;
    }

    public String getEtatReglement() {
        return EtatReglement;
    }

    //     0 payer     | 1 cour    |   null non pays
    public String getEtatReglementString() {
        String Etat = "Non Pays";
        if(!Controle.isStringNull(TypeReglement)){
            if(TypeReglement.equals("0")){
                return "payer";
            }else if(TypeReglement.equals("1")){
                return "En Cour";
            }
        }
        return Etat;
    }

    public String getBonReception() {
        return BonReception;
    }

    public void setBonReception(String BonReception) {
        this.BonReception = BonReception;
    }
    
    
    
    public void setEtatReglement(String EtatReglement) {
        this.EtatReglement = EtatReglement;
    }

    public String getDevise() {
        return Devise;
    }

    public void setDevise(String Devise) {
        this.Devise = Devise;
    }

    public String getTotalHorsTaxNet() {
        return TotalHorsTaxNet;
    }

    public void setTotalHorsTaxNet(String TotalHorsTaxNet) {
        this.TotalHorsTaxNet = TotalHorsTaxNet;
    }

    public String getRemise() {
        return Remise;
    }

    public void setRemise(String Remise) {
        this.Remise = Remise;
    }

    public String getTotalTVA() {
        return TotalTVA;
    }

    public void setTotalTVA(String TotalTVA) {
        this.TotalTVA = TotalTVA;
    }

    public String getTimbre() {
        return Timbre;
    }

    public void setTimbre(String Timbre) {
        this.Timbre = Timbre;
    }

    public String getNetAPayer() {
        return NetAPayer;
    }

    public void setNetAPayer(String NetAPayer) {
        this.NetAPayer = NetAPayer;
    }

    public Fournisseur getFournisseur() {
        return Fournisseur;
    }

    public void setFournisseur(Fournisseur Fournisseur) {
        this.Fournisseur = Fournisseur;
    }

    public String getLocal() {
        return Local;
    }

    public void setLocal(String Local) {
        this.Local = Local;
    }

    
    public CommandeFrs getCommandeFrs() {
        return CommandeFrs;
    }

    public void setCommandeFrs(CommandeFrs CommandeFrs) {
        this.CommandeFrs = CommandeFrs;
    }

    public Profile getProfile() {
        return Profile;
    }

    public void setProfile(Profile Profile) {
        this.Profile = Profile;
    }
    
    public ObservableList<ListeProduit> getListProduit() {
        return ListProduit;
    }

    public void setListProduit(ObservableList<ListeProduit> ListProduit) {
        this.ListProduit = ListProduit;
    }

    public ObservableList<BonReceptionFrs> getListeBonReception() {
        return ListeBonReception;
    }

    public void setListeBonReception(ObservableList<BonReceptionFrs> ListeBonReception) {
        this.ListeBonReception = ListeBonReception;
    }

    public float getFTotalHorsTaxNet() {
        return FTotalHorsTaxNet;
    }

    public void setFTotalHorsTaxNet(float FTotalHorsTaxNet) {
        this.FTotalHorsTaxNet = FTotalHorsTaxNet;
    }

    public float getFRemise() {
        return FRemise;
    }

    public void setFRemise(float FRemise) {
        this.FRemise = FRemise;
    }

    public float getFTotalTVA() {
        return FTotalTVA;
    }

    public void setFTotalTVA(float FTotalTVA) {
        this.FTotalTVA = FTotalTVA;
    }

    public float getFTimbre() {
        return FTimbre;
    }

    public void setFTimbre(float FTimbre) {
        this.FTimbre = FTimbre;
    }

    public float getFNetAPayer() {
        return FNetAPayer;
    }

    public void setFNetAPayer(float FNetAPayer) {
        this.FNetAPayer = FNetAPayer;
    }
    
    
}
