comparison src/main/java/de/intevation/lada/data/exporter/LAFCreator.java @ 330:046cdc094c72

Fixed keys and added probenzusatzwerte.
author Raimund Renkert <rrenkert@intevation.de>
date Tue, 27 Aug 2013 15:26:46 +0200
parents 891a2133cf46
children d43d371900e4
comparison
equal deleted inserted replaced
329:5c996cf50437 330:046cdc094c72
16 import de.intevation.lada.model.LMessung; 16 import de.intevation.lada.model.LMessung;
17 import de.intevation.lada.model.LMesswert; 17 import de.intevation.lada.model.LMesswert;
18 import de.intevation.lada.model.LOrt; 18 import de.intevation.lada.model.LOrt;
19 import de.intevation.lada.model.LProbe; 19 import de.intevation.lada.model.LProbe;
20 import de.intevation.lada.model.LProbeInfo; 20 import de.intevation.lada.model.LProbeInfo;
21 import de.intevation.lada.model.LZusatzWert;
21 import de.intevation.lada.model.Ort; 22 import de.intevation.lada.model.Ort;
22 import de.intevation.lada.model.SMessEinheit; 23 import de.intevation.lada.model.SMessEinheit;
23 import de.intevation.lada.model.SMessgroesse; 24 import de.intevation.lada.model.SMessgroesse;
25 import de.intevation.lada.model.SProbenZusatz;
24 import de.intevation.lada.model.SProbenart; 26 import de.intevation.lada.model.SProbenart;
25 import de.intevation.lada.rest.Response; 27 import de.intevation.lada.rest.Response;
26 28
27 @Named("lafcreator") 29 @Named("lafcreator")
28 public class LAFCreator 30 public class LAFCreator
50 private Repository mkommentarRepo; 52 private Repository mkommentarRepo;
51 53
52 @Inject 54 @Inject
53 @Named("lkommentarRepository") 55 @Named("lkommentarRepository")
54 private Repository pkommentarRepo; 56 private Repository pkommentarRepo;
57
58 @Inject
59 @Named("lzusatzwertrepository")
60 private Repository zusatzwertRepo;
55 61
56 @Inject 62 @Inject
57 @Named("readonlyrepository") 63 @Named("readonlyrepository")
58 private Repository readonlyRepo; 64 private Repository readonlyRepo;
59 65
88 new QueryBuilder<SProbenart>( 94 new QueryBuilder<SProbenart>(
89 readonlyRepo.getEntityManager(), SProbenart.class); 95 readonlyRepo.getEntityManager(), SProbenart.class);
90 artBuilder.and("probenartId", probe.getProbenartId()); 96 artBuilder.and("probenartId", probe.getProbenartId());
91 Response art = readonlyRepo.filter(artBuilder.getQuery()); 97 Response art = readonlyRepo.filter(artBuilder.getQuery());
92 List<SProbenart> probenart = (List<SProbenart>)art.getData(); 98 List<SProbenart> probenart = (List<SProbenart>)art.getData();
99
100 QueryBuilder<LZusatzWert> zusatzBuilder =
101 new QueryBuilder<LZusatzWert>(
102 zusatzwertRepo.getEntityManager(), LZusatzWert.class);
103 zusatzBuilder.and("probeId", probe.getProbeId());
104 Response zusatz = zusatzwertRepo.filter(zusatzBuilder.getQuery());
105 List<LZusatzWert> zusatzwerte = (List<LZusatzWert>)zusatz.getData();
93 106
94 String laf = ""; 107 String laf = "";
95 laf += probe.getDatenbasisId() == null ? 108 laf += probe.getDatenbasisId() == null ?
96 "": lafLine("DATENBASIS_S", probe.getDatenbasisId().toString()); 109 "": lafLine("DATENBASIS_S", probe.getDatenbasisId().toString());
97 laf += probe.getNetzbetreiberId() == null ? 110 laf += probe.getNetzbetreiberId() == null ?
98 "" : lafLine("NETZKENNUNG", probe.getNetzbetreiberId()); 111 "" : lafLine("NETZKENNUNG", probe.getNetzbetreiberId());
99 laf += probe.getMstId() == null ? 112 laf += probe.getMstId() == null ?
100 "" : lafLine("MESSSTELLE", probe.getMstId()); 113 "" : lafLine("MESSSTELLE", probe.getMstId());
101 laf += lafLine("PROBEID", probe.getProbeId()); 114 laf += lafLine("PROBE_ID", probe.getProbeId());
102 laf += lafLine("HAUPTPROBENNUMMER", probe.getHauptprobenNr()); 115 laf += lafLine("HAUPTPROBENNUMMER", probe.getHauptprobenNr());
103 laf += probe.getBaId() == null ? 116 laf += probe.getBaId() == null ?
104 "" : lafLine("MESSPROGRAMM_S", "\"" + probe.getBaId() + "\""); 117 "" : lafLine("MESSPROGRAMM_S", "\"" + probe.getBaId() + "\"");
105 laf += probe.getProbenartId() == null ? 118 laf += probe.getProbenartId() == null ?
106 "" : lafLine("PROBENART", 119 "" : lafLine("PROBENART",
123 "" : lafLine("MEDIA", "\"" + probe.getMedia() + "\""); 136 "" : lafLine("MEDIA", "\"" + probe.getMedia() + "\"");
124 laf += probe.getMediaDesk() == null ? 137 laf += probe.getMediaDesk() == null ?
125 "" : lafLine("DESKRIPTOREN", "\"" + probe.getMediaDesk() + "\""); 138 "" : lafLine("DESKRIPTOREN", "\"" + probe.getMediaDesk() + "\"");
126 laf += probe.getTest() == Boolean.TRUE ? 139 laf += probe.getTest() == Boolean.TRUE ?
127 lafLine("TESTDATEN", "1") : lafLine("TESTDATEN", "0"); 140 lafLine("TESTDATEN", "1") : lafLine("TESTDATEN", "0");
141 for (LZusatzWert zw : zusatzwerte) {
142 laf += writeZusatzwert(zw);
143 }
128 for (LKommentarP kp : kommentare) { 144 for (LKommentarP kp : kommentare) {
129 laf += writeKommentar(kp); 145 laf += writeKommentar(kp);
130 } 146 }
131 laf += writeMessung(probe); 147 laf += writeMessung(probe);
132 laf += writeOrt(probe); 148 laf += writeOrt(probe);
133 return laf; 149 return laf;
150 }
151
152 private String writeZusatzwert(LZusatzWert zw) {
153 QueryBuilder<SProbenZusatz> builder =
154 new QueryBuilder<SProbenZusatz>(
155 readonlyRepo.getEntityManager(), SProbenZusatz.class);
156 builder.and("pzsId", zw.getPzsId());
157 List<SProbenZusatz> zusaetze =
158 (List<SProbenZusatz>)readonlyRepo.filter(builder.getQuery());
159
160 String value = "\"" + zusaetze.get(0).getBeschreibung() + "\"";
161 value += " " + zw.getMesswertPzs();
162 value += " " + zusaetze.get(0).getMehId();
163 value += " " + zw.getMessfehler();
164 return lafLine("PZB_S", value);
134 } 165 }
135 166
136 private String writeOrt(LProbeInfo probe) { 167 private String writeOrt(LProbeInfo probe) {
137 QueryBuilder<LOrt> builder = 168 QueryBuilder<LOrt> builder =
138 new QueryBuilder<LOrt>( 169 new QueryBuilder<LOrt>(
192 new QueryBuilder<LKommentarM>( 223 new QueryBuilder<LKommentarM>(
193 mkommentarRepo.getEntityManager(), LKommentarM.class); 224 mkommentarRepo.getEntityManager(), LKommentarM.class);
194 kommBuilder.and("probeId", probe.getProbeId()).and("messungsId", m.getMessungsId()); 225 kommBuilder.and("probeId", probe.getProbeId()).and("messungsId", m.getMessungsId());
195 Response kommentar = mkommentarRepo.filter(kommBuilder.getQuery()); 226 Response kommentar = mkommentarRepo.filter(kommBuilder.getQuery());
196 List<LKommentarM> kommentare = (List<LKommentarM>)kommentar.getData(); 227 List<LKommentarM> kommentare = (List<LKommentarM>)kommentar.getData();
197 laf += lafLine("MESSUNGSID", m.getMessungsId().toString()); 228 laf += lafLine("MESSUNGS_ID", m.getMessungsId().toString());
198 laf += lafLine("NEBENPROBENNUMMER", m.getNebenprobenNr()); 229 laf += lafLine("NEBENPROBENNUMMER", m.getNebenprobenNr());
199 laf += m.getMesszeitpunkt() == null ? 230 laf += m.getMesszeitpunkt() == null ?
200 "" : lafLine( 231 "" : lafLine(
201 "MESS_DATUM_UHRZEIT", 232 "MESS_DATUM_UHRZEIT",
202 format.format(m.getMesszeitpunkt())); 233 format.format(m.getMesszeitpunkt()));
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)