From f244cf408b82486c42fd5c14d6cb77828eec6465 Mon Sep 17 00:00:00 2001 From: Maximilian Leopold Date: Mon, 22 Apr 2019 14:15:47 +0200 Subject: [PATCH 1/3] Added Query to get Rankingplace of specific User --- .../bugageocaching/controller/Controller.java | 5 ++++ .../repositories/UserRepository.java | 25 ++++++++++++++----- src/main/resources/application.properties | 1 + 3 files changed, 25 insertions(+), 6 deletions(-) diff --git a/src/main/java/hhn/labsw/bugageocaching/controller/Controller.java b/src/main/java/hhn/labsw/bugageocaching/controller/Controller.java index 9cefc29..147aefa 100644 --- a/src/main/java/hhn/labsw/bugageocaching/controller/Controller.java +++ b/src/main/java/hhn/labsw/bugageocaching/controller/Controller.java @@ -396,6 +396,11 @@ public class Controller { return ResponseEntity.status(404).body("User was not found in the database"); } } + + @RequestMapping("/api/hello") + public ResponseEntity hello(@RequestParam String name){ + return ResponseEntity.status(200).body(userRepository.getRankingPlaceFromUser(name)); + } } diff --git a/src/main/java/hhn/labsw/bugageocaching/repositories/UserRepository.java b/src/main/java/hhn/labsw/bugageocaching/repositories/UserRepository.java index 45e50ff..3de1e6e 100644 --- a/src/main/java/hhn/labsw/bugageocaching/repositories/UserRepository.java +++ b/src/main/java/hhn/labsw/bugageocaching/repositories/UserRepository.java @@ -1,14 +1,9 @@ package hhn.labsw.bugageocaching.repositories; import hhn.labsw.bugageocaching.entities.User; -import org.springframework.data.jpa.repository.JpaRepository; -import org.springframework.data.repository.CrudRepository; - - import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.CrudRepository; -import java.util.Collection; import java.util.List; public interface UserRepository extends CrudRepository { @@ -21,7 +16,25 @@ public interface UserRepository extends CrudRepository { "WHERE u.id = ui.user_id\n" + "AND u.id = ur.user_id\n" + "AND (ur.roles_id = 7 OR ur.roles_id = 8)\n" + - "order by ranking_points_sum DESC;", nativeQuery = true) + "order by ranking_points_sum DESC\n" + + "LIMIT 100;", nativeQuery = true) List getRankingList(); + @Query(value = "SELECT Rang\n" + + "From (\n" + + "\n" + + "SELECT ROW_NUMBER() over(order by INR.Ranglistenpunkte DESC) AS Rang, Name\n" + + "FROM (\n" + + " SELECT DISTINCT u.Email AS Name,\n" + + " ui.ranking_points_sum AS Ranglistenpunkte\n" + + " FROM user u,\n" + + " buga19geocaching.user_info ui,\n" + + " buga19geocaching.user_roles ur\n" + + " WHERE u.id = ui.user_id\n" + + " AND u.id = ur.user_id\n" + + " AND (ur.roles_id = 7 OR ur.roles_id = 8)\n" + + " order by ranking_points_sum DESC) as INR) as RN\n" + + "WHERE Name = ?1", nativeQuery = true) + int getRankingPlaceFromUser(String username); + } diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 71acd7a..87fb0b7 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -3,5 +3,6 @@ spring.datasource.username=BuGa19GeocachingUser spring.datasource.password=GeocachingPw spring.jmx.default-domain=buga19geocaching spring.datasource.driver-class-name=org.mariadb.jdbc.Driver +spring.jooq.sql-dialect=org.hibernate.dialect.MariaDBDialect spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true \ No newline at end of file From 0ec3dbb0b1db22a4c53e66aafdcb2f9e6fe4150d Mon Sep 17 00:00:00 2001 From: Timo Volkmann Date: Mon, 22 Apr 2019 22:43:58 +0200 Subject: [PATCH 2/3] qr-code scanner working --- frontend/quasar.conf.js | 2 +- frontend/src/components/qr-scanner.vue | 53 ------ frontend/src/pages/qr-code-test.vue | 152 ++++++++++++++++-- .../util/CacheConstructionUtil.java | 2 +- 4 files changed, 145 insertions(+), 64 deletions(-) delete mode 100644 frontend/src/components/qr-scanner.vue diff --git a/frontend/quasar.conf.js b/frontend/quasar.conf.js index 2a58d21..9ee4e06 100644 --- a/frontend/quasar.conf.js +++ b/frontend/quasar.conf.js @@ -62,6 +62,7 @@ module.exports = function (ctx) { 'QPageSticky', 'QAvatar', 'QSpinnerPuff', + 'QSpinnerOval', 'QExpansionItem', 'QParallax', 'QEditor', @@ -107,7 +108,6 @@ module.exports = function (ctx) { API: JSON.stringify('http://localhost:8080') } : { // Base URL for API-Calls: PRODUCTION (build) - //API: JSON.stringify('http://se.hs-heilbronn.de:8090') //API: JSON.stringify('http://seserver.se.hs-heilbronn.de:8090/buga19geocaching') API: JSON.stringify('http://localhost:8080') } diff --git a/frontend/src/components/qr-scanner.vue b/frontend/src/components/qr-scanner.vue deleted file mode 100644 index 055fa41..0000000 --- a/frontend/src/components/qr-scanner.vue +++ /dev/null @@ -1,53 +0,0 @@ - - - - diff --git a/frontend/src/pages/qr-code-test.vue b/frontend/src/pages/qr-code-test.vue index ed56574..7bf52e7 100644 --- a/frontend/src/pages/qr-code-test.vue +++ b/frontend/src/pages/qr-code-test.vue @@ -1,17 +1,151 @@