# HG changeset patch # User Raimund Renkert # Date 1377610006 -7200 # Node ID 046cdc094c7236ead01d8a8c1f68a62aeac3c9cc # Parent 5c996cf50437565ee4108772dd018b43f34151b2 Fixed keys and added probenzusatzwerte. diff -r 5c996cf50437 -r 046cdc094c72 src/main/java/de/intevation/lada/data/exporter/LAFCreator.java --- a/src/main/java/de/intevation/lada/data/exporter/LAFCreator.java Tue Aug 27 15:25:59 2013 +0200 +++ b/src/main/java/de/intevation/lada/data/exporter/LAFCreator.java Tue Aug 27 15:26:46 2013 +0200 @@ -18,9 +18,11 @@ import de.intevation.lada.model.LOrt; import de.intevation.lada.model.LProbe; import de.intevation.lada.model.LProbeInfo; +import de.intevation.lada.model.LZusatzWert; import de.intevation.lada.model.Ort; import de.intevation.lada.model.SMessEinheit; import de.intevation.lada.model.SMessgroesse; +import de.intevation.lada.model.SProbenZusatz; import de.intevation.lada.model.SProbenart; import de.intevation.lada.rest.Response; @@ -54,6 +56,10 @@ private Repository pkommentarRepo; @Inject + @Named("lzusatzwertrepository") + private Repository zusatzwertRepo; + + @Inject @Named("readonlyrepository") private Repository readonlyRepo; @@ -91,6 +97,13 @@ Response art = readonlyRepo.filter(artBuilder.getQuery()); List probenart = (List)art.getData(); + QueryBuilder zusatzBuilder = + new QueryBuilder( + zusatzwertRepo.getEntityManager(), LZusatzWert.class); + zusatzBuilder.and("probeId", probe.getProbeId()); + Response zusatz = zusatzwertRepo.filter(zusatzBuilder.getQuery()); + List zusatzwerte = (List)zusatz.getData(); + String laf = ""; laf += probe.getDatenbasisId() == null ? "": lafLine("DATENBASIS_S", probe.getDatenbasisId().toString()); @@ -98,7 +111,7 @@ "" : lafLine("NETZKENNUNG", probe.getNetzbetreiberId()); laf += probe.getMstId() == null ? "" : lafLine("MESSSTELLE", probe.getMstId()); - laf += lafLine("PROBEID", probe.getProbeId()); + laf += lafLine("PROBE_ID", probe.getProbeId()); laf += lafLine("HAUPTPROBENNUMMER", probe.getHauptprobenNr()); laf += probe.getBaId() == null ? "" : lafLine("MESSPROGRAMM_S", "\"" + probe.getBaId() + "\""); @@ -125,6 +138,9 @@ "" : lafLine("DESKRIPTOREN", "\"" + probe.getMediaDesk() + "\""); laf += probe.getTest() == Boolean.TRUE ? lafLine("TESTDATEN", "1") : lafLine("TESTDATEN", "0"); + for (LZusatzWert zw : zusatzwerte) { + laf += writeZusatzwert(zw); + } for (LKommentarP kp : kommentare) { laf += writeKommentar(kp); } @@ -133,6 +149,21 @@ return laf; } + private String writeZusatzwert(LZusatzWert zw) { + QueryBuilder builder = + new QueryBuilder( + readonlyRepo.getEntityManager(), SProbenZusatz.class); + builder.and("pzsId", zw.getPzsId()); + List zusaetze = + (List)readonlyRepo.filter(builder.getQuery()); + + String value = "\"" + zusaetze.get(0).getBeschreibung() + "\""; + value += " " + zw.getMesswertPzs(); + value += " " + zusaetze.get(0).getMehId(); + value += " " + zw.getMessfehler(); + return lafLine("PZB_S", value); + } + private String writeOrt(LProbeInfo probe) { QueryBuilder builder = new QueryBuilder( @@ -194,7 +225,7 @@ kommBuilder.and("probeId", probe.getProbeId()).and("messungsId", m.getMessungsId()); Response kommentar = mkommentarRepo.filter(kommBuilder.getQuery()); List kommentare = (List)kommentar.getData(); - laf += lafLine("MESSUNGSID", m.getMessungsId().toString()); + laf += lafLine("MESSUNGS_ID", m.getMessungsId().toString()); laf += lafLine("NEBENPROBENNUMMER", m.getNebenprobenNr()); laf += m.getMesszeitpunkt() == null ? "" : lafLine(