Mercurial > lada > lada-server
comparison src/main/java/de/intevation/lada/validation/rules/messung/HasPflichtmessgroessen.java @ 1097:186d602e031a
Merged branch schema-update into default.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Fri, 14 Oct 2016 18:17:42 +0200 |
parents | 3ec358698b4d |
children | 18c789672b14 |
comparison
equal
deleted
inserted
replaced
1096:565c8a67034d | 1097:186d602e031a |
---|---|
9 | 9 |
10 import java.util.List; | 10 import java.util.List; |
11 | 11 |
12 import javax.inject.Inject; | 12 import javax.inject.Inject; |
13 | 13 |
14 import de.intevation.lada.model.land.LMessung; | 14 import de.intevation.lada.model.land.Messung; |
15 import de.intevation.lada.model.land.LMesswert; | 15 import de.intevation.lada.model.land.Messwert; |
16 import de.intevation.lada.model.stamm.PflichtMessgroesse; | 16 import de.intevation.lada.model.stammdaten.PflichtMessgroesse; |
17 import de.intevation.lada.util.annotation.RepositoryConfig; | 17 import de.intevation.lada.util.annotation.RepositoryConfig; |
18 import de.intevation.lada.util.data.QueryBuilder; | 18 import de.intevation.lada.util.data.QueryBuilder; |
19 import de.intevation.lada.util.data.Repository; | 19 import de.intevation.lada.util.data.Repository; |
20 import de.intevation.lada.util.data.RepositoryType; | 20 import de.intevation.lada.util.data.RepositoryType; |
21 import de.intevation.lada.util.rest.Response; | 21 import de.intevation.lada.util.rest.Response; |
36 @RepositoryConfig(type=RepositoryType.RO) | 36 @RepositoryConfig(type=RepositoryType.RO) |
37 private Repository repository; | 37 private Repository repository; |
38 | 38 |
39 @Override | 39 @Override |
40 public Violation execute(Object object) { | 40 public Violation execute(Object object) { |
41 LMessung messung = (LMessung)object; | 41 Messung messung = (Messung)object; |
42 QueryBuilder<PflichtMessgroesse> builder = | 42 QueryBuilder<PflichtMessgroesse> builder = |
43 new QueryBuilder<PflichtMessgroesse>( | 43 new QueryBuilder<PflichtMessgroesse>( |
44 repository.entityManager("stamm"), | 44 repository.entityManager("stamm"), |
45 PflichtMessgroesse.class); | 45 PflichtMessgroesse.class); |
46 builder.and("mmtId", messung.getMmtId()); | 46 builder.and("messMethodeId", messung.getMmtId()); |
47 Response response = repository.filter(builder.getQuery(), "stamm"); | 47 Response response = repository.filter(builder.getQuery(), "stamm"); |
48 @SuppressWarnings("unchecked") | 48 @SuppressWarnings("unchecked") |
49 List<PflichtMessgroesse> pflicht = | 49 List<PflichtMessgroesse> pflicht = |
50 (List<PflichtMessgroesse>)response.getData(); | 50 (List<PflichtMessgroesse>)response.getData(); |
51 | 51 |
52 QueryBuilder<LMesswert> wertBuilder = | 52 QueryBuilder<Messwert> wertBuilder = |
53 new QueryBuilder<LMesswert>( | 53 new QueryBuilder<Messwert>( |
54 repository.entityManager("land"), LMesswert.class); | 54 repository.entityManager("land"), Messwert.class); |
55 wertBuilder.and("messungsId", messung.getId()); | 55 wertBuilder.and("messungsId", messung.getId()); |
56 Response wertResponse = | 56 Response wertResponse = |
57 repository.filter(wertBuilder.getQuery(), "land"); | 57 repository.filter(wertBuilder.getQuery(), "land"); |
58 @SuppressWarnings("unchecked") | 58 @SuppressWarnings("unchecked") |
59 List<LMesswert> messwerte = (List<LMesswert>)wertResponse.getData(); | 59 List<Messwert> messwerte = (List<Messwert>)wertResponse.getData(); |
60 Violation violation = new Violation(); | 60 Violation violation = new Violation(); |
61 boolean missing = false; | 61 boolean missing = false; |
62 for (PflichtMessgroesse p : pflicht) { | 62 for (PflichtMessgroesse p : pflicht) { |
63 for (LMesswert wert : messwerte) { | 63 for (Messwert wert : messwerte) { |
64 if (!p.getMessgroesseId().equals(wert.getMessgroesseId())) { | 64 if (!p.getMessgroesseId().equals(wert.getMessgroesseId())) { |
65 missing = true; | 65 missing = true; |
66 } | 66 } |
67 } | 67 } |
68 } | 68 } |