package org.lilie.services.eliot.temps.importsts.rapport
import groovy.xml.MarkupBuilder
-import org.lilie.services.eliot.temps.importsts.erreur.StsImportErreur
-import org.lilie.services.eliot.rapport.HtmlRapport
import org.codehaus.groovy.grails.web.context.ServletContextHolder
-import org.lilie.services.eliot.temps.importsts.erreur.StsImportAlerte
+import org.lilie.services.eliot.rapport.AbstractRapport
/**
* La classe construit le rapport d'import STS
* @author bahj
*/
-@SuppressWarnings('AbcComplexity')
-public class StsImportRapportHtmlBuilder implements HtmlRapport {
+public class StsImportRapportHtmlBuilder extends AbstractRapport {
+
StsImportRapport rapport
+
String urlCss
- void writeHtml(Writer writer) {
- MarkupBuilder builder = new MarkupBuilder(writer)
- buildHtml(builder)
+ private List<String> donneesRapport() {
+ List<String> resultat = []
+
+ resultat << 'Nombre de professeurs principaux importés : ' + rapport.nbProfesseursPrincipauxImportes
+ resultat << 'Nombre d\'échec de création de professeurs principaux : ' + rapport.nbEchecCreationProfesseursPrincipaux
+ resultat << ""
+
+ resultat << 'Nombre des enseignants mis à jour : ' + rapport.nbEnseignantsImportes
+ resultat << 'Nombre d\'échec de mise à jour des enseignants : ' + rapport.nbEchecEnseignantsImportes
+ resultat << ""
+
+ resultat << 'Nombre de matières créées ou modifiées : ' + rapport.nbMatieresImportees
+ resultat << 'Nombre d\'échec de création de matières : ' + rapport.nbEchecMatieresImportees
+ resultat << ""
+
+ resultat << 'Nombre de structures d\'enseignement mises à jour : ' + rapport.nbStructuresImportees
+ resultat << 'Nombre d\'échec de mise à jour de structures d\'enseignement : ' + rapport.nbEchecStructuresImportees
+ resultat << 'Nombre de structures d\'enseignement inexistantes: ' + rapport.nbStructuresInexistants
+ resultat << ""
+
+ resultat << 'Nombre de services créés ou mis à jour: ' + rapport.nbServicesImportes
+ resultat << 'Nombre d\'échec de création de services : ' + rapport.nbEchecServicesImportes
+ resultat << ""
+
+ resultat << 'Nombre d\'enseignements créés ou mis à jour: ' + rapport.nbEnseignementImportes
+ resultat << 'Nombre d\'échec de création d\'enseigements : ' + rapport.nbEchecEnseignementImportes
+ resultat << ""
+
+ resultat << 'Nombre de cahiers de textes créés ou mis à jour: ' + rapport.nbCahiersImportes
+ resultat << 'Nombre d\'échec de création de cahiers de textes : ' + rapport.nbEchecCahiersImportes
+ resultat << ""
+
+ resultat << 'Nombre d\'agendas structure créés ou modifiés : ' + rapport.nbAgendaStructureCree
+ resultat << 'Nombre d\'échec de création d\'agendas Structure : ' + rapport.nbEchecCreationAgendaStructure
+ resultat << ""
+
+ resultat << 'Nombre d\'agendas enseignant créés ou modifiés : ' + rapport.nbAgendaEnseignantCree
+ resultat << 'Nombre d\'échec de création d\'agendas Enseignant :' + rapport.nbEchecCreationAgendaEnseignant
+ resultat << ""
+
+ resultat << 'Nombre d\'évènements créés : ' + rapport.nbEvenementsCree
+ resultat << 'Nombre d\'échec de création d\'évènements : ' + rapport.nbEchecCreationEvenement
+ resultat << ""
+
+ resultat << 'Nombre d\'alternances en erreur (hors année scolaire) : ' + rapport.nbAlternancesEnErreur
+
+ return resultat
+ }
+
+ private void buildErrorMessage(MarkupBuilder builder, String titre, List alertes, List erreurs) {
+ builder.h4 {
+ li(titre)
+ p "Erreurs :"
+ }
+ erreurs.each {
+ builder.p(it.toString())
+ }
+ builder.br {}
+ builder.h4 {
+ p "Alertes :"
+ alertes.each {
+ p(it.toString())
+ }
+ }
+
}
- @SuppressWarnings(['MethodSize', 'AbcComplexity', 'NestedBlockDepth'])
- public buildHtml(MarkupBuilder builder) {
+ public void buildHtml(MarkupBuilder builder) {
+
def servletContext = ServletContextHolder.servletContext
InputStream is = servletContext.getResourceAsStream('/css/main.css')
+
builder.html {
head {
style(type: "text/css", is.getText())
}
br {}
div("id": "Statistiques", "class": "portal-menu-separator") {
- h4 {
- li('Nombre de professeurs principaux importés : ' + rapport.nbProfesseursPrincipauxImportes)
- li('Nombre d\'échec de création de professeurs principaux : ' + rapport.nbEchecCreationProfesseursPrincipaux)
- br {}
- li('Nombre des enseignants mis à jour : ' + rapport.nbEnseignantsImportes)
- li('Nombre d\'échec de mise à jour des enseignants : ' + rapport.nbEchecEnseignantsImportes)
- br {}
- li('Nombre de matières créées ou modifiées : ' + rapport.nbMatieresImportees)
- li('Nombre d\'échec de création de matières : ' + rapport.nbEchecMatieresImportees)
- br {}
- li('Nombre de structures d\'enseignement mises à jour : ' + rapport.nbStructuresImportees)
- li('Nombre d\'échec de mise à jour de structures d\'enseignement : ' + rapport.nbEchecStructuresImportees)
- li('Nombre de structures d\'enseignement inexistantes: ' + rapport.nbStructuresInexistants)
- br {}
- li('Nombre de services créés ou mis à jour: ' + rapport.nbServicesImportes)
- li('Nombre d\'échec de création de services : ' + rapport.nbEchecServicesImportes)
- br {}
- li('Nombre d\'enseignements créés ou mis à jour: ' + rapport.nbEnseignementImportes)
- li('Nombre d\'échec de création d\'enseigements : ' + rapport.nbEchecEnseignementImportes)
- br {}
- li('Nombre de cahiers de textes créés ou mis à jour: ' + rapport.nbCahiersImportes)
- li('Nombre d\'échec de création de cahiers de textes : ' + rapport.nbEchecCahiersImportes)
- br {}
- li('Nombre d\'agendas structure créés ou modifiés : ' + rapport.nbAgendaStructureCree)
- li('Nombre d\'échec de création d\'agendas Structure : ' + rapport.nbEchecCreationAgendaStructure)
- br {}
- li('Nombre d\'agendas enseignant créés ou modifiés : ' + rapport.nbAgendaEnseignantCree)
- li('Nombre d\'échec de création d\'agendas Enseignant :' + rapport.nbEchecCreationAgendaEnseignant)
- br {}
- li('Nombre d\'évènements créés : ' + rapport.nbEvenementsCree)
- li('Nombre d\'échec de création d\'évènements : ' + rapport.nbEchecCreationEvenement)
- br {}
- li('Nombre d\'alternances en erreur (hors année scolaire) : ' + rapport.nbAlternancesEnErreur)
- }
+ corps(donneesRapport())
}
- br {}
- br {}
+ dbr {}
div("id": "Logs", "class": "portal-menu-separator") {
- if (rapport.listErreursStsEmp.size() > 0 || rapport.listAlertesStsEmp.size() > 0) {
- h4 {
- li("Détails des erreurs et des alertes de l'import de fichier StsEmp")
- p "Erreurs :"
- }
- rapport.listErreursStsEmp.each {StsImportErreur log ->
- p(log.toString())
- }
- br {}
- h4 {
- p "Alertes :"
- rapport.listAlertesStsEmp.each {StsImportAlerte log ->
- p(log.toString())
- }
- }
+
+ if (rapport.isLogStsEmp()) {
+
+ buildErrorMessage(
+ builder,
+ "Détails des erreurs et des alertes de l'import de fichier StsEmp",
+ rapport.listAlertesStsEmp,
+ rapport.listErreursStsEmp)
}
- if (rapport.listErreursEmpSts.size() > 0 || rapport.listAlertesEmpSts.size() > 0) {
- br {}
- br {}
- h4 {
- li("Détails des erreurs et des alertes de l'import de fichier EmpSts")
- p "Erreurs :"
- }
- rapport.listErreursEmpSts.each {StsImportErreur log ->
- p(log.toString())
- }
- br {}
- h4 {
- p "Alertes :"
- rapport.listAlertesEmpSts.each {StsImportAlerte log ->
- p(log.toString())
- }
- }
+ if (rapport.isLogEmpSts()) {
+ dbr {}
+
+ buildErrorMessage(
+ builder,
+ "\"Détails des erreurs et des alertes de l'import de fichier EmpSts",
+ rapport.listAlertesEmpSts,
+ rapport.listErreursEmpSts)
}
+
}
- br {}
- br {}
+ dbr {}
p('Fin de l\'import, durée totale : ' + (rapport.tempsExecution) / 1000 + ' sec.')
p('Message de fin d\'import: ' + rapport.messageFinTraitement)
}