annotate src/main/java/de/intevation/lada/validation/rules/messprogramm/HasAllMandatory.java @ 1272:01e399476a93

Removed rule for entnahmeOrt since it is not possible to create a messprogramm.
author Raimund Renkert <raimund.renkert@intevation.de>
date Fri, 27 Jan 2017 17:08:59 +0100
parents 3cdf75a9bf92
children
rev   line source
982
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
2 * Software engineering by Intevation GmbH
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
3 *
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
4 * This file is Free Software under the GNU GPL (v>=3)
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
6 * the documentation coming with IMIS-Labordaten-Application for details.
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
7 */
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
8 package de.intevation.lada.validation.rules.messprogramm;
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
9
1269
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
10 import java.util.List;
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
11
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
12 import javax.inject.Inject;
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
13
982
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
14 import de.intevation.lada.model.land.Messprogramm;
1269
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
15 import de.intevation.lada.model.land.OrtszuordnungMp;
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
16 import de.intevation.lada.util.annotation.RepositoryConfig;
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
17 import de.intevation.lada.util.data.QueryBuilder;
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
18 import de.intevation.lada.util.data.Repository;
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
19 import de.intevation.lada.util.data.RepositoryType;
982
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
20 import de.intevation.lada.validation.Violation;
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
21 import de.intevation.lada.validation.annotation.ValidationRule;
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
22 import de.intevation.lada.validation.rules.Rule;
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
23
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
24 /**
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
25 * Validation rule for Messprogramm.
1044
a796e68da1cf A period with end before start is not meaningful.
Tom Gottfried <tom@intevation.de>
parents: 989
diff changeset
26 * Validates if the Messprogramm has all mandatory fields set.
982
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
27 */
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
28 @ValidationRule("Messprogramm")
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
29 public class HasAllMandatory implements Rule {
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
30
1269
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
31 @Inject
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
32 @RepositoryConfig(type=RepositoryType.RO)
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
33 Repository repository;
3cdf75a9bf92 Check for entnahmeOrt in messprogramm and add error if missing.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1268
diff changeset
34
982
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
35 @Override
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
36 public Violation execute(Object object) {
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
37 Messprogramm messprogramm = (Messprogramm)object;
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
38 Violation violation = new Violation();
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
39
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
40 if (messprogramm.getMstId() == null
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
41 | "".equals(messprogramm.getMstId())) {
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
42 violation.addError("mstlabor", 631);
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
43 }
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
44 if (messprogramm.getLaborMstId() == null
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
45 | "".equals(messprogramm.getLaborMstId())) {
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
46 violation.addError("mstlabor", 631);
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
47 }
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
48 if (messprogramm.getDatenbasisId() == null) {
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
49 violation.addError("datenbasisId", 631);
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
50 }
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
51 if (messprogramm.getProbenartId() == null) {
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
52 violation.addError("probenartId", 631);
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
53 }
989
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
54 if (messprogramm.getProbenintervall() == null
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
55 | "".equals(messprogramm.getProbenintervall())) {
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
56 violation.addError("probenintervall", 631);
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
57 }
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
58 if (messprogramm.getTeilintervallVon() == null) {
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
59 violation.addError("teilintervallVon", 631);
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
60 }
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
61 if (messprogramm.getTeilintervallBis() == null) {
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
62 violation.addError("teilintervallBis", 631);
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
63 }
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
64 if (messprogramm.getGueltigVon() == null) {
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
65 violation.addError("gueltigVon", 631);
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
66 }
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
67 if (messprogramm.getGueltigBis() == null) {
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
68 violation.addError("gueltigBis", 631);
b943e956b767 Complement mandatory fields for messprogramm.
Tom Gottfried <tom@intevation.de>
parents: 982
diff changeset
69 }
982
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
70
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
71 return violation.hasErrors()
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
72 ? violation
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
73 :null;
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
74 }
962439442e48 Check mandatory fields before saving a Messprogramm.
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
75 }
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)