checkStation is a god now

This commit is contained in:
Michael 2019-04-23 22:53:21 +02:00
parent 75798eaaca
commit 73cd87765f

View File

@ -61,87 +61,88 @@ public class Controller {
return ResponseEntity.status(200).body(new Gson().toJson(cacheRepository.findAll())); return ResponseEntity.status(200).body(new Gson().toJson(cacheRepository.findAll()));
} }
@CrossOrigin(origins = "http://localhost:8081") // only for dev purpose // alte startCache-methode
@RequestMapping("/api/startCache") // @CrossOrigin(origins = "http://localhost:8081") // only for dev purpose
@ResponseBody // @RequestMapping("/api/startCache")
public ResponseEntity startCache(@RequestParam(value = "token", defaultValue = "-1") String token, // @ResponseBody
@RequestParam String cacheID) { // public ResponseEntity startCache(@RequestParam(value = "token", defaultValue = "-1") String token,
// @RequestParam String cacheID) {
if (!token.equals("-1")) { // ein angemeldeter user startet den cache(es werden zwei parameter übergeben) //
// if (!token.equals("-1")) { // ein angemeldeter user startet den cache(es werden zwei parameter übergeben)
Bearbeitet bearbeitet = new Bearbeitet(); //
// Bearbeitet bearbeitet = new Bearbeitet();
//
//---------------------- //
//Verify token // //----------------------
ResponseEntity tokenVerification = VerificationUtil.verifyToken(token); // //Verify token
// ResponseEntity tokenVerification = VerificationUtil.verifyToken(token);
//Error in token verification //
if (tokenVerification.getStatusCodeValue() != 200) { // //Error in token verification
return tokenVerification; // if (tokenVerification.getStatusCodeValue() != 200) {
} // return tokenVerification;
// }
Claims claims = (Claims) tokenVerification.getBody(); //
// Claims claims = (Claims) tokenVerification.getBody();
ResponseEntity getUser = FinderUtil.findUserFromClaim(claims); //
// ResponseEntity getUser = FinderUtil.findUserFromClaim(claims);
if (getUser.getStatusCodeValue() != 200) { //
return getUser; // if (getUser.getStatusCodeValue() != 200) {
} // return getUser;
// }
User user = (User) getUser.getBody(); //
// User user = (User) getUser.getBody();
bearbeitet.setUser(user); //
// bearbeitet.setUser(user);
//---------------------- //
//Get Cache // //----------------------
ResponseEntity getCache = FinderUtil.findCacheById(cacheID); // //Get Cache
// ResponseEntity getCache = FinderUtil.findCacheById(cacheID);
if (getCache.getStatusCodeValue() != 200) { //
return getCache; // if (getCache.getStatusCodeValue() != 200) {
} // return getCache;
// }
Cache cache = (Cache) getCache.getBody(); //
//---------------------- // Cache cache = (Cache) getCache.getBody();
// //----------------------
if (bearbeitetRepository.findByUserAndCache(user, cache) != null) { //
Bearbeitet bearbeitet1 = bearbeitetRepository.findByUserAndCache(user, cache); // if (bearbeitetRepository.findByUserAndCache(user, cache) != null) {
return ResponseEntity.status(200).body(bearbeitet1); // Bearbeitet bearbeitet1 = bearbeitetRepository.findByUserAndCache(user, cache);
} // return ResponseEntity.status(200).body(bearbeitet1);
// }
bearbeitet.setCache(cache); //
// bearbeitet.setCache(cache);
Station startStation = cache.getStationen().get(0); //
bearbeitet.setAktuelleStation(startStation); // Station startStation = cache.getStationen().get(0);
// bearbeitet.setAktuelleStation(startStation);
//Get CacheAccesDefinition //
ResponseEntity getCacheAccesDefinition = FinderUtil.findCacheAccesDefinitionById("0"); // //Get CacheAccesDefinition
// ResponseEntity getCacheAccesDefinition = FinderUtil.findCacheAccesDefinitionById("0");
if (getCacheAccesDefinition.getStatusCodeValue() != 200) { //
return getCacheAccesDefinition; // if (getCacheAccesDefinition.getStatusCodeValue() != 200) {
} // return getCacheAccesDefinition;
// }
CacheAccesDefinition cacheAccesDefinition = (CacheAccesDefinition) getCacheAccesDefinition.getBody(); //
//---------------------- // CacheAccesDefinition cacheAccesDefinition = (CacheAccesDefinition) getCacheAccesDefinition.getBody();
bearbeitet.setCacheAccesDefinition(cacheAccesDefinition); // //----------------------
// bearbeitet.setCacheAccesDefinition(cacheAccesDefinition);
bearbeitetRepository.save(bearbeitet); //
// bearbeitetRepository.save(bearbeitet);
return ResponseEntity.status(201).body(new Gson().toJson(bearbeitet)); //
// return ResponseEntity.status(201).body(new Gson().toJson(bearbeitet));
} else { // kein angemeldeter User startet den cache(es wird nur der cache als parameter übergeben) //
// } else { // kein angemeldeter User startet den cache(es wird nur der cache als parameter übergeben)
ResponseEntity getCache = FinderUtil.findCacheById(cacheID); //
// ResponseEntity getCache = FinderUtil.findCacheById(cacheID);
if (getCache.getStatusCodeValue() != 200) { //
return getCache; // if (getCache.getStatusCodeValue() != 200) {
} // return getCache;
// }
Cache cache = (Cache) getCache.getBody(); //
// Cache cache = (Cache) getCache.getBody();
return ResponseEntity.status(200).body(new Gson().toJson(cache)); //
} // return ResponseEntity.status(200).body(new Gson().toJson(cache));
} // }
// }
@CrossOrigin(origins = "http://localhost:8081") // only for dev purpose @CrossOrigin(origins = "http://localhost:8081") // only for dev purpose
@RequestMapping("/api/checkStation") @RequestMapping("/api/checkStation")
@ -208,12 +209,39 @@ public class Controller {
return ResponseEntity.status(400).body("The scanned station isn´t the correct following station"); return ResponseEntity.status(400).body("The scanned station isn´t the correct following station");
} }
if (!cache.getStationen().contains(station)) {
return ResponseEntity.status(400).body("The scanned station isnt a part of the cache");
}
//---------------------- //----------------------
//Get Bearbeitet entry //Get Bearbeitet entry
ResponseEntity getBearbeitet = FinderUtil.findBearbeitetByUserAndCache(user, cache); ResponseEntity getBearbeitet = FinderUtil.findBearbeitetByUserAndCache(user, cache);
if (getBearbeitet.getStatusCodeValue() != 200) { if (getBearbeitet.getStatusCodeValue() != 200) {
return getBearbeitet; if (cache.getStationen().get(0).equals(station)) {
// start Cache
Bearbeitet bearbeitet = new Bearbeitet();
bearbeitet.setUser(user);
bearbeitet.setCache(cache);
bearbeitet.setAktuelleStation(station);
//Get CacheAccesDefinition
ResponseEntity getCacheAccesDefinition = FinderUtil.findCacheAccesDefinitionById("0");
if (getCacheAccesDefinition.getStatusCodeValue() != 200) {
return getCacheAccesDefinition;
}
CacheAccesDefinition cacheAccesDefinition = (CacheAccesDefinition) getCacheAccesDefinition.getBody();
//----------------------
bearbeitet.setCacheAccesDefinition(cacheAccesDefinition);
bearbeitetRepository.save(bearbeitet);
return ResponseEntity.status(201).body(new Gson().toJson(bearbeitet));
} else {
return getBearbeitet;
}
} }
Bearbeitet bearbeitet = (Bearbeitet) getBearbeitet.getBody(); Bearbeitet bearbeitet = (Bearbeitet) getBearbeitet.getBody();
@ -225,10 +253,6 @@ public class Controller {
return ResponseEntity.status(400).body("Database Error"); return ResponseEntity.status(400).body("Database Error");
} }
if (!cache.getStationen().contains(station)) {
return ResponseEntity.status(400).body("The scanned station isnt a part of the cache");
}
int i = cache.getStationen().indexOf(station); int i = cache.getStationen().indexOf(station);
if (i == 0) { if (i == 0) {