Mercurial > lada > lada-server
comparison src/main/java/de/intevation/lada/validation/rules/messung/MessgroesseToMessmethode.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 | 305f138982eb |
children | 18c789672b14 |
comparison
equal
deleted
inserted
replaced
1027:9971471d562c | 1028:1c41c7b8f7c2 |
---|---|
12 | 12 |
13 import javax.inject.Inject; | 13 import javax.inject.Inject; |
14 | 14 |
15 import org.apache.log4j.Logger; | 15 import org.apache.log4j.Logger; |
16 | 16 |
17 import de.intevation.lada.model.land.LMessung; | 17 import de.intevation.lada.model.land.Messung; |
18 import de.intevation.lada.model.land.LMesswert; | 18 import de.intevation.lada.model.land.Messwert; |
19 import de.intevation.lada.model.stamm.MmtMessgroesse; | 19 import de.intevation.lada.model.stammdaten.MmtMessgroesse; |
20 import de.intevation.lada.util.annotation.RepositoryConfig; | 20 import de.intevation.lada.util.annotation.RepositoryConfig; |
21 import de.intevation.lada.util.data.QueryBuilder; | 21 import de.intevation.lada.util.data.QueryBuilder; |
22 import de.intevation.lada.util.data.Repository; | 22 import de.intevation.lada.util.data.Repository; |
23 import de.intevation.lada.util.data.RepositoryType; | 23 import de.intevation.lada.util.data.RepositoryType; |
24 import de.intevation.lada.util.rest.Response; | 24 import de.intevation.lada.util.rest.Response; |
42 @RepositoryConfig(type=RepositoryType.RO) | 42 @RepositoryConfig(type=RepositoryType.RO) |
43 private Repository repository; | 43 private Repository repository; |
44 | 44 |
45 @Override | 45 @Override |
46 public Violation execute(Object object) { | 46 public Violation execute(Object object) { |
47 LMessung messung = (LMessung)object; | 47 Messung messung = (Messung)object; |
48 String mmt = messung.getMmtId(); | 48 String mmt = messung.getMmtId(); |
49 QueryBuilder<LMesswert> builder = | 49 QueryBuilder<Messwert> builder = |
50 new QueryBuilder<LMesswert>( | 50 new QueryBuilder<Messwert>( |
51 repository.entityManager("land"), LMesswert.class); | 51 repository.entityManager("land"), Messwert.class); |
52 builder.and("messungsId", messung.getId()); | 52 builder.and("messungsId", messung.getId()); |
53 Response response = repository.filter(builder.getQuery(), "land"); | 53 Response response = repository.filter(builder.getQuery(), "land"); |
54 @SuppressWarnings("unchecked") | 54 @SuppressWarnings("unchecked") |
55 List<LMesswert> messwerte = (List<LMesswert>)response.getData(); | 55 List<Messwert> messwerte = (List<Messwert>)response.getData(); |
56 | 56 |
57 QueryBuilder<MmtMessgroesse> mmtBuilder = | 57 QueryBuilder<MmtMessgroesse> mmtBuilder = |
58 new QueryBuilder<MmtMessgroesse>( | 58 new QueryBuilder<MmtMessgroesse>( |
59 repository.entityManager("stamm"), MmtMessgroesse.class); | 59 repository.entityManager("stamm"), MmtMessgroesse.class); |
60 | 60 |
63 @SuppressWarnings("unchecked") | 63 @SuppressWarnings("unchecked") |
64 List<MmtMessgroesse> messgroessen = | 64 List<MmtMessgroesse> messgroessen = |
65 (List<MmtMessgroesse>)results.getData(); | 65 (List<MmtMessgroesse>)results.getData(); |
66 List<MmtMessgroesse> found = new ArrayList<MmtMessgroesse>(); | 66 List<MmtMessgroesse> found = new ArrayList<MmtMessgroesse>(); |
67 for (MmtMessgroesse mg: messgroessen) { | 67 for (MmtMessgroesse mg: messgroessen) { |
68 if (mg.getMmtMessgroessePK() != null && | 68 if (mg.getMmtId().equals(mmt)) { |
69 mg.getMmtMessgroessePK().getMmtId().equals(mmt)) { | |
70 found.add(mg); | 69 found.add(mg); |
71 } | 70 } |
72 } | 71 } |
73 Violation violation = new Violation(); | 72 Violation violation = new Violation(); |
74 for(LMesswert messwert: messwerte) { | 73 for(Messwert messwert: messwerte) { |
75 boolean hit = false; | 74 boolean hit = false; |
76 for (MmtMessgroesse messgroesse: found) { | 75 for (MmtMessgroesse messgroesse: found) { |
77 logger.trace("###### mmt: " + messwert.getMessgroesseId() | 76 logger.trace("###### mmt: " + messwert.getMessgroesseId() |
78 + " mmtmg: " + messgroesse.getMmtMessgroessePK() | 77 + " mmtmg: " + messgroesse.getMmtId()); |
79 .getMessgroessengruppeId()); | |
80 if (messwert.getMessgroesseId().equals( | 78 if (messwert.getMessgroesseId().equals( |
81 messgroesse.getMmtMessgroessePK().getMessgroessengruppeId())) { | 79 messgroesse.getMmtId())) { |
82 hit = true; | 80 hit = true; |
83 } | 81 } |
84 } | 82 } |
85 if (!hit) { | 83 if (!hit) { |
86 violation.addWarning("messgroesse", 632); | 84 violation.addWarning("messgroesse", 632); |