diff --git a/src/main/java/Team5/SmartTowns/Data/MockUser.java b/src/main/java/Team5/SmartTowns/Data/MockUser.java new file mode 100644 index 0000000000000000000000000000000000000000..6a6ec7f6a5232c52c63b98d9603329087900de24 --- /dev/null +++ b/src/main/java/Team5/SmartTowns/Data/MockUser.java @@ -0,0 +1,17 @@ +package Team5.SmartTowns.Data; + +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.jdbc.core.RowMapper; + +import java.util.List; + +public class MockUser { + + private JdbcTemplate jdbc; + private RowMapper<trail> trailMapper; + + public List<trail> getAllTrails(){ + String sql= "SELECT * FROM trails"; + return jdbc.query(sql, trailMapper); + } +} diff --git a/src/main/java/Team5/SmartTowns/Data/QRCodes.java b/src/main/java/Team5/SmartTowns/Data/QRCodes.java new file mode 100644 index 0000000000000000000000000000000000000000..ef350eb418b959e1069ee51d061471448c3b7457 --- /dev/null +++ b/src/main/java/Team5/SmartTowns/Data/QRCodes.java @@ -0,0 +1,4 @@ +package Team5.SmartTowns.Data; + +public class QRCodes { +} diff --git a/src/main/java/Team5/SmartTowns/trails/TrailsController.java b/src/main/java/Team5/SmartTowns/trails/TrailsController.java index 37548995b1168ad0b046f4017690bd16498cc0c0..020eaf18bd39d34b66b2cdde2737506c178dcd9b 100644 --- a/src/main/java/Team5/SmartTowns/trails/TrailsController.java +++ b/src/main/java/Team5/SmartTowns/trails/TrailsController.java @@ -45,14 +45,15 @@ public class TrailsController { } -// // -// @GetMapping("dragonstale/{qrCode}/{id}") -// public String qrCodeCheck(@PathVariable Optional<String> qrCode, @PathVariable Optional<Integer> id){ -// if (qrCode.isPresent() && id.isPresent()){ -// //Check if ID is present, if do this, if not dfo that. -// -// } -// } + // + @GetMapping("dragonstale/{qrCode}/{id}") + public String qrCodeCheck(@PathVariable Optional<String> qrCode, @PathVariable Optional<Integer> id){ + if (qrCode.isPresent()){ + + //Check if ID is present, if do this, if not dfo that. + + } + } } diff --git a/src/main/java/Team5/SmartTowns/users/User.java b/src/main/java/Team5/SmartTowns/users/User.java index 84887664fbee090abb68281f28b5f2b0832af9ae..e5214802c00783e0e01698dd7a05b8995e1ad93e 100644 --- a/src/main/java/Team5/SmartTowns/users/User.java +++ b/src/main/java/Team5/SmartTowns/users/User.java @@ -16,15 +16,16 @@ public class User { String name; String imgPath; int dragonProgress; - Map<Badge, Integer> badgeProgress = new HashMap<>(); // Demonstrates the progress towards a specific badge (0-100) Map<Sticker, Boolean> hasStickers = new HashMap<>(); // True if User has sticker (key) + Map<Integer, Boolean> dragonstaleLandmarkIDs = new HashMap<>(); // Storing the IDs of the landmarks associated with Dragonstale, as well as if the user has visited it before (boolean) - public User(int id, String email, String name, int dragonProgress) { + public User(int id, String email, String name, int dragonProgress, HashMap<Integer, Boolean> dragonstaleLandmarkIDs) { this.id = id; this.email = email; this.name = name; this.dragonProgress = dragonProgress; + this.dragonstaleLandmarkIDs = dragonstaleLandmarkIDs; imgPath = findImagePath(); } diff --git a/src/main/java/Team5/SmartTowns/users/UserRepository.java b/src/main/java/Team5/SmartTowns/users/UserRepository.java index 9f4e828f17c231179df1a9fcd6a87cc5c8cf75b6..bbdb7ecede2cc6174227c3b467063613506490ed 100644 --- a/src/main/java/Team5/SmartTowns/users/UserRepository.java +++ b/src/main/java/Team5/SmartTowns/users/UserRepository.java @@ -8,5 +8,6 @@ public interface UserRepository { List<User> getAllUsers(); // Map<Long, Integer> getBadgeProgress(int id); Map<Long, Boolean> getStickers(int id); + Map<Integer, Boolean> getTest(int id); User getUser(int id); } diff --git a/src/main/java/Team5/SmartTowns/users/UserRepositoryJDBC.java b/src/main/java/Team5/SmartTowns/users/UserRepositoryJDBC.java index 9b24461d06d300172d904272edf0cc20c51b99f0..9bf388db153b578f297d0fcc32ef0dad27c9d973 100644 --- a/src/main/java/Team5/SmartTowns/users/UserRepositoryJDBC.java +++ b/src/main/java/Team5/SmartTowns/users/UserRepositoryJDBC.java @@ -12,22 +12,22 @@ import java.util.Map; @Repository public class UserRepositoryJDBC implements UserRepository{ - private JdbcTemplate jdbc; private RowMapper<User> userMapper; + private public UserRepositoryJDBC(JdbcTemplate aJdbc){ this.jdbc = aJdbc; setUserMapper(); } - private void setUserMapper(){ userMapper = (rs, i) -> new User( rs.getInt("userID"), rs.getString("email"), rs.getString("name"), - rs.getInt("dragonProgress") + rs.getInt("dragonProgress"), + rs.getObject("dragonstaleLandmarkIDs", getTest()) ); } @@ -37,6 +37,7 @@ public class UserRepositoryJDBC implements UserRepository{ return jdbc.query(sql, userMapper); } + @Override public User getUser(int id){ String sql= "SELECT * FROM users WHERE userID="+id; @@ -55,6 +56,12 @@ public class UserRepositoryJDBC implements UserRepository{ return progress; } + @Override + public Map<Integer, Boolean> getDTCompletion(int id){ + //Loop over multiple different key-value pairs to find the one that's needed. + String sql = "SELECT " + } + // @Override // public Map<Long, Integer> getBadgeProgress(int id){