Skip to content

Commit 9a3d1b8

Browse files
ThymeleafController: Methode ausimplementiert
1 parent 7521f73 commit 9a3d1b8

File tree

1 file changed

+40
-1
lines changed

1 file changed

+40
-1
lines changed

src/main/java/de/eldecker/dhbw/spring/sla/thymeleaf/ThymeleafWebController.java

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,49 @@ public ThymeleafWebController( SLARechner slaRechner ) {
3535
}
3636

3737

38+
/**
39+
* Seite mit Ausfallzeiten für bestimmten SLA-Wert anzeigen.
40+
*
41+
* @param slaWertProzent Prozent-Wert für SLA
42+
*
43+
* @param model Objekt um Werte für Platzhalter in Template zu setzen
44+
*
45+
* @return Template-Datei
46+
*/
3847
@GetMapping("/sla/{slaWertProzent}")
3948
public String slaWertUmrechnen( @PathVariable String slaWertProzent,
4049
Model model ) {
41-
return "todo";
50+
51+
LOG.info( "Pfad /sla aufgerufen mit Pfadparademeter \"{}\".", slaWertProzent );
52+
53+
try {
54+
55+
double slaDouble = Double.parseDouble( slaWertProzent );
56+
57+
Ausfallzeiten ausfallzeiten = _slaRechner.berechneAusfallzeiten( slaDouble );
58+
59+
LOG.info( "Ausfallzeilen für SLA=\"%s\": " + ausfallzeiten, slaWertProzent );
60+
61+
model.addAttribute( "slaProzentWert" , slaDouble );
62+
model.addAttribute( "maxAusfallProJahr" , ausfallzeiten.ausfallzeitProJahr() );
63+
64+
model.addAttribute( "maxAusfallProWoche", ausfallzeiten.ausfallzeitProWoche() );
65+
66+
model.addAttribute( "maxAusfallProTag" , ausfallzeiten.ausfallzeitProTag() );
67+
68+
return "ergebnis"; // template "ergebnis.html"
69+
}
70+
catch ( Exception ex ) {
71+
72+
final String fehlerText =
73+
String.format( "Fehler für SLA-Wert \"%s\": " + ex, slaWertProzent );
74+
75+
LOG.error( fehlerText, ex );
76+
77+
model.addAttribute( "fehlertext", fehlerText );
78+
79+
return "fehler"; // template "fehler.html"
80+
}
4281
}
4382

4483
}

0 commit comments

Comments
 (0)