Mercurial > lada > lada-server
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())); |