[Lada-commits] [PATCH 3 of 4] Fixed NPE for messungen without status
Wald Commits
scm-commit at wald.intevation.org
Fri Apr 8 19:36:32 CEST 2016
# HG changeset patch
# User Raimund Renkert <raimund.renkert at intevation.de>
# Date 1460136966 -7200
# Node ID d53261aa38eb6449b2988c16df33dc158d5a8e3a
# Parent fffa587904a8b148a213befebc4afc9acad36d48
Fixed NPE for messungen without status.
diff -r fffa587904a8 -r d53261aa38eb src/main/java/de/intevation/lada/util/auth/MessungAuthorizer.java
--- a/src/main/java/de/intevation/lada/util/auth/MessungAuthorizer.java Fri Apr 08 19:35:49 2016 +0200
+++ b/src/main/java/de/intevation/lada/util/auth/MessungAuthorizer.java Fri Apr 08 19:36:06 2016 +0200
@@ -93,51 +93,52 @@
else {
messung.setOwner(false);
}
- LStatusProtokoll status = repository.getByIdPlain(
- LStatusProtokoll.class,
- messung.getStatus(),
- "land");
if (messung.getStatus() == null) {
messung.setReadonly(false);
+ messung.setStatusEdit(false);
}
else {
+ LStatusProtokoll status = repository.getByIdPlain(
+ LStatusProtokoll.class,
+ messung.getStatus(),
+ "land");
messung.setReadonly(
status.getStatusWert() != 0 && status.getStatusWert() != 4);
- }
- boolean statusEdit = false;
- if (userInfo.getFunktionen().contains(3)) {
- QueryBuilder<AuthLstUmw> lstFilter = new QueryBuilder<AuthLstUmw>(
- repository.entityManager("stamm"),
- AuthLstUmw.class);
- lstFilter.or("lstId", userInfo.getMessstellen());
- List<AuthLstUmw> lsts =
- repository.filterPlain(lstFilter.getQuery(), "stamm");
- for (int i = 0; i < lsts.size(); i++) {
- if (lsts.get(i).getUmwId().equals(probe.getUmwId())
- && status.getStatusStufe() == 2
- && status.getStatusWert() != 4
- || status.getStatusStufe() == 3
- ) {
- statusEdit = true;
+ boolean statusEdit = false;
+ if (userInfo.getFunktionen().contains(3)) {
+ QueryBuilder<AuthLstUmw> lstFilter = new QueryBuilder<AuthLstUmw>(
+ repository.entityManager("stamm"),
+ AuthLstUmw.class);
+ lstFilter.or("lstId", userInfo.getMessstellen());
+ List<AuthLstUmw> lsts =
+ repository.filterPlain(lstFilter.getQuery(), "stamm");
+ for (int i = 0; i < lsts.size(); i++) {
+ if (lsts.get(i).getUmwId().equals(probe.getUmwId())
+ && status.getStatusStufe() == 2
+ && status.getStatusWert() != 4
+ || status.getStatusStufe() == 3
+ ) {
+ statusEdit = true;
+ }
}
}
+ else if (userInfo.getFunktionen().contains(2) &&
+ userInfo.getNetzbetreiber().contains(probe.getNetzbetreiberId()) &&
+ (status.getStatusStufe() == 1 || status.getStatusStufe() == 2) &&
+ status.getStatusWert() >= 1
+ ) {
+ statusEdit = true;
+ }
+ else if (userInfo.getFunktionen().contains(1) &&
+ userInfo.belongsTo(probe.getMstId(), probe.getLaborMstId()) &&
+ (status.getStatusStufe() <= 1 || status.getStatusWert() == 4)
+ ) {
+ statusEdit = true;
+ }
+ messung.setStatusEdit(statusEdit);
+
}
- else if (userInfo.getFunktionen().contains(2) &&
- userInfo.getNetzbetreiber().contains(probe.getNetzbetreiberId()) &&
- (status.getStatusStufe() == 1 || status.getStatusStufe() == 2) &&
- status.getStatusWert() >= 1
- ) {
- statusEdit = true;
- }
- else if (userInfo.getFunktionen().contains(1) &&
- userInfo.belongsTo(probe.getMstId(), probe.getLaborMstId()) &&
- (status.getStatusStufe() <= 1 || status.getStatusWert() == 4)
- ) {
- statusEdit = true;
- }
- messung.setStatusEdit(statusEdit);
-
return messung;
}
More information about the Lada-commits
mailing list