comparison src/main/java/de/intevation/lada/factory/ProbeFactory.java @ 1028:1c41c7b8f7c2 schema-update

Updated server application to new database model. THIS IS STILL WIP!!!
author Raimund Renkert <raimund.renkert@intevation.de>
date Fri, 08 Jul 2016 15:32:36 +0200
parents 84f17f460969
children 1868bd3565bf
comparison
equal deleted inserted replaced
1027:9971471d562c 1028:1c41c7b8f7c2
15 15
16 import javax.inject.Inject; 16 import javax.inject.Inject;
17 17
18 import org.apache.log4j.Logger; 18 import org.apache.log4j.Logger;
19 19
20 import de.intevation.lada.model.land.LKommentarP; 20 import de.intevation.lada.model.land.KommentarP;
21 import de.intevation.lada.model.land.LMessung;
22 import de.intevation.lada.model.land.LMesswert;
23 import de.intevation.lada.model.land.LOrtszuordnung;
24 import de.intevation.lada.model.land.LProbe;
25 import de.intevation.lada.model.land.LStatusProtokoll;
26 import de.intevation.lada.model.land.Messprogramm; 21 import de.intevation.lada.model.land.Messprogramm;
27 import de.intevation.lada.model.land.MessprogrammMmt; 22 import de.intevation.lada.model.land.MessprogrammMmt;
28 import de.intevation.lada.model.land.MessungTranslation; 23 import de.intevation.lada.model.land.Probe;
29 import de.intevation.lada.model.land.ProbeTranslation; 24 import de.intevation.lada.model.land.Messung;
30 import de.intevation.lada.model.stamm.DeskriptorUmwelt; 25 import de.intevation.lada.model.land.Messwert;
31 import de.intevation.lada.model.stamm.Deskriptoren; 26 import de.intevation.lada.model.land.Ortszuordnung;
32 import de.intevation.lada.model.stamm.Ort; 27 import de.intevation.lada.model.land.StatusProtokoll;
28 import de.intevation.lada.model.stammdaten.DeskriptorUmwelt;
29 import de.intevation.lada.model.stammdaten.Deskriptoren;
30 import de.intevation.lada.model.stammdaten.Ort;
33 import de.intevation.lada.util.annotation.RepositoryConfig; 31 import de.intevation.lada.util.annotation.RepositoryConfig;
34 import de.intevation.lada.util.data.QueryBuilder; 32 import de.intevation.lada.util.data.QueryBuilder;
35 import de.intevation.lada.util.data.Repository; 33 import de.intevation.lada.util.data.Repository;
36 import de.intevation.lada.util.data.RepositoryType; 34 import de.intevation.lada.util.data.RepositoryType;
37 import de.intevation.lada.util.rest.Response; 35 import de.intevation.lada.util.rest.Response;
60 * @param from The start date 58 * @param from The start date
61 * @param to The end date 59 * @param to The end date
62 * 60 *
63 * @return List of probe objects. 61 * @return List of probe objects.
64 */ 62 */
65 public List<LProbe> create(String id, Long from, Long to) { 63 public List<Probe> create(String id, Long from, Long to) {
66 QueryBuilder<Messprogramm> builder = 64 QueryBuilder<Messprogramm> builder =
67 new QueryBuilder<Messprogramm>( 65 new QueryBuilder<Messprogramm>(
68 repository.entityManager("land"), 66 repository.entityManager("land"),
69 Messprogramm.class); 67 Messprogramm.class);
70 builder.and("id", id); 68 builder.and("id", id);
78 Messprogramm messprogramm = messprogramme.get(0); 76 Messprogramm messprogramm = messprogramme.get(0);
79 Calendar start = Calendar.getInstance(); 77 Calendar start = Calendar.getInstance();
80 start.setTime(new Date(from)); 78 start.setTime(new Date(from));
81 Calendar end = Calendar.getInstance(); 79 Calendar end = Calendar.getInstance();
82 end.setTime(new Date (to)); 80 end.setTime(new Date (to));
83 List<LProbe> proben = new ArrayList<LProbe>(); 81 List<Probe> proben = new ArrayList<Probe>();
84 82
85 83
86 if ("M".equals(messprogramm.getProbenintervall())) { 84 if ("M".equals(messprogramm.getProbenintervall())) {
87 Calendar realStart = getStart ("M", start); 85 Calendar realStart = getStart ("M", start);
88 proben.addAll(generateMonth(messprogramm, realStart, end, "M")); 86 proben.addAll(generateMonth(messprogramm, realStart, end, "M"));
103 } 101 }
104 return proben; 102 return proben;
105 } 103 }
106 104
107 /** 105 /**
108 * Create LProbe objects using the interval and messprogramm details. 106 * Create Probe objects using the interval and messprogramm details.
109 * 107 *
110 * @param interval The time interval for probe objects. 108 * @param interval The time interval for probe objects.
111 * @param messprogramm The messprogramm containing details. 109 * @param messprogramm The messprogramm containing details.
112 * @param proben An (empty) list for probe objects filled by this 110 * @param proben An (empty) list for probe objects filled by this
113 * method 111 * method
114 * @return 112 * @return
115 */ 113 */
116 private void createProben( 114 private void createProben(
117 Date[] interval, 115 Date[] interval,
118 Messprogramm messprogramm, 116 Messprogramm messprogramm,
119 List<LProbe> proben 117 List<Probe> proben
120 ) { 118 ) {
121 Calendar start = Calendar.getInstance(); 119 Calendar start = Calendar.getInstance();
122 start.setTime(interval[0]); 120 start.setTime(interval[0]);
123 int startDay = start.get(Calendar.DAY_OF_YEAR); 121 int startDay = start.get(Calendar.DAY_OF_YEAR);
124 Calendar end = Calendar.getInstance(); 122 Calendar end = Calendar.getInstance();
146 messprogramm.getTeilintervallBis() <= endDay + messprogramm.getIntervallOffset()) { 144 messprogramm.getTeilintervallBis() <= endDay + messprogramm.getIntervallOffset()) {
147 start.add(Calendar.DATE, messprogramm.getTeilintervallVon() - startDay + messprogramm.getIntervallOffset()); 145 start.add(Calendar.DATE, messprogramm.getTeilintervallVon() - startDay + messprogramm.getIntervallOffset());
148 Date startDate = start.getTime(); 146 Date startDate = start.getTime();
149 end.add(Calendar.DATE, messprogramm.getTeilintervallBis() - endDay + messprogramm.getIntervallOffset()); 147 end.add(Calendar.DATE, messprogramm.getTeilintervallBis() - endDay + messprogramm.getIntervallOffset());
150 Date endDate = end.getTime(); 148 Date endDate = end.getTime();
151 LProbe probe = createObjects(messprogramm, startDate, endDate); 149 Probe probe = createObjects(messprogramm, startDate, endDate);
152 if (probe != null) { 150 if (probe != null) {
153 proben.add(probe); 151 proben.add(probe);
154 } 152 }
155 return; 153 return;
156 } 154 }
157 } 155 }
158 156
159 private List<LProbe> generateMonth( 157 private List<Probe> generateMonth(
160 Messprogramm messprogramm, 158 Messprogramm messprogramm,
161 Calendar start, 159 Calendar start,
162 Calendar end, 160 Calendar end,
163 String interval 161 String interval
164 ) { 162 ) {
168 0 : messprogramm.getTeilintervallVon() - 1; 166 0 : messprogramm.getTeilintervallVon() - 1;
169 int teilBis = messprogramm.getTeilintervallBis() == null ? 167 int teilBis = messprogramm.getTeilintervallBis() == null ?
170 0 : messprogramm.getTeilintervallBis(); 168 0 : messprogramm.getTeilintervallBis();
171 int manualDuration = teilBis - teilVon; 169 int manualDuration = teilBis - teilVon;
172 170
173 List<LProbe> proben = new ArrayList<LProbe>(); 171 List<Probe> proben = new ArrayList<Probe>();
174 172
175 int currentLength = getDurationMonth(start); 173 int currentLength = getDurationMonth(start);
176 if (manualDuration > 0) { 174 if (manualDuration > 0) {
177 currentLength = manualDuration; 175 currentLength = manualDuration;
178 } 176 }
182 monthEnd.setTime(start.getTime()); 180 monthEnd.setTime(start.getTime());
183 monthEnd.add(Calendar.DAY_OF_YEAR, currentLength - 1); 181 monthEnd.add(Calendar.DAY_OF_YEAR, currentLength - 1);
184 for (;monthStart.before(end);) { 182 for (;monthStart.before(end);) {
185 if (monthStart.get(Calendar.DAY_OF_YEAR) > messprogramm.getGueltigVon() && 183 if (monthStart.get(Calendar.DAY_OF_YEAR) > messprogramm.getGueltigVon() &&
186 monthStart.get(Calendar.DAY_OF_YEAR) < messprogramm.getGueltigBis()) { 184 monthStart.get(Calendar.DAY_OF_YEAR) < messprogramm.getGueltigBis()) {
187 LProbe probe = createObjects(messprogramm, monthStart.getTime(), monthEnd.getTime()); 185 Probe probe = createObjects(messprogramm, monthStart.getTime(), monthEnd.getTime());
188 if (probe != null) { 186 if (probe != null) {
189 proben.add(probe); 187 proben.add(probe);
190 } 188 }
191 } 189 }
192 monthStart.set(Calendar.DAY_OF_MONTH, 2); 190 monthStart.set(Calendar.DAY_OF_MONTH, 2);
200 } 198 }
201 199
202 return proben; 200 return proben;
203 } 201 }
204 202
205 private List<LProbe> generateQuarter( 203 private List<Probe> generateQuarter(
206 Messprogramm messprogramm, 204 Messprogramm messprogramm,
207 Calendar start, 205 Calendar start,
208 Calendar end, 206 Calendar end,
209 String interval 207 String interval
210 ) { 208 ) {
214 0 : messprogramm.getTeilintervallVon() - 1; 212 0 : messprogramm.getTeilintervallVon() - 1;
215 int teilBis = messprogramm.getTeilintervallBis() == null ? 213 int teilBis = messprogramm.getTeilintervallBis() == null ?
216 0 : messprogramm.getTeilintervallBis(); 214 0 : messprogramm.getTeilintervallBis();
217 int manualDuration = teilBis - teilVon; 215 int manualDuration = teilBis - teilVon;
218 216
219 List<LProbe> proben = new ArrayList<LProbe>(); 217 List<Probe> proben = new ArrayList<Probe>();
220 218
221 int currentLength = getDurationQuarter(start); 219 int currentLength = getDurationQuarter(start);
222 if (manualDuration > 0) { 220 if (manualDuration > 0) {
223 currentLength = manualDuration; 221 currentLength = manualDuration;
224 } 222 }
228 quarterEnd.setTime(start.getTime()); 226 quarterEnd.setTime(start.getTime());
229 quarterEnd.add(Calendar.DAY_OF_YEAR, currentLength); 227 quarterEnd.add(Calendar.DAY_OF_YEAR, currentLength);
230 for (;quarterStart.before(end);) { 228 for (;quarterStart.before(end);) {
231 if (quarterStart.get(Calendar.DAY_OF_YEAR) > messprogramm.getGueltigVon() && 229 if (quarterStart.get(Calendar.DAY_OF_YEAR) > messprogramm.getGueltigVon() &&
232 quarterStart.get(Calendar.DAY_OF_YEAR) < messprogramm.getGueltigBis()) { 230 quarterStart.get(Calendar.DAY_OF_YEAR) < messprogramm.getGueltigBis()) {
233 LProbe probe = createObjects(messprogramm, quarterStart.getTime(), quarterEnd.getTime()); 231 Probe probe = createObjects(messprogramm, quarterStart.getTime(), quarterEnd.getTime());
234 if (probe != null) { 232 if (probe != null) {
235 proben.add(probe); 233 proben.add(probe);
236 } 234 }
237 } 235 }
238 quarterStart.set(Calendar.DAY_OF_MONTH, 2); 236 quarterStart.set(Calendar.DAY_OF_MONTH, 2);
246 } 244 }
247 245
248 return proben; 246 return proben;
249 } 247 }
250 248
251 private List<LProbe> generateHalf( 249 private List<Probe> generateHalf(
252 Messprogramm messprogramm, 250 Messprogramm messprogramm,
253 Calendar start, 251 Calendar start,
254 Calendar end, 252 Calendar end,
255 String interval 253 String interval
256 ) { 254 ) {
260 0 : messprogramm.getTeilintervallVon() - 1; 258 0 : messprogramm.getTeilintervallVon() - 1;
261 int teilBis = messprogramm.getTeilintervallBis() == null ? 259 int teilBis = messprogramm.getTeilintervallBis() == null ?
262 0 : messprogramm.getTeilintervallBis(); 260 0 : messprogramm.getTeilintervallBis();
263 int manualDuration = teilBis - teilVon; 261 int manualDuration = teilBis - teilVon;
264 262
265 List<LProbe> proben = new ArrayList<LProbe>(); 263 List<Probe> proben = new ArrayList<Probe>();
266 264
267 int currentLength = getDurationHalf(start); 265 int currentLength = getDurationHalf(start);
268 if (manualDuration > 0) { 266 if (manualDuration > 0) {
269 currentLength = manualDuration; 267 currentLength = manualDuration;
270 } 268 }
274 halfEnd.setTime(halfStart.getTime()); 272 halfEnd.setTime(halfStart.getTime());
275 halfEnd.add(Calendar.DAY_OF_YEAR, currentLength); 273 halfEnd.add(Calendar.DAY_OF_YEAR, currentLength);
276 for (;halfStart.before(end);) { 274 for (;halfStart.before(end);) {
277 if (halfStart.get(Calendar.DAY_OF_YEAR) > messprogramm.getGueltigVon() && 275 if (halfStart.get(Calendar.DAY_OF_YEAR) > messprogramm.getGueltigVon() &&
278 halfStart.get(Calendar.DAY_OF_YEAR) < messprogramm.getGueltigBis()) { 276 halfStart.get(Calendar.DAY_OF_YEAR) < messprogramm.getGueltigBis()) {
279 LProbe probe = createObjects(messprogramm, halfStart.getTime(), halfEnd.getTime()); 277 Probe probe = createObjects(messprogramm, halfStart.getTime(), halfEnd.getTime());
280 if (probe != null) { 278 if (probe != null) {
281 proben.add(probe); 279 proben.add(probe);
282 } 280 }
283 } 281 }
284 halfStart.set(Calendar.DAY_OF_MONTH, 2); 282 halfStart.set(Calendar.DAY_OF_MONTH, 2);
292 } 290 }
293 291
294 return proben; 292 return proben;
295 } 293 }
296 294
297 private List<LProbe> generate( 295 private List<Probe> generate(
298 Messprogramm messprogramm, 296 Messprogramm messprogramm,
299 Calendar start, 297 Calendar start,
300 Calendar end, 298 Calendar end,
301 int days 299 int days
302 ) { 300 ) {
307 int endDay = end.get(Calendar.DAY_OF_YEAR); 305 int endDay = end.get(Calendar.DAY_OF_YEAR);
308 306
309 307
310 //int teilStart = messprogramm.getTeilintervallVon() + startDay; 308 //int teilStart = messprogramm.getTeilintervallVon() + startDay;
311 //int teilEnd = messprogramm.getTeilintervallBis() + startDay; 309 //int teilEnd = messprogramm.getTeilintervallBis() + startDay;
312 List<LProbe> proben = new ArrayList<LProbe>(); 310 List<Probe> proben = new ArrayList<Probe>();
313 int duration = messprogramm.getTeilintervallBis() - 311 int duration = messprogramm.getTeilintervallBis() -
314 messprogramm.getTeilintervallVon(); 312 messprogramm.getTeilintervallVon();
315 313
316 logger.debug("real start day: " + startDay); 314 logger.debug("real start day: " + startDay);
317 logger.debug("real end day" + endDay); 315 logger.debug("real end day" + endDay);
319 logger.debug("generate from " + startDay); 317 logger.debug("generate from " + startDay);
320 start.set(Calendar.DAY_OF_YEAR, startDay); 318 start.set(Calendar.DAY_OF_YEAR, startDay);
321 end.set(Calendar.DAY_OF_YEAR, startDay + duration); 319 end.set(Calendar.DAY_OF_YEAR, startDay + duration);
322 logger.debug("from: " + start.getTime() + " to " + end.getTime()); 320 logger.debug("from: " + start.getTime() + " to " + end.getTime());
323 startDay += days; 321 startDay += days;
324 LProbe probe = createObjects(messprogramm, start.getTime(), end.getTime()); 322 Probe probe = createObjects(messprogramm, start.getTime(), end.getTime());
325 if (probe != null) { 323 if (probe != null) {
326 proben.add(probe); 324 proben.add(probe);
327 } 325 }
328 } 326 }
329 return proben; 327 return proben;
435 * @param startDate The date for 'solldatumbeginn' 433 * @param startDate The date for 'solldatumbeginn'
436 * @param endDate The date for 'solldatumende' 434 * @param endDate The date for 'solldatumende'
437 * 435 *
438 * @return The new probe object. 436 * @return The new probe object.
439 */ 437 */
440 private LProbe createObjects( 438 private Probe createObjects(
441 Messprogramm messprogramm, 439 Messprogramm messprogramm,
442 Date startDate, 440 Date startDate,
443 Date endDate 441 Date endDate
444 ) { 442 ) {
445 QueryBuilder<LProbe> builderProbe = 443 QueryBuilder<Probe> builderProbe =
446 new QueryBuilder<LProbe>( 444 new QueryBuilder<Probe>(
447 repository.entityManager("land"), 445 repository.entityManager("land"),
448 LProbe.class); 446 Probe.class);
449 builderProbe.and("mprId", messprogramm.getId()); 447 builderProbe.and("mprId", messprogramm.getId());
450 builderProbe.and("solldatumBeginn", startDate); 448 builderProbe.and("solldatumBeginn", startDate);
451 builderProbe.and("solldatumEnde", endDate); 449 builderProbe.and("solldatumEnde", endDate);
452 450
453 List<LProbe> proben = 451 List<Probe> proben =
454 repository.filterPlain(builderProbe.getQuery(), "land"); 452 repository.filterPlain(builderProbe.getQuery(), "land");
455 453
456 if (!proben.isEmpty()) { 454 if (!proben.isEmpty()) {
457 return null; 455 return null;
458 } 456 }
459 LProbe probe = new LProbe(); 457 Probe probe = new Probe();
460 probe.setBaId(messprogramm.getBaId()); 458 probe.setBaId(messprogramm.getBaId());
461 probe.setDatenbasisId(messprogramm.getDatenbasisId()); 459 probe.setDatenbasisId(messprogramm.getDatenbasisId());
462 probe.setMediaDesk(messprogramm.getMediaDesk()); 460 probe.setMediaDesk(messprogramm.getMediaDesk());
463 probe.setMstId(messprogramm.getMstId()); 461 probe.setMstId(messprogramm.getMstId());
464 probe.setLaborMstId(messprogramm.getLaborMstId()); 462 probe.setLaborMstId(messprogramm.getLaborMstId());
465 probe.setNetzbetreiberId(messprogramm.getNetzbetreiberId());
466 probe.setProbenartId(messprogramm.getProbenartId()); 463 probe.setProbenartId(messprogramm.getProbenartId());
467 probe.setProbeNehmerId(messprogramm.getProbeNehmerId()); 464 probe.setProbeNehmerId(messprogramm.getProbeNehmerId());
468 probe.setSolldatumBeginn(new Timestamp(startDate.getTime())); 465 probe.setSolldatumBeginn(new Timestamp(startDate.getTime()));
469 probe.setSolldatumEnde(new Timestamp(endDate.getTime())); 466 probe.setSolldatumEnde(new Timestamp(endDate.getTime()));
470 probe.setTest(messprogramm.getTest()); 467 probe.setTest(messprogramm.getTest());
471 probe.setUmwId(messprogramm.getUmwId()); 468 probe.setUmwId(messprogramm.getUmwId());
472 probe.setMprId(messprogramm.getId()); 469 probe.setMprId(messprogramm.getId());
473 repository.create(probe, "land"); 470 repository.create(probe, "land");
474 ProbeTranslation translation = new ProbeTranslation();
475 translation.setProbeId(probe);
476 repository.create(translation, "land");
477 471
478 if (messprogramm.getProbeKommentar() != null && 472 if (messprogramm.getProbeKommentar() != null &&
479 !messprogramm.getProbeKommentar().equals("")) { 473 !messprogramm.getProbeKommentar().equals("")) {
480 LKommentarP kommentar = new LKommentarP(); 474 KommentarP kommentar = new KommentarP();
481 kommentar.setDatum(new Timestamp(new Date().getTime())); 475 kommentar.setDatum(new Timestamp(new Date().getTime()));
482 kommentar.setProbeId(probe.getId()); 476 kommentar.setProbeId(probe.getId());
483 kommentar.setText(messprogramm.getProbeKommentar()); 477 kommentar.setText(messprogramm.getProbeKommentar());
484 kommentar.setErzeuger(messprogramm.getMstId()); 478 kommentar.setMstId(messprogramm.getMstId());
485 479
486 repository.create(kommentar, "land"); 480 repository.create(kommentar, "land");
487 } 481 }
488 482
489 QueryBuilder<MessprogrammMmt> builder = 483 QueryBuilder<MessprogrammMmt> builder =
493 builder.and("messprogrammId", messprogramm.getId()); 487 builder.and("messprogrammId", messprogramm.getId());
494 Response response = repository.filter(builder.getQuery(), "land"); 488 Response response = repository.filter(builder.getQuery(), "land");
495 @SuppressWarnings("unchecked") 489 @SuppressWarnings("unchecked")
496 List<MessprogrammMmt> mmts = (List<MessprogrammMmt>)response.getData(); 490 List<MessprogrammMmt> mmts = (List<MessprogrammMmt>)response.getData();
497 for (MessprogrammMmt mmt : mmts) { 491 for (MessprogrammMmt mmt : mmts) {
498 LMessung messung = new LMessung(); 492 Messung messung = new Messung();
499 messung.setFertig(false); 493 messung.setFertig(false);
500 messung.setGeplant(true); 494 messung.setGeplant(true);
501 messung.setMmtId(mmt.getMmtId()); 495 messung.setMmtId(mmt.getMmtId());
502 messung.setNebenprobenNr( 496 messung.setNebenprobenNr(
503 messprogramm.getNetzbetreiberId() + mmt.getMmtId()); 497 messprogramm.getMstId() + mmt.getMmtId());
504 messung.setProbeId(probe.getId()); 498 messung.setProbeId(probe.getId());
505 repository.create(messung, "land"); 499 repository.create(messung, "land");
506 MessungTranslation mTranslation = new MessungTranslation(); 500
507 mTranslation.setMessungsId(messung); 501 StatusProtokoll status = new StatusProtokoll();
508 repository.create(mTranslation, "land");
509
510 LStatusProtokoll status = new LStatusProtokoll();
511 status.setDatum(new Timestamp(new Date().getTime())); 502 status.setDatum(new Timestamp(new Date().getTime()));
512 status.setMessungsId(messung.getId()); 503 status.setMessungsId(messung.getId());
513 status.setErzeuger(probe.getMstId()); 504 status.setMstId(probe.getMstId());
514 status.setStatusStufe(1); 505 status.setStatusKombi(1);
515 status.setStatusWert(0);
516 repository.create(status, "land"); 506 repository.create(status, "land");
517 messung.setStatus(status.getId()); 507 messung.setStatus(status.getId());
518 repository.update(messung, "land"); 508 repository.update(messung, "land");
519 509
520 for (int mw : mmt.getMessgroessen()) { 510 for (int mw : mmt.getMessgroessen()) {
521 LMesswert wert = new LMesswert(); 511 Messwert wert = new Messwert();
522 wert.setMessgroesseId(mw); 512 wert.setMessgroesseId(mw);
523 wert.setMessungsId(messung.getId()); 513 wert.setMessungsId(messung.getId());
524 wert.setMesswert(0d); 514 wert.setMesswert(0d);
525 wert.setMehId(1); 515 wert.setMehId(1);
526 repository.create(wert, "land"); 516 repository.create(wert, "land");
527 } 517 }
528 } 518 }
529 if (messprogramm.getOrtId() != null && 519 if (messprogramm.getOrtId() != null &&
530 !messprogramm.getOrtId().equals("")) { 520 !messprogramm.getOrtId().equals("")) {
531 LOrtszuordnung ort = new LOrtszuordnung(); 521 Ortszuordnung ort = new Ortszuordnung();
532 ort.setOrtszuordnungTyp("E"); 522 ort.setOrtszuordnungTyp("E");
533 ort.setProbeId(probe.getId()); 523 ort.setProbeId(probe.getId());
534 QueryBuilder<Ort> ortBuilder = new QueryBuilder<Ort>( 524 QueryBuilder<Ort> ortBuilder = new QueryBuilder<Ort>(
535 repository.entityManager("stamm"), Ort.class); 525 repository.entityManager("stamm"), Ort.class);
536 ortBuilder.and("id", messprogramm.getOrtId()); 526 ortBuilder.and("id", messprogramm.getOrtId());
542 } 532 }
543 repository.create(ort, "land"); 533 repository.create(ort, "land");
544 } 534 }
545 // Reolad the probe to have the old id 535 // Reolad the probe to have the old id
546 probe = 536 probe =
547 (LProbe)repository.getById(LProbe.class, probe.getId(), "land").getData(); 537 (Probe)repository.getById(Probe.class, probe.getId(), "land").getData();
548 return probe; 538 return probe;
549 } 539 }
550 540
551 /** 541 /**
552 * Determine the interval for probe generation using a start date, end date 542 * Determine the interval for probe generation using a start date, end date
647 * 637 *
648 * @param probe The probe object. 638 * @param probe The probe object.
649 * 639 *
650 * @return The updated probe object. 640 * @return The updated probe object.
651 */ 641 */
652 public LProbe findUmweltId(LProbe probe) { 642 public Probe findUmweltId(Probe probe) {
653 String[] mediaDesk = probe.getMediaDesk().split(" "); 643 String[] mediaDesk = probe.getMediaDesk().split(" ");
654 if (mediaDesk.length <= 1) { 644 if (mediaDesk.length <= 1) {
655 return probe; 645 return probe;
656 } 646 }
657 probe.setUmwId(findUmwelt(mediaDesk)); 647 probe.setUmwId(findUmwelt(mediaDesk));
663 * 653 *
664 * @param probe The probe object 654 * @param probe The probe object
665 * 655 *
666 * @return The updated probe object. 656 * @return The updated probe object.
667 */ 657 */
668 public LProbe findMediaDesk(LProbe probe) { 658 public Probe findMediaDesk(Probe probe) {
669 Object result = repository.queryFromString( 659 Object result = repository.queryFromString(
670 "SELECT get_media_from_media_desk( :mediaDesk );", "stamm") 660 "SELECT get_media_from_media_desk( :mediaDesk );", "stamm")
671 .setParameter("mediaDesk", probe.getMediaDesk()) 661 .setParameter("mediaDesk", probe.getMediaDesk())
672 .getSingleResult(); 662 .getSingleResult();
673 probe.setMedia(result != null ? result.toString() : ""); 663 probe.setMedia(result != null ? result.toString() : "");
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)