package gui.chauffeur.fichePaie;
import static gui.MotsCleProjet.*;
import static gui.util.TaxiGuiUtil.FabricationButton;
import static gui.util.TaxiGuiUtil.MessageBox;
import gui.*;
import gui.chauffeur.gestionchauffeur.ChauffeurAffichable;
import gui.commun.etat.EtatAffichable;
import gui.util.ErreurDeValidation;
import gui.util.TaxiGuiUtil;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.Vector;
import javax.swing.*;
import modele.chauffeur.Chauffeur;
import modele.chauffeur.FichePaie;
import modele.chauffeur.IChauffeur;
import modele.commun.Etat;
import dao.GestionnaireDeStockage;
import dao.IDao;
/**
* class FichePaieEditionFenetre
* Cr�e l'interface graphique pour effectuer des ajouts et des modifications.
* @author Kasandra
*
*/
public class FichePaieEditionFenetre implements ActionListener {
private JDialog aDialog;// R�f�rence � la boite de dialogue.
ImageIcon ani;
private JTextControlKey textNbJrPreste, textNbHrPreste, textRecSalBrut, textBrutOnss, textPreCpteProf, textIndemi, textCotisSecu, textChrgPatronal, textReducBasRevenu, textSalNet, textAvanceSal, textMontApayer;
private JComboBox cmbIdChauf, cmbIdEtatContr;
private JLabel textDatePaie, labNbJrPreste, titres, labDatePaie, labNbHrPreste, labRecSalBrut, labBrutOnss, labPreCpteProf, labIndemi, labCotisSecu, labChrgPatronal, labReducBasRevenu, labSalNet, labAvanceSal, labMontApayer, labIdChauf, labIdEtat;
private JPanel titre;
static Font titreFont = new Font("Tahoma", 1, 12);
private JComboBox cmbEtats, cmbChauffeur;
private FichePaie fichePaie = new FichePaie();
/**
* Constructeur
*/
public FichePaieEditionFenetre() {
aDialog = new JDialog(MainWindow.cadrePrincipal(), " Fiche paie chauffeur...", true);
ani = new ImageIcon(getClass().getClassLoader().getResource("images/logoCalender.jpg"));
textDatePaie = new JLabel();
textDatePaie.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(66, 79, 120), 2));
textDatePaie.setIcon(ani);
textDatePaie.setFont(titreFont);
textDatePaie.setForeground(new java.awt.Color(66, 79, 120));
// textDtAverti.setText(format.format(new Date()).toString());
textDatePaie.addMouseListener(new MouseListener() {
public void mouseClicked(MouseEvent e) {
DateCalendar fen = new DateCalendar(MainWindow.cadrePrincipal(), 0, DateCalendar.Mode.DATE_SEULEMENT);
fen.affiche();
if (fen.okFlag) {
Date strDate = fen.retourDate();
if (strDate.after(new Date())) {
textDatePaie.setText(DATE_ERREUR_TEXTE);
MessageBox(MainWindow.desktop(), "DATE INVALIDE...");
} else {
textDatePaie.setText(new SimpleDateFormat(DATE_FORMAT).format(strDate));
}
} else {
textDatePaie.setText(DATE_ERREUR_TEXTE);
MessageBox(MainWindow.desktop(), "DATE INVALIDE...");
}
}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
});
textNbJrPreste = new JTextControlKey("", 5, IsNum);
textNbHrPreste = new JTextControlKey("", 5, IsDecimal);
textRecSalBrut = new JTextControlKey("", 10, IsDecimal);
textBrutOnss = new JTextControlKey("", 10, IsDecimal);
textPreCpteProf = new JTextControlKey("", 10, IsDecimal);
textIndemi = new JTextControlKey("", 10, IsDecimal);
textCotisSecu = new JTextControlKey("", 10, IsDecimal);
textChrgPatronal = new JTextControlKey("", 10, IsDecimal);
textReducBasRevenu = new JTextControlKey("", 10, IsDecimal);
textSalNet = new JTextControlKey("", 10, IsDecimal);
textAvanceSal = new JTextControlKey("", 10, IsDecimal);
textMontApayer = new JTextControlKey("", 10, IsDecimal);
cmbIdChauf = new JComboBox();
cmbIdChauf.setFont(titreFont);
cmbIdChauf.setForeground(new java.awt.Color(66, 79, 120));
cmbEtats = new JComboBox(getListeEtats());
cmbChauffeur = new JComboBox(getListeChauffeur());
okFlag = false;
}
/**
* Initaialise les donn�es
* @param fichePaie
*/
public void initializeDonnee(FichePaie fichePaie) {
this.fichePaie = fichePaie;
textDatePaie.setText(new SimpleDateFormat(gui.MotsCleProjet.DATE_FORMAT).format(fichePaie.getDatePaie()));
textNbJrPreste.ChampsTxt.setText(fichePaie.getNbrJourTravailPreste()+"");
textNbHrPreste.ChampsTxt.setText(fichePaie.getNbrJourTravailPreste()+"");
textRecSalBrut.ChampsTxt.setText(fichePaie.getRecetteSalaireBrut()+"");
textBrutOnss.ChampsTxt.setText(fichePaie.getBrutOnss()+"");
textPreCpteProf.ChampsTxt.setText(fichePaie.getPrecompteProfessionel()+"");
textIndemi.ChampsTxt.setText(fichePaie.getIndemnite()+"");
textCotisSecu.ChampsTxt.setText(fichePaie.getCotisationSecu()+"");
textChrgPatronal.ChampsTxt.setText(fichePaie.getChargePatronal()+"");
textReducBasRevenu.ChampsTxt.setText(fichePaie.getReductionBasRevenu()+"");
textSalNet.ChampsTxt.setText(fichePaie.getSalaireNet()+"");
textAvanceSal.ChampsTxt.setText(fichePaie.getAvanceSalaire()+"");
textMontApayer.ChampsTxt.setText(fichePaie.getMontantAPayer()+"");
selectionneChauffeur(fichePaie.getChauffeur());
selectionneEtat(fichePaie.getEtat());
}
/**
* Selectionne chauffeur
* @param chauffeur
*/
private void selectionneChauffeur(Chauffeur chauffeur) {
int nbChauffeur = cmbChauffeur.getItemCount();
for (int i = 0; i<nbChauffeur; i++) {
if (((ChauffeurAffichable<?>)cmbChauffeur.getItemAt(i)).getChauffeur().getId().equals(chauffeur.getId())) {
cmbChauffeur.setSelectedIndex(i);
break;
}
}
}
/**
* Selectionne Etat
* @param etat
*/
private void selectionneEtat(Etat etat) {
int nbEtats = cmbEtats.getItemCount();
for (int i = 0; i<nbEtats; i++) {
if (((EtatAffichable)cmbEtats.getItemAt(i)).getEtat().getCdeEtat().equals(etat.getCdeEtat())) {
cmbEtats.setSelectedIndex(i);
break;
}
}
}
/**
*
* @return fichePaie
*/
public FichePaie renvoiFichePaie() {
return fichePaie;
}
/**
* Cr�e panel date paiement
* @return JPanel date paiement salaire
*/
private JPanel datePaiePane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labDatePaie = new JLabel(" Date paie : *");
labDatePaie.setFont(titreFont);
labDatePaie.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labDatePaie);
parameterPane.add(textDatePaie);
return parameterPane;
}
/**
* Cr�e panel nombre jour prest�
* @return JPanel nombre de jours prest�
*/
private JPanel nbJourPrestePane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labNbJrPreste = new JLabel(" Nombre jour :");
labNbJrPreste.setFont(titreFont);
labNbJrPreste.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labNbJrPreste);
parameterPane.add(textNbJrPreste.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel nombre heure prest�
* @return JPanel nombre heure prest�
*/
private JPanel nbHeurePrestePane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labNbHrPreste = new JLabel(" Nombre heure :");
labNbHrPreste.setFont(titreFont);
labNbHrPreste.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labNbHrPreste);
parameterPane.add(textNbHrPreste.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel recette salaire brut
* @return JPanel saliaire brut
*/
private JPanel recetteSalaireBrutPane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labRecSalBrut = new JLabel(" Recette salaire brut :");
labRecSalBrut.setFont(titreFont);
labRecSalBrut.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labRecSalBrut);
parameterPane.add(textRecSalBrut.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel brut onss
* @return Jpanel brut ONSS
*/
private JPanel brutOnssPane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labBrutOnss = new JLabel(" Brut onss :");
labBrutOnss.setFont(titreFont);
labBrutOnss.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labBrutOnss);
parameterPane.add(textBrutOnss.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel pr�compte professionnel
* @return JPanel pr�compte professionnel
*/
private JPanel precompteProfessionnelPane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labPreCpteProf = new JLabel(" Pr�compte professionnel :*");
labPreCpteProf.setFont(titreFont);
labPreCpteProf.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labPreCpteProf);
parameterPane.add(textPreCpteProf.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel indemnit�
* @return JPanel indemnit�
*/
private JPanel indemnitePane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labIndemi = new JLabel(" Indemnit� :");
labIndemi.setFont(titreFont);
labIndemi.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labIndemi);
parameterPane.add(textIndemi.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel cotisation s�curit� social
* @return JPanel cotisation sociale
*/
private JPanel cotisationSecuSocialPane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labCotisSecu = new JLabel(" Cotisation s�curit� sociale :*");
labCotisSecu.setFont(titreFont);
labCotisSecu.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labCotisSecu);
parameterPane.add(textCotisSecu.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel charge patronal
* @return JPanel charge patronale
*/
private JPanel chargePatronalPane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labChrgPatronal = new JLabel(" Charge patronale :*");
labChrgPatronal.setFont(titreFont);
labChrgPatronal.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labChrgPatronal);
parameterPane.add(textChrgPatronal.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel reduction bas revenu
* @return JPanel reduction bas revenu
*/
private JPanel reductionBasRevenuPane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labReducBasRevenu = new JLabel(" R�duction bas revenu :");
labReducBasRevenu.setFont(titreFont);
labReducBasRevenu.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labReducBasRevenu);
parameterPane.add(textReducBasRevenu.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel salaire net
* @return JPanel salaire net
*/
private JPanel salaireNetPane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labSalNet = new JLabel(" Salaire net :");
labSalNet.setFont(titreFont);
labSalNet.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labSalNet);
parameterPane.add(textSalNet.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel avance salaire
* @return JPanel avance salaire
*/
private JPanel avanceSalairePane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labAvanceSal = new JLabel(" Avance salaire :");
labAvanceSal.setFont(titreFont);
labAvanceSal.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labAvanceSal);
parameterPane.add(textAvanceSal.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel montant � payer: salaire
* @return JPanel montPaie
*/
private JPanel montApayerPane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labMontApayer = new JLabel(" Montant � payer :");
labMontApayer.setFont(titreFont);
labMontApayer.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labMontApayer);
parameterPane.add(textMontApayer.ChampsTxt);
return parameterPane;
}
/**
* Cr�e panel chauffeur
* @return JPanel chauffeur
*/
private JPanel creeChauffeurPane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labIdChauf = new JLabel(" Chauffeur :");
labIdChauf.setFont(titreFont);
labIdChauf.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labIdChauf);
parameterPane.add(cmbChauffeur);
return parameterPane;
}
/**
* Cr�e panel �tat fiche salaire
* @return
*/
private JPanel creeEtatFicheSalairePane() {
JPanel parameterPane = new JPanel(false);
parameterPane.setLayout(new GridLayout());
parameterPane.setPreferredSize(new Dimension(500, 25));
labIdEtat = new JLabel(" Etat fiche salaire :");
labIdEtat.setFont(titreFont);
labIdEtat.setForeground(new java.awt.Color(66, 79, 120));
parameterPane.add(labIdEtat);
parameterPane.add(cmbEtats);
return parameterPane;
}
/**
*
* @return titre du formulaire
*/
private JPanel getTitre() {
if (titre == null) {
GridBagConstraints gridBagTitre = new GridBagConstraints();
gridBagTitre.gridx = 0;
gridBagTitre.gridy = 0;
titres = new JLabel();
titres.setText(" Fiche salaire");
titres.setFont(new java.awt.Font("Comic Sans MS", 1, 20));
titres.setForeground(new Color(255, 255, 255));
titre = new JPanel();
titre.setLayout(new GridBagLayout());
titre.setPreferredSize(new Dimension(50, 45));
titre.setBackground(new Color(66, 79, 120));
titre.add(titres, gridBagTitre);
}
return titre;
}
/**
* D�finit la fen�tre et ses composants
*/
public void affiche() throws PrjException {
try {
JToolBar toolBar = new JToolBar("Outils...");
JPanel parameterPane = new JPanel(false);
//parameterPane.setBackground(new Color(170, 207, 249));
parameterPane.setLayout(new FlowLayout());
parameterPane.setPreferredSize(new Dimension(1000, 500));
// parameterPane.setBorder(BorderFactory.createTitledBorder(" Localit�"));
parameterPane.add(datePaiePane());
parameterPane.add(nbJourPrestePane());
parameterPane.add(nbHeurePrestePane());
parameterPane.add(recetteSalaireBrutPane());
parameterPane.add(brutOnssPane());
parameterPane.add(precompteProfessionnelPane());
parameterPane.add(indemnitePane());
parameterPane.add(cotisationSecuSocialPane());
parameterPane.add(chargePatronalPane());
parameterPane.add(reductionBasRevenuPane());
parameterPane.add(salaireNetPane());
parameterPane.add(avanceSalairePane());
parameterPane.add(montApayerPane());
parameterPane.add(creeChauffeurPane());
parameterPane.add(creeEtatFicheSalairePane());
aDialog.getContentPane().add(getTitre(), BorderLayout.NORTH);
aDialog.getContentPane().add(parameterPane, BorderLayout.CENTER);
aDialog.getContentPane().add(toolBar, BorderLayout.PAGE_END);
toolBar.setBackground(new Color(66, 79, 120));
toolBar.add(FabricationButton("OK", CMD_OK, "OK...", this));
toolBar.add(FabricationButton("ANNULER", CMD_CANCEL, "Annuler...", this));
Point p = MainWindow.cadrePrincipal().getLocation();
aDialog.setLocation((p.x + 250), (p.y + 200));
aDialog.pack();
aDialog.setVisible(true);
} catch (NullPointerException exc) {
throw new PrjException(exc.getMessage());
}
}
/**
* Gestionnaire des �v�nements
*/
public void actionPerformed(ActionEvent e) {
try {
// Restaure la couleur de fonds par d�faut.
for (JComponent composant : Arrays.asList(textDatePaie, textNbJrPreste.ChampsTxt, textNbHrPreste.ChampsTxt, textRecSalBrut.ChampsTxt,
textBrutOnss.ChampsTxt, textPreCpteProf.ChampsTxt, textIndemi.ChampsTxt, textCotisSecu.ChampsTxt, textChrgPatronal.ChampsTxt,
textReducBasRevenu.ChampsTxt)) {
composant.setBackground(Color.WHITE);
composant.setToolTipText("");
}
String cmd = e.getActionCommand();
if (CMD_OK.equals(cmd)) {
Vector<ErreurDeValidation> erreursDeValidation = new Vector<ErreurDeValidation>();
Date dateFichePaie;
try {
dateFichePaie = new SimpleDateFormat(gui.MotsCleProjet.DATE_FORMAT).parse(textDatePaie.getText());
fichePaie.setDatePaie(dateFichePaie);
} catch (ParseException e1) {
erreursDeValidation.add(new ErreurDeValidation(textDatePaie, "le format date est invalide' "+ gui.MotsCleProjet.DATE_FORMAT));
//TaxiGuiUtil.MessageBox(MainWindow.desktop(), "Le format de date est invalide : attendu " + gui.MotsCleProjet.DATE_FORMAT, "Erreur");
}
if (textNbJrPreste.ChampsTxt.getText().trim().equals("")) {
erreursDeValidation.add(new ErreurDeValidation(textNbJrPreste.ChampsTxt, "nombre de jour est obligatoire"));
}
try {
Integer.parseInt(textNbJrPreste.ChampsTxt.getText());
} catch (NumberFormatException ex) {
erreursDeValidation.add(new ErreurDeValidation(textNbJrPreste.ChampsTxt, "nombre de jour n'est pas un nombre"));
}
if (textNbHrPreste.ChampsTxt.getText().trim().equals("")) {
erreursDeValidation.add(new ErreurDeValidation(textNbHrPreste.ChampsTxt, "nombre heure est obligatoire"));
}
if (textRecSalBrut.ChampsTxt.getText().trim().equals("")) {
erreursDeValidation.add(new ErreurDeValidation(textRecSalBrut.ChampsTxt, "la recette chauffeur est obligatoire"));
}
try {
new BigDecimal(textRecSalBrut.ChampsTxt.getText());
} catch (NumberFormatException ex) {
erreursDeValidation.add(new ErreurDeValidation(textRecSalBrut.ChampsTxt, "la recette n'est pas un nombre"));
}
if (textBrutOnss.ChampsTxt.getText().trim().equals("")) {
erreursDeValidation.add(new ErreurDeValidation(textBrutOnss.ChampsTxt, "Brut ONSS est obligatoire"));
}
try {
new BigDecimal(textBrutOnss.ChampsTxt.getText());
} catch (NumberFormatException ex) {
erreursDeValidation.add(new ErreurDeValidation(textBrutOnss.ChampsTxt, "Brut ONSS n'est pas un nombre"));
}
if (textPreCpteProf.ChampsTxt.getText().trim().equals("")) {
erreursDeValidation.add(new ErreurDeValidation(textPreCpteProf.ChampsTxt, "Pr�compte professionnel est obligatoire"));
}
try {
new BigDecimal(textPreCpteProf.ChampsTxt.getText());
} catch (NumberFormatException ex) {
erreursDeValidation.add(new ErreurDeValidation(textPreCpteProf.ChampsTxt, "Pr�compte professionnel n'est pas un nombre"));
}
if (textIndemi.ChampsTxt.getText().trim().equals("")) {
erreursDeValidation.add(new ErreurDeValidation(textIndemi.ChampsTxt, "Idemnit� est obligatoire"));
}
try {
new BigDecimal(textIndemi.ChampsTxt.getText());
} catch (NumberFormatException ex) {
erreursDeValidation.add(new ErreurDeValidation(textIndemi.ChampsTxt, "indemni n'est pas un nombre"));
}
if (textCotisSecu.ChampsTxt.getText().trim().equals("")) {
erreursDeValidation.add(new ErreurDeValidation(textCotisSecu.ChampsTxt, "cotisation s�cu est obligatoire"));
}
try {
new BigDecimal(textCotisSecu.ChampsTxt.getText());
} catch (NumberFormatException ex) {
erreursDeValidation.add(new ErreurDeValidation(textCotisSecu.ChampsTxt, "Cotisation s�cu n'est pas un nombre"));
}
if (textChrgPatronal.ChampsTxt.getText().trim().equals("")) {
erreursDeValidation.add(new ErreurDeValidation(textChrgPatronal.ChampsTxt, "charge patronal est obligatoire"));
}
try {
new BigDecimal(textChrgPatronal.ChampsTxt.getText());
} catch (NumberFormatException ex) {
erreursDeValidation.add(new ErreurDeValidation(textChrgPatronal.ChampsTxt, "charge patronal n'est pas un nombre"));
}
if (textReducBasRevenu.ChampsTxt.getText().trim().equals("")) {
erreursDeValidation.add(new ErreurDeValidation(textReducBasRevenu.ChampsTxt, "reduction bas revenu est obligatoire"));
}
try {
new BigDecimal(textReducBasRevenu.ChampsTxt.getText());
} catch (NumberFormatException ex) {
erreursDeValidation.add(new ErreurDeValidation(textReducBasRevenu.ChampsTxt, "reduction bas revenu n'est pas un nombre"));
}
if (textReducBasRevenu.ChampsTxt.getText().trim().equals("")) {
erreursDeValidation.add(new ErreurDeValidation(textReducBasRevenu.ChampsTxt, "reduction bas revenu est obligatoire"));
}
try {
new BigDecimal(textReducBasRevenu.ChampsTxt.getText());
} catch (NumberFormatException ex) {
erreursDeValidation.add(new ErreurDeValidation(textReducBasRevenu.ChampsTxt, "reduction bas revenu n'est pas un nombre"));
}
if (!erreursDeValidation.isEmpty()) {
StringBuffer erreurAffichee = new StringBuffer();
for (ErreurDeValidation erreurDeValidation : erreursDeValidation) {
erreurAffichee.append(erreurDeValidation.getMessageErreur());
erreurAffichee.append("\n");
erreurDeValidation.getComposant().setBackground(Color.RED);
erreurDeValidation.getComposant().setToolTipText(erreurDeValidation.getMessageErreur());
}
TaxiGuiUtil.MessageBox(MainWindow.desktop(), erreurAffichee.toString(), "ERREUR");
return;
}
else{
fichePaie.setNbrJourTravailPreste(Integer.parseInt(textNbJrPreste.ChampsTxt.getText()));
fichePaie.setNbrHrTravailPreste(Double.parseDouble(textNbHrPreste.ChampsTxt.getText()));
fichePaie.setRecetteSalaireVrut(Double.parseDouble(textRecSalBrut.ChampsTxt.getText()));
fichePaie.setBrutOnss(Double.parseDouble(textBrutOnss.ChampsTxt.getText()));
fichePaie.setPrecompteProfessionel(Double.parseDouble(textPreCpteProf.ChampsTxt.getText()));
fichePaie.setIndemnite(Double.parseDouble(textIndemi.ChampsTxt.getText()));
fichePaie.setCotisationSecu(Double.parseDouble(textCotisSecu.ChampsTxt.getText()));
fichePaie.setChargePatronal(Double.parseDouble(textChrgPatronal.ChampsTxt.getText()));
fichePaie.setReductionBasRevenu(Double.parseDouble(textReducBasRevenu.ChampsTxt.getText()));
fichePaie.setSalaireNet(Double.parseDouble(textSalNet.ChampsTxt.getText()));
fichePaie.setAvanceSalaire(Double.parseDouble(textAvanceSal.ChampsTxt.getText()));
fichePaie.setMontantAPayer(Double.parseDouble(textMontApayer.ChampsTxt.getText()));
fichePaie.setChauffeur(getChauffeurSelectionne());
fichePaie.setEtat(getEtatSelectionne());
okFlag = true;
aDialog.setVisible(false);
} }else if (CMD_CANCEL.equals(cmd)) {
okFlag = false;
aDialog.setVisible(false);
}
}catch(Exception ex) {
TaxiGuiUtil.MessageBox(MainWindow.desktop(), "Erreur syst�me : " + ex.getMessage(), "Erreur syst�me");
}
}
private boolean okFlag;
boolean OK_Button() {
return okFlag;
}
/**
* S�lectionne Etat
* @return �tat
*/
private Etat getEtatSelectionne() {
return ((EtatAffichable)cmbEtats.getSelectedItem()).getEtat();
}
/**
*
* @return
*/
private Chauffeur getChauffeurSelectionne() {
return ((ChauffeurAffichable<Chauffeur>)cmbChauffeur.getSelectedItem()).getChauffeur();
}
/**
*
* @return etatsAffichables
*/
private Vector<EtatAffichable> getListeEtats() {
Vector<EtatAffichable> etatsAffichables = new Vector<EtatAffichable>();
ArrayList<Etat> etats = getEtatDao().findAll();
for (Etat etat : etats) {
etatsAffichables.add(new EtatAffichable(etat));
}
return etatsAffichables;
}
/**
*
* @return chauffeurAffichable
*/
private Vector<ChauffeurAffichable<? extends IChauffeur>> getListeChauffeur() {
Vector<ChauffeurAffichable<? extends IChauffeur>> chauffeurAffichable = new Vector<ChauffeurAffichable<? extends IChauffeur>>();
ArrayList<Chauffeur> chauffeur = getChauffeurDao().findAll();
for (Chauffeur echauffeur : chauffeur) {
chauffeurAffichable.add(new ChauffeurAffichable<IChauffeur>(echauffeur));
}
return chauffeurAffichable;
}
/**
* retourne l'instance de la classe MysqlChauffeurDao pour pouvoir
* utiliser les m�thodes de l'interface IDao
* @return IDao<Chauffeur>
*/
private IDao<Chauffeur> getChauffeurDao() {
try {
return GestionnaireDeStockage.getInstance().getChauffeurDao();
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
} catch (InstantiationException e) {
throw new RuntimeException(e);
} catch (IllegalAccessException e) {
throw new RuntimeException(e);
}
}
/**
* retourne l'instance de la classe MysqlEtatDao pour pouvoir
* utiliser les m�thodes de l'interface IDao
* @return IDao<Etat>
*/ private IDao<Etat> getEtatDao() {
try {
return GestionnaireDeStockage.getInstance().getEtatDao();
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
} catch (InstantiationException e) {
throw new RuntimeException(e);
} catch (IllegalAccessException e) {
throw new RuntimeException(e);
}
}
}