comparison src/main/java/de/intevation/lada/util/auth/MessungAuthorizer.java @ 962:829092ba09f7

Improve readability.
author Tom Gottfried <tom@intevation.de>
date Fri, 27 May 2016 19:20:47 +0200
parents 7fc536615624
children 3c1b1631e474
comparison
equal deleted inserted replaced
961:091b955c12e7 962:829092ba09f7
101 else { 101 else {
102 LStatusProtokoll status = repository.getByIdPlain( 102 LStatusProtokoll status = repository.getByIdPlain(
103 LStatusProtokoll.class, 103 LStatusProtokoll.class,
104 messung.getStatus(), 104 messung.getStatus(),
105 "land"); 105 "land");
106 messung.setReadonly( 106 int stufe = status.getStatusStufe();
107 status.getStatusWert() != 0 && status.getStatusWert() != 4); 107 int wert = status.getStatusWert();
108
109 messung.setReadonly(wert != 0 && wert != 4);
108 110
109 boolean statusEdit = false; 111 boolean statusEdit = false;
110 if (userInfo.getFunktionen().contains(3)) { 112 if (userInfo.getFunktionen().contains(3)) {
111 QueryBuilder<AuthLstUmw> lstFilter = new QueryBuilder<AuthLstUmw>( 113 QueryBuilder<AuthLstUmw> lstFilter = new QueryBuilder<AuthLstUmw>(
112 repository.entityManager("stamm"), 114 repository.entityManager("stamm"),
114 lstFilter.or("lstId", userInfo.getMessstellen()); 116 lstFilter.or("lstId", userInfo.getMessstellen());
115 List<AuthLstUmw> lsts = 117 List<AuthLstUmw> lsts =
116 repository.filterPlain(lstFilter.getQuery(), "stamm"); 118 repository.filterPlain(lstFilter.getQuery(), "stamm");
117 for (int i = 0; i < lsts.size(); i++) { 119 for (int i = 0; i < lsts.size(); i++) {
118 if (lsts.get(i).getUmwId().equals(probe.getUmwId()) 120 if (lsts.get(i).getUmwId().equals(probe.getUmwId())
119 && (status.getStatusStufe() == 2 121 && (stufe == 2 || stufe == 3)
120 || status.getStatusStufe() == 3)
121 ) { 122 ) {
122 statusEdit = true; 123 statusEdit = true;
123 } 124 }
124 } 125 }
125 } 126 }
126 if (userInfo.getFunktionenForNetzbetreiber(probe.getNetzbetreiberId()).contains(2) && 127 if (userInfo.getFunktionenForNetzbetreiber(
127 userInfo.getNetzbetreiber().contains(probe.getNetzbetreiberId()) && 128 probe.getNetzbetreiberId()).contains(2)
128 (status.getStatusStufe() == 1 || status.getStatusStufe() == 2) && 129 && userInfo.getNetzbetreiber().contains(
129 status.getStatusWert() >= 1 130 probe.getNetzbetreiberId())
131 && (stufe == 1 || stufe == 2)
132 && wert >= 1
130 ) { 133 ) {
131 statusEdit = true; 134 statusEdit = true;
132 } 135 }
133 if (userInfo.getFunktionenForMst(probe.getMstId()).contains(1) && 136 if (userInfo.getFunktionenForMst(probe.getMstId()).contains(1)
134 userInfo.belongsTo(probe.getMstId(), probe.getLaborMstId()) && 137 && userInfo.belongsTo(probe.getMstId(),
135 (status.getStatusStufe() <= 1 || status.getStatusWert() == 4) 138 probe.getLaborMstId())
139 && (stufe <= 1 || wert == 4)
136 ) { 140 ) {
137 statusEdit = true; 141 statusEdit = true;
138 } 142 }
139 messung.setStatusEdit(statusEdit); 143 messung.setStatusEdit(statusEdit);
140 144
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)