feat: add flocage customization options to equipement configuration
This commit is contained in:
@@ -33,6 +33,15 @@ public class Equipement {
|
||||
private String couleursDisponibles;
|
||||
|
||||
|
||||
@Column(name = "has_flocage_prenom", nullable = false)
|
||||
private boolean hasFlocagePrenom = false;
|
||||
|
||||
@Column(name = "has_flocage_initiales", nullable = false)
|
||||
private boolean hasFlocageInitiales = false;
|
||||
|
||||
@Column(name = "has_flocage_numero", nullable = false)
|
||||
private boolean hasFlocageNumero = false;
|
||||
|
||||
@ManyToOne(optional = false, fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "saison_id", nullable = false)
|
||||
private Saison saison;
|
||||
@@ -63,6 +72,15 @@ public class Equipement {
|
||||
public String getCouleursDisponibles() { return couleursDisponibles; }
|
||||
public void setCouleursDisponibles(String couleursDisponibles) { this.couleursDisponibles = couleursDisponibles; }
|
||||
|
||||
public boolean isHasFlocagePrenom() { return hasFlocagePrenom; }
|
||||
public void setHasFlocagePrenom(boolean hasFlocagePrenom) { this.hasFlocagePrenom = hasFlocagePrenom; }
|
||||
|
||||
public boolean isHasFlocageInitiales() { return hasFlocageInitiales; }
|
||||
public void setHasFlocageInitiales(boolean hasFlocageInitiales) { this.hasFlocageInitiales = hasFlocageInitiales; }
|
||||
|
||||
public boolean isHasFlocageNumero() { return hasFlocageNumero; }
|
||||
public void setHasFlocageNumero(boolean hasFlocageNumero) { this.hasFlocageNumero = hasFlocageNumero; }
|
||||
|
||||
public Saison getSaison() { return saison; }
|
||||
public void setSaison(Saison saison) { this.saison = saison; }
|
||||
}
|
||||
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
ALTER TABLE equipement ADD COLUMN has_flocage_prenom BOOLEAN DEFAULT FALSE NOT NULL;
|
||||
ALTER TABLE equipement ADD COLUMN has_flocage_initiales BOOLEAN DEFAULT FALSE NOT NULL;
|
||||
ALTER TABLE equipement ADD COLUMN has_flocage_numero BOOLEAN DEFAULT FALSE NOT NULL;
|
||||
|
||||
-- Activation automatique de l'option "numéro" pour les équipements ayant déjà des dotations avec un numéro
|
||||
UPDATE equipement e
|
||||
SET has_flocage_numero = TRUE
|
||||
WHERE EXISTS (
|
||||
SELECT 1 FROM dotation d WHERE d.equipement_id = e.id AND d.numero IS NOT NULL AND d.numero != ''
|
||||
);
|
||||
|
||||
-- Activation automatique de l'option "prénom" (uniquement) pour les équipements ayant déjà des dotations avec un flocage
|
||||
UPDATE equipement e
|
||||
SET has_flocage_prenom = TRUE
|
||||
WHERE EXISTS (
|
||||
SELECT 1 FROM dotation d WHERE d.equipement_id = e.id AND d.flocage IS NOT NULL AND d.flocage != ''
|
||||
);
|
||||
|
||||
UPDATE dotation
|
||||
SET flocage = a.prenom
|
||||
FROM licence l
|
||||
JOIN adherent a ON l.adherent_id = a.id
|
||||
WHERE dotation.licence_id = l.id
|
||||
AND dotation.flocage IS NOT NULL
|
||||
AND dotation.flocage != ''
|
||||
AND EXISTS (
|
||||
SELECT 1 FROM equipement e
|
||||
WHERE e.id = dotation.equipement_id
|
||||
AND e.has_flocage_prenom = TRUE
|
||||
AND e.has_flocage_initiales = FALSE
|
||||
);
|
||||
Reference in New Issue
Block a user