changeset 330:046cdc094c72

Fixed keys and added probenzusatzwerte.
author Raimund Renkert <rrenkert@intevation.de>
date Tue, 27 Aug 2013 15:26:46 +0200
parents 5c996cf50437
children 5d11428e6a09
files src/main/java/de/intevation/lada/data/exporter/LAFCreator.java
diffstat 1 files changed, 33 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- 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<SProbenart> probenart = (List<SProbenart>)art.getData();
 
+        QueryBuilder<LZusatzWert> zusatzBuilder =
+            new QueryBuilder<LZusatzWert>(
+                zusatzwertRepo.getEntityManager(), LZusatzWert.class);
+        zusatzBuilder.and("probeId", probe.getProbeId());
+        Response zusatz = zusatzwertRepo.filter(zusatzBuilder.getQuery());
+        List<LZusatzWert> zusatzwerte = (List<LZusatzWert>)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<SProbenZusatz> builder =
+            new QueryBuilder<SProbenZusatz>(
+                readonlyRepo.getEntityManager(), SProbenZusatz.class);
+        builder.and("pzsId", zw.getPzsId());
+        List<SProbenZusatz> zusaetze = 
+            (List<SProbenZusatz>)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<LOrt> builder =
             new QueryBuilder<LOrt>(
@@ -194,7 +225,7 @@
             kommBuilder.and("probeId", probe.getProbeId()).and("messungsId", m.getMessungsId());
             Response kommentar = mkommentarRepo.filter(kommBuilder.getQuery());
             List<LKommentarM> kommentare = (List<LKommentarM>)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(
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)