57 lines
1.8 KiB
Java
57 lines
1.8 KiB
Java
// eine frei formulierte Filterbedingung muss einen boolischen Wert zurückgeben
|
|
//
|
|
// "dialogwertZeile" liefert den Vergleichswert, welcher bei der zu dieser Filterzeile gehörigen
|
|
// Dialog-Abfrage angegeben wurde.
|
|
//
|
|
// "dialogwerteMap.get(n)" liefert den Vergleichswert, welcher bei der zur Filterzeile "n"
|
|
// gehörigen Dialog-Abfrage angegeben wurde.
|
|
import de.isb.svp.domain.pojo.SchuelerSchuljahr;
|
|
|
|
SchuelerSchuljahr schuelerSchuljahr = obj;
|
|
|
|
noteListe = schuelerSchuljahr.getNoteListe();
|
|
daten_alle_einzelnoten = [];
|
|
daten_schnitte = [];
|
|
java.text.NumberFormat nf = java.text.NumberFormat.getNumberInstance(Locale.GERMANY);
|
|
|
|
for (i=0; i < noteListe.size(); i++) {
|
|
String bezeichner = noteListe[i].getBlockbezeichner();
|
|
try {
|
|
String note = noteListe[i].note;
|
|
note = note.replaceAll("-","");
|
|
daten_eine_note = Integer.parseInt(note);
|
|
}
|
|
catch (NumberFormatException e) {
|
|
daten_eine_note = 0;
|
|
}
|
|
if ((bezeichner == "Kleine LN 1. Halbjahr" || bezeichner == "Kleine LN 2. Halbjahr" ||
|
|
bezeichner == "Große LN 1. Halbjahr" || bezeichner == "Große LN 2. Halbjahr" ) && daten_eine_note != 0) {
|
|
daten_alle_einzelnoten.add(daten_eine_note);
|
|
}
|
|
else if (bezeichner == "KLEIN gesamt" || bezeichner == "GROSS gesamt") {
|
|
schnitt = nf.parse(noteListe[i].note).floatValue();
|
|
daten_schnitte.add(schnitt);
|
|
}
|
|
}
|
|
|
|
boolean pan = false;
|
|
boolean einzelPAN =false;
|
|
|
|
for (int element : daten_alle_einzelnoten) {
|
|
if (element == 5 || element == 6){
|
|
einzelPAN = true;
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (einzelPAN) {
|
|
for (float element : daten_schnitte) {
|
|
if (element > 4.5) {
|
|
pan = true;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
return pan;
|