comparison src/main/java/de/intevation/lada/rest/stamm/OrtService.java @ 1266:e4cb532fde82

Filter orte by netzbetreiber.
author Raimund Renkert <raimund.renkert@intevation.de>
date Fri, 27 Jan 2017 15:14:53 +0100
parents 9dfb52db6a0f
children
comparison
equal deleted inserted replaced
1265:a1323ef2c330 1266:e4cb532fde82
32 import de.intevation.lada.model.stammdaten.Ort; 32 import de.intevation.lada.model.stammdaten.Ort;
33 import de.intevation.lada.util.annotation.AuthorizationConfig; 33 import de.intevation.lada.util.annotation.AuthorizationConfig;
34 import de.intevation.lada.util.annotation.RepositoryConfig; 34 import de.intevation.lada.util.annotation.RepositoryConfig;
35 import de.intevation.lada.util.auth.Authorization; 35 import de.intevation.lada.util.auth.Authorization;
36 import de.intevation.lada.util.auth.AuthorizationType; 36 import de.intevation.lada.util.auth.AuthorizationType;
37 import de.intevation.lada.util.auth.UserInfo;
37 import de.intevation.lada.util.data.QueryBuilder; 38 import de.intevation.lada.util.data.QueryBuilder;
38 import de.intevation.lada.util.data.Repository; 39 import de.intevation.lada.util.data.Repository;
39 import de.intevation.lada.util.data.RepositoryType; 40 import de.intevation.lada.util.data.RepositoryType;
40 import de.intevation.lada.util.rest.RequestMethod; 41 import de.intevation.lada.util.rest.RequestMethod;
41 import de.intevation.lada.util.rest.Response; 42 import de.intevation.lada.util.rest.Response;
178 } 179 }
179 180
180 orte = repository.filterPlain(builder.getQuery(), "stamm"); 181 orte = repository.filterPlain(builder.getQuery(), "stamm");
181 } 182 }
182 else { 183 else {
183 orte = repository.getAllPlain(Ort.class, "stamm"); 184 UserInfo user = authorization.getInfo(request);
185 QueryBuilder<Ort> builder =
186 new QueryBuilder<Ort>(
187 repository.entityManager("stamm"),
188 Ort.class
189 );
190 for (String nb : user.getNetzbetreiber()) {
191 builder.or("netzbetreiberId", nb);
192 }
193 orte = repository.filterPlain(builder.getQuery(), "stamm");
184 } 194 }
185 195
186 int size = orte.size(); 196 int size = orte.size();
187 if (params.containsKey("start") && params.containsKey("limit")) { 197 if (params.containsKey("start") && params.containsKey("limit")) {
188 int start = Integer.valueOf(params.getFirst("start")); 198 int start = Integer.valueOf(params.getFirst("start"));
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)