From f55f7af6b3398be3f6565d704b355d49af8d1eb3 Mon Sep 17 00:00:00 2001 From: Alexis OKOROKOFF Date: Tue, 30 Nov 2021 10:27:50 +0100 Subject: [PATCH 1/7] fix pom version, --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index f68bdb83..e50b90fe 100644 --- a/pom.xml +++ b/pom.xml @@ -11,8 +11,8 @@ org.apache.maven.plugins maven-compiler-plugin - 16 - 16 + 15 + 15 From 72b04fc4022f54bda683694408929b5f7f31c998 Mon Sep 17 00:00:00 2001 From: Alexis OKOROKOFF Date: Tue, 30 Nov 2021 10:33:17 +0100 Subject: [PATCH 2/7] Add tempsPartiel and sexe with get set --- .../com/ipiecoles/java/java220/Employe.java | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/main/java/com/ipiecoles/java/java220/Employe.java b/src/main/java/com/ipiecoles/java/java220/Employe.java index 89f00726..548930ec 100644 --- a/src/main/java/com/ipiecoles/java/java220/Employe.java +++ b/src/main/java/com/ipiecoles/java/java220/Employe.java @@ -16,6 +16,10 @@ public abstract class Employe { private LocalDate dateEmbauche; private Double salaire = Entreprise.SALAIRE_BASE; + + private Boolean tempsPartiel; + + private String sexe; public Employe() { @@ -29,6 +33,23 @@ public Employe(String nom, String prenom, String matricule, LocalDate dateEmbauc this.salaire = salaire; } + public Boolean getTempsPartiel() { + return tempsPartiel; + } + + public void setTempsPartiel(Boolean tempsPartiel) { + this.tempsPartiel = tempsPartiel; + } + + + public String getSexe() { + return sexe; + } + + public void setSexe(String sexe) { + this.sexe = sexe; + } + public final Integer getNombreAnneeAnciennete() { return LocalDate.now().getYear() - dateEmbauche.getYear(); } From 7653e18a307668fcc6987a1034bad3b550b4e41f Mon Sep 17 00:00:00 2001 From: Alexis OKOROKOFF Date: Tue, 30 Nov 2021 10:34:24 +0100 Subject: [PATCH 3/7] Update employe toString --- src/main/java/com/ipiecoles/java/java220/Employe.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/com/ipiecoles/java/java220/Employe.java b/src/main/java/com/ipiecoles/java/java220/Employe.java index 548930ec..ab8a57c5 100644 --- a/src/main/java/com/ipiecoles/java/java220/Employe.java +++ b/src/main/java/com/ipiecoles/java/java220/Employe.java @@ -146,6 +146,8 @@ public String toString() { sb.append(", matricule='").append(matricule).append('\''); sb.append(", dateEmbauche=").append(dateEmbauche); sb.append(", salaire=").append(salaire); + sb.append(", tempsPartiel=").append(tempsPartiel); + sb.append(", sexe=").append(sexe); sb.append('}'); return sb.toString(); } From 136e27695c9bef0d1f61958d6ccda7c61d2be029 Mon Sep 17 00:00:00 2001 From: Alexis OKOROKOFF Date: Tue, 30 Nov 2021 10:35:43 +0100 Subject: [PATCH 4/7] Update equals and hashCode --- src/main/java/com/ipiecoles/java/java220/Employe.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/ipiecoles/java/java220/Employe.java b/src/main/java/com/ipiecoles/java/java220/Employe.java index ab8a57c5..08763cf2 100644 --- a/src/main/java/com/ipiecoles/java/java220/Employe.java +++ b/src/main/java/com/ipiecoles/java/java220/Employe.java @@ -163,12 +163,14 @@ public boolean equals(Object o) { if (nom != null ? !nom.equals(employe.nom) : employe.nom != null) return false; if (prenom != null ? !prenom.equals(employe.prenom) : employe.prenom != null) return false; if (matricule != null ? !matricule.equals(employe.matricule) : employe.matricule != null) return false; + if (sexe != null ? !sexe.equals(employe.sexe) : employe.sexe != null) return false; + if (tempsPartiel != null ? !tempsPartiel.equals(employe.tempsPartiel) : employe.tempsPartiel != null) return false; return dateEmbauche != null ? dateEmbauche.equals(employe.dateEmbauche) : employe.dateEmbauche == null; } @Override public int hashCode() { - return Objects.hash(nom, prenom, matricule, dateEmbauche, salaire); + return Objects.hash(nom, prenom, matricule, dateEmbauche, salaire, tempsPartiel, sexe); } } From 9e2eff84715144340d005aebf8643a5fec50be78 Mon Sep 17 00:00:00 2001 From: Alexis OKOROKOFF Date: Tue, 30 Nov 2021 10:36:55 +0100 Subject: [PATCH 5/7] Add new constructor --- src/main/java/com/ipiecoles/java/java220/Employe.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/main/java/com/ipiecoles/java/java220/Employe.java b/src/main/java/com/ipiecoles/java/java220/Employe.java index 08763cf2..659e194a 100644 --- a/src/main/java/com/ipiecoles/java/java220/Employe.java +++ b/src/main/java/com/ipiecoles/java/java220/Employe.java @@ -33,6 +33,16 @@ public Employe(String nom, String prenom, String matricule, LocalDate dateEmbauc this.salaire = salaire; } + public Employe(String nom, String prenom, String matricule, LocalDate dateEmbauche, Double salaire, Boolean tempsPartiel, String sexe) { + this.nom = nom; + this.prenom = prenom; + this.matricule = matricule; + this.dateEmbauche = dateEmbauche; + this.salaire = salaire; + this.tempsPartiel = tempsPartiel; + this.sexe = sexe; + } + public Boolean getTempsPartiel() { return tempsPartiel; } From f7813b84e806875022739a8dadbdbb6d697b3d93 Mon Sep 17 00:00:00 2001 From: Alexis OKOROKOFF Date: Tue, 30 Nov 2021 10:49:36 +0100 Subject: [PATCH 6/7] Add Cadre class with get set / getPrimeAnnuelle / hashCode, equals, toString --- .../com/ipiecoles/java/java220/Cadre.java | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 src/main/java/com/ipiecoles/java/java220/Cadre.java diff --git a/src/main/java/com/ipiecoles/java/java220/Cadre.java b/src/main/java/com/ipiecoles/java/java220/Cadre.java new file mode 100644 index 00000000..6eef3652 --- /dev/null +++ b/src/main/java/com/ipiecoles/java/java220/Cadre.java @@ -0,0 +1,53 @@ +package com.ipiecoles.java.java220; + +import org.joda.time.LocalDate; + +import java.util.Objects; + +public class Cadre extends Employe { + + private Double coefficient = 1.0; + + public Cadre() { + + } + + public Cadre(String nom, String prenom, String matricule, LocalDate dateEmbauche, Double salaire) { + super(nom, prenom, matricule, dateEmbauche, salaire); + } + + + public Double getCoefficient() { + return coefficient; + } + + public void setCoefficient(Double coefficient) { + this.coefficient = coefficient; + } + + public Double getPrimeAnnuelle() { + + return Entreprise.primeAnnuelleBase() * coefficient; + } + + @Override + public int hashCode() { + return Objects.hash(super.hashCode(), coefficient); + } + + public boolean equals(Object o) { + if (this == o) return true; + if (!(o instanceof Cadre)) return false; + if (!super.equals(o)) return false; + + Cadre cadre = (Cadre) o; + return coefficient != null ? coefficient.equals(cadre.coefficient) : cadre.coefficient == null; + } + + @Override + public String toString() { + return "Cadre{" + + "coefficient=" + coefficient + + "} " + super.toString(); + } +} From 90fecccc89628aa45f6cbc1f0ddd9d78e24af4ab Mon Sep 17 00:00:00 2001 From: Alexis OKOROKOFF Date: Tue, 30 Nov 2021 11:03:47 +0100 Subject: [PATCH 7/7] Add getNbConges for cadre --- src/main/java/com/ipiecoles/java/java220/Cadre.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/com/ipiecoles/java/java220/Cadre.java b/src/main/java/com/ipiecoles/java/java220/Cadre.java index 6eef3652..ce162b8b 100644 --- a/src/main/java/com/ipiecoles/java/java220/Cadre.java +++ b/src/main/java/com/ipiecoles/java/java220/Cadre.java @@ -30,6 +30,10 @@ public Double getPrimeAnnuelle() { return Entreprise.primeAnnuelleBase() * coefficient; } + public Integer getNbConges() { + return super.getNbConges() + (int)Math.ceil(this.coefficient); + } + @Override public int hashCode() { return Objects.hash(super.hashCode(), coefficient);