Map donneesDuTableau = rechercher(params)
// vérifier les colonnes sélectionnées pour l'affichage
List<Integer> colonnesSelectionneesIds = mapParams.colonnes?.toList()
- boolean colonneDateHeureSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveCourrierColonnesEnum.DATE_HEURE.id) : true
- boolean colonneNomSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveCourrierColonnesEnum.NOM.id) : true
- boolean colonneClasseSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveCourrierColonnesEnum.CLASSE.id) : true
- boolean colonneSupportSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveCourrierColonnesEnum.SUPPORT.id) : true
- boolean colonneModeleSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveCourrierColonnesEnum.MODELE.id) : true
+ List<SuiviEleveCourrierColonnesEnum> colonnesSelectionnees = getColonnesSelectionneesCourrier(colonnesSelectionneesIds)
// définir les colonnes en créant une liste de String contenant le nom de chaque colonne
- if (colonneDateHeureSelectionnee){
+ boolean colDateHeureSelectionnee = false
+ boolean colNomSelectionnee = false
+ boolean colClasseSelectionnee = false
+ boolean colSupportSelectionnee = false
+ boolean colModeleSelectionnee = false
+ if (colonnesSelectionnees.contains(SuiviEleveCourrierColonnesEnum.DATE_HEURE)){
donneesPourExportCSV.colonnes << message(code: 'absences.publipostage.libelle.date', default: 'Date heure')
+ colDateHeureSelectionnee = true
}
- if (colonneNomSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveCourrierColonnesEnum.NOM)){
donneesPourExportCSV.colonnes << message(code: 'absences.publipostage.libelle.nom', default: 'Nom Prénom')
+ colNomSelectionnee = true
}
- if (colonneClasseSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveCourrierColonnesEnum.CLASSE)){
donneesPourExportCSV.colonnes << message(code: 'absences.publipostage.libelle.classe', default: 'Classe')
+ colClasseSelectionnee = true
}
- if (colonneSupportSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveCourrierColonnesEnum.SUPPORT)){
donneesPourExportCSV.colonnes << message(code: 'absences.publipostage.libelle.support', default: 'Support')
+ colSupportSelectionnee = true
}
- if (colonneModeleSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveCourrierColonnesEnum.MODELE)){
donneesPourExportCSV.colonnes << message(code: 'absences.libelle.modele', default: 'Modèle')
+ colModeleSelectionnee = true
}
// formater les données du tableau tel que pour chaque ligne, on a une liste de valeurs, dans l'ordre des colonnes du tableau
SimpleDateFormat sdf = new SimpleDateFormat('dd/MM/yyyy HH:mm:ss', Locale.FRANCE)
donneesDuTableau.data.each{
List ligne = []
- if (colonneDateHeureSelectionnee) {ligne.add(sdf.format(new Date(it.date.getTime())))}
- if (colonneNomSelectionnee) {ligne.add(it.nom)}
- if (colonneClasseSelectionnee) {ligne.add(it.classe)}
- if (colonneSupportSelectionnee) {ligne.add(it.type)}
- if (colonneModeleSelectionnee) {ligne.add(it.modele)}
+ if (colDateHeureSelectionnee) {ligne.add(sdf.format(new Date(it.date.getTime())))}
+ if (colNomSelectionnee) {ligne.add(it.nom)}
+ if (colClasseSelectionnee) {ligne.add(it.classe)}
+ if (colSupportSelectionnee) {ligne.add(it.type)}
+ if (colModeleSelectionnee) {ligne.add(it.modele)}
donneesPourExportCSV.lignes << ligne
}
// réaliser l'export
Map donneesDuTableau = rechercher(params)
// vérifier les colonnes sélectionnées pour l'affichage
List<Integer> colonnesSelectionneesIds = mapParams.colonnes?.toList()
- boolean colonneDateHeureSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveSMSColonnesEnum.DATE_HEURE.id) : true
- boolean colonneNomPrenomSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveSMSColonnesEnum.NOM_PRENOM.id) : true
- boolean colonneClasseSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveSMSColonnesEnum.CLASSE.id) : true
- boolean colonneResponsableSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveSMSColonnesEnum.RESPONSABLE.id) : true
- boolean colonneTelPortSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveSMSColonnesEnum.TEL_PORT.id) : true
- boolean colonneNomSMSSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveSMSColonnesEnum.NOM_SMS.id) : true
- boolean colonneStatutSelectionnee = colonnesSelectionneesIds ?
- colonnesSelectionneesIds.contains(SuiviEleveSMSColonnesEnum.STATUT.id) : true
+ List<SuiviEleveSMSColonnesEnum> colonnesSelectionnees = getColonnesSelectionneesSMS(colonnesSelectionneesIds)
+ boolean colDateHeureSelectionnee = false
+ boolean colNomPrenomSelectionnee = false
+ boolean colClasseSelectionnee = false
+ boolean colResponsableSelectionnee = false
+ boolean colTelPortSelectionnee = false
+ boolean colNomSMSSelectionnee = false
+ boolean colStatutSelectionnee = false
// définir les colonnes en créant une liste de String contenant le nom de chaque colonne
- if (colonneDateHeureSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveSMSColonnesEnum.DATE_HEURE)){
donneesPourExportCSV.colonnes << message(code: 'absences.publipostage.libelle.date', default: 'Date heure')
+ colDateHeureSelectionnee = true
}
- if (colonneNomPrenomSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveSMSColonnesEnum.NOM_PRENOM)){
donneesPourExportCSV.colonnes << message(code: 'absences.publipostage.libelle.nom', default: 'Nom Prénom')
+ colNomPrenomSelectionnee = true
}
- if (colonneClasseSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveSMSColonnesEnum.CLASSE)){
donneesPourExportCSV.colonnes << message(code: 'absences.publipostage.libelle.classe', default: 'Classe')
+ colClasseSelectionnee = true
}
- if (colonneResponsableSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveSMSColonnesEnum.RESPONSABLE)){
donneesPourExportCSV.colonnes << message(code: 'absences.libelle.responsable', default: 'Responsable')
+ colResponsableSelectionnee = true
}
- if (colonneTelPortSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveSMSColonnesEnum.TEL_PORT)){
donneesPourExportCSV.colonnes << message(code: 'absences.libelle.portable', default: 'Tél. Port.')
+ colTelPortSelectionnee = true
}
- if (colonneNomSMSSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveSMSColonnesEnum.NOM_SMS)){
donneesPourExportCSV.colonnes << message(code: 'absences.libelle.nomSms', default: 'Nom du SMS')
+ colNomSMSSelectionnee = true
}
- if (colonneStatutSelectionnee){
+ if (colonnesSelectionnees.contains(SuiviEleveSMSColonnesEnum.STATUT)){
donneesPourExportCSV.colonnes << message(code: 'absences.libelle.statut', default: 'Statut')
+ colStatutSelectionnee = true
}
// formater les données du tableau tel que pour chaque ligne, on a une liste de valeurs, dans l'ordre des colonnes du tableau
SimpleDateFormat sdf = new SimpleDateFormat('dd/MM/yyyy HH:mm:ss', Locale.FRANCE)
donneesDuTableau.data.each{
List ligne = []
- if (colonneDateHeureSelectionnee) {ligne.add(sdf.format(new Date(it.date.getTime())))}
- if (colonneNomPrenomSelectionnee) {ligne.add(it.nom)}
- if (colonneClasseSelectionnee) {ligne.add(it.classe)}
- if (colonneResponsableSelectionnee) {ligne.add(it.responsable)}
- if (colonneTelPortSelectionnee) {ligne.add(it.portable)}
- if (colonneNomSMSSelectionnee) {ligne.add(it.modele)}
- if (colonneStatutSelectionnee) {ligne.add(it.statut)}
+ if (colDateHeureSelectionnee) {ligne.add(sdf.format(new Date(it.date.getTime())))}
+ if (colNomPrenomSelectionnee) {ligne.add(it.nom)}
+ if (colClasseSelectionnee) {ligne.add(it.classe)}
+ if (colResponsableSelectionnee) {ligne.add(it.responsable)}
+ if (colTelPortSelectionnee) {ligne.add(it.portable)}
+ if (colNomSMSSelectionnee) {ligne.add(it.modele)}
+ if (colStatutSelectionnee) {ligne.add(it.statut)}
donneesPourExportCSV.lignes << ligne
}
// réaliser l'export
sendCsvFile(response, donneesPourExportCSV, NOM_FICHIER_EXPORT)
}
+ private List<SuiviEleveCourrierColonnesEnum> getColonnesSelectionneesCourrier(List<Integer> colonnesSelectionneesIds) {
+ List<SuiviEleveCourrierColonnesEnum> colonnesSelectionnees = []
+ if (colonnesSelectionneesIds?.contains(SuiviEleveCourrierColonnesEnum.DATE_HEURE.id)) {
+ colonnesSelectionnees.add(SuiviEleveCourrierColonnesEnum.DATE_HEURE)
+ }
+ if (colonnesSelectionneesIds?.contains(SuiviEleveCourrierColonnesEnum.NOM.id)) {
+ colonnesSelectionnees.add(SuiviEleveCourrierColonnesEnum.NOM)
+ }
+ if (colonnesSelectionneesIds?.contains(SuiviEleveCourrierColonnesEnum.CLASSE.id)) {
+ colonnesSelectionnees.add(SuiviEleveCourrierColonnesEnum.CLASSE)
+ }
+ if (colonnesSelectionneesIds?.contains(SuiviEleveCourrierColonnesEnum.SUPPORT.id)) {
+ colonnesSelectionnees.add(SuiviEleveCourrierColonnesEnum.SUPPORT)
+ }
+ if (colonnesSelectionneesIds?.contains(SuiviEleveCourrierColonnesEnum.MODELE.id)) {
+ colonnesSelectionnees.add(SuiviEleveCourrierColonnesEnum.MODELE)
+ }
+ return colonnesSelectionnees
+ }
+
+ private List<SuiviEleveSMSColonnesEnum> getColonnesSelectionneesSMS(List<Integer> colonnesSelectionneesIds) {
+ List<SuiviEleveSMSColonnesEnum> colonnesSelectionnees = []
+ if (colonnesSelectionneesIds?.contains(SuiviEleveSMSColonnesEnum.DATE_HEURE.id)) {
+ colonnesSelectionnees.add(SuiviEleveSMSColonnesEnum.DATE_HEURE)
+ }
+ if (colonnesSelectionneesIds?.contains(SuiviEleveSMSColonnesEnum.NOM_PRENOM.id)) {
+ colonnesSelectionnees.add(SuiviEleveSMSColonnesEnum.NOM_PRENOM)
+ }
+ if (colonnesSelectionneesIds?.contains(SuiviEleveSMSColonnesEnum.CLASSE.id)) {
+ colonnesSelectionnees.add(SuiviEleveSMSColonnesEnum.CLASSE)
+ }
+ if (colonnesSelectionneesIds?.contains(SuiviEleveSMSColonnesEnum.RESPONSABLE.id)) {
+ colonnesSelectionnees.add(SuiviEleveSMSColonnesEnum.RESPONSABLE)
+ }
+ if (colonnesSelectionneesIds?.contains(SuiviEleveSMSColonnesEnum.TEL_PORT.id)) {
+ colonnesSelectionnees.add(SuiviEleveSMSColonnesEnum.TEL_PORT)
+ }
+ if (colonnesSelectionneesIds?.contains(SuiviEleveSMSColonnesEnum.NOM_SMS.id)) {
+ colonnesSelectionnees.add(SuiviEleveSMSColonnesEnum.NOM_SMS)
+ }
+ if (colonnesSelectionneesIds?.contains(SuiviEleveSMSColonnesEnum.STATUT.id)) {
+ colonnesSelectionnees.add(SuiviEleveSMSColonnesEnum.STATUT)
+ }
+ return colonnesSelectionnees
+ }
+
private Map rechercher(GrailsParameterMap params){
int start