From fa1a0cabacdcc9e5e8127af5983538faf26abc6f Mon Sep 17 00:00:00 2001
From: Rhys Nute <nuterd@cardiff.ac.uk>
Date: Mon, 11 Dec 2023 12:47:54 +0000
Subject: [PATCH] fixed database issues pp with RE

---
 .../java/Team5/SmartTowns/Data/Location.java  |  2 +-
 .../SmartTowns/Data/locationRepository.java   | 22 ++---
 .../Data/locationRepositoryJDBC.java          | 82 +++++++++----------
 .../localauthority/localAuthority.java        |  4 +-
 src/main/resources/data.sql                   |  2 +-
 5 files changed, 56 insertions(+), 56 deletions(-)

diff --git a/src/main/java/Team5/SmartTowns/Data/Location.java b/src/main/java/Team5/SmartTowns/Data/Location.java
index 1e37686e..01ba2932 100644
--- a/src/main/java/Team5/SmartTowns/Data/Location.java
+++ b/src/main/java/Team5/SmartTowns/Data/Location.java
@@ -6,7 +6,7 @@ import lombok.Data;
 @Data
 @AllArgsConstructor
 public class Location {
-    private int locationID;
+//    private int locationID;
     private String locationName;
     private String locationEmail;
     private String locationDescription;
diff --git a/src/main/java/Team5/SmartTowns/Data/locationRepository.java b/src/main/java/Team5/SmartTowns/Data/locationRepository.java
index 874f7fb0..822a18cb 100644
--- a/src/main/java/Team5/SmartTowns/Data/locationRepository.java
+++ b/src/main/java/Team5/SmartTowns/Data/locationRepository.java
@@ -1,12 +1,12 @@
 //Holds locations data repository (landmarks)
-//package Team5.SmartTowns.Data;
-//
-//import java.util.List;
-//
-//
-//public interface locationRepository {
-//    List<Location> getAllLocation();
-//    void addLocation(Location loc);
-//
-//
-//}
+package Team5.SmartTowns.Data;
+
+import java.util.List;
+
+
+public interface locationRepository {
+    List<Location> getAllLocation();
+    void addLocation(Location loc);
+
+
+}
diff --git a/src/main/java/Team5/SmartTowns/Data/locationRepositoryJDBC.java b/src/main/java/Team5/SmartTowns/Data/locationRepositoryJDBC.java
index 014ce1c6..a5e79d44 100644
--- a/src/main/java/Team5/SmartTowns/Data/locationRepositoryJDBC.java
+++ b/src/main/java/Team5/SmartTowns/Data/locationRepositoryJDBC.java
@@ -1,42 +1,42 @@
 //Implements the locations repository using JDBC
-//package Team5.SmartTowns.Data;
-//
-//import org.springframework.jdbc.core.JdbcTemplate;
-//import org.springframework.jdbc.core.RowMapper;
-//import org.springframework.stereotype.Repository;
-//
-//import java.util.List;
-//
-//@Repository
-//public class locationRepositoryJDBC implements locationRepository {
-//    private JdbcTemplate jdbc;
-//    private RowMapper<Location> locationMapper;
-//
-//    public locationRepositoryJDBC(JdbcTemplate aJdbc) {
-//        this.jdbc = aJdbc;
-//        setlocationMapper();
-//    }
-//    private void setlocationMapper(){
-//        locationMapper = (rs, i) -> new Location(
-//
-//                rs.getString("locationName"),
-//                rs.getString("locationEmail"),
-//                rs.getString("locationDescription"),
-//                rs.getString("locationPlace"),
-//                rs.getInt("locationTrailID")
-//        );
-//    }
-//    public List<Location> getAllLocation(){
-//        String sql= "SELECT * FROM locations";
-//        return jdbc.query(sql, locationMapper);
-//    }
-//
-//    @Override // intended implementation at current: user data from templates/Landmarks/LandmarkFormTh.html is added to the Location table
-//    public void addLocation(Location loc) {
-//        String sql = "insert into locations( locationName , locationEmail,locationDescription,locationPlace, locationTrailID) values (?,?,?,?,?)";
-//
-//        jdbc.update(sql,loc.getLocationName(),loc.getLocationEmail(),loc.getLocationDescription(),loc.getLocationPlace(),loc.getLocationTrailID());
-//    }
-//
-//
-//}
+package Team5.SmartTowns.Data;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.jdbc.core.RowMapper;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+@Repository
+public class locationRepositoryJDBC implements locationRepository {
+    private JdbcTemplate jdbc;
+    private RowMapper<Location> locationMapper;
+
+    public locationRepositoryJDBC(JdbcTemplate aJdbc) {
+        this.jdbc = aJdbc;
+        setlocationMapper();
+    }
+    private void setlocationMapper(){
+        locationMapper = (rs, i) -> new Location(
+
+                rs.getString("locationName"),
+                rs.getString("locationEmail"),
+                rs.getString("locationDescription"),
+                rs.getString("locationPlace"),
+                rs.getInt("locationTrailID")
+        );
+    }
+    public List<Location> getAllLocation(){
+        String sql= "SELECT * FROM locations";
+        return jdbc.query(sql, locationMapper);
+    }
+
+    @Override // intended implementation at current: user data from templates/Landmarks/LandmarkFormTh.html is added to the Location table
+    public void addLocation(Location loc) {
+        String sql = "insert into locations( locationName , locationEmail,locationDescription,locationPlace, locationTrailID) values (?,?,?,?,?)";
+
+        jdbc.update(sql,loc.getLocationName(),loc.getLocationEmail(),loc.getLocationDescription(),loc.getLocationPlace(),loc.getLocationTrailID());
+    }
+
+
+}
diff --git a/src/main/java/Team5/SmartTowns/localauthority/localAuthority.java b/src/main/java/Team5/SmartTowns/localauthority/localAuthority.java
index ed5a7735..4733c5dd 100644
--- a/src/main/java/Team5/SmartTowns/localauthority/localAuthority.java
+++ b/src/main/java/Team5/SmartTowns/localauthority/localAuthority.java
@@ -12,7 +12,7 @@ public class localAuthority {
     private String city;
     private String county;
     private String postcode;
-
+    private String website;
     @Override
     public String toString() {
         return "localAuthority{" +
@@ -54,5 +54,5 @@ public class localAuthority {
         return website;
     }
 
-    private String website;
+
 }
diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql
index dd8b20c8..c32f7fec 100644
--- a/src/main/resources/data.sql
+++ b/src/main/resources/data.sql
@@ -57,6 +57,6 @@ insert into stickerprogress (userID, stickerID, hasSticker) value ('1', '3', tru
 insert into stickerprogress (userID, stickerID, hasSticker) value ('2', '2', true);
 
 delete from localauthority;
-insert into localauthority ( localAuthorityName, address1, address2, city, county, postcode, website) value ( 'Caerphilly County Borough Council', 'Tredomen Park', 'Ystrad Mynach, Hengoed', '', 'CF82 7PG', 'https://www.caerphilly.gov.uk/main.aspx?lang=en-GB');
+insert into localauthority ( localAuthorityName, address1, address2, city, county, postcode, website) value ( 'Caerphilly County Borough Council', 'Tredomen Park','', 'Ystrad Mynach, Hengoed', '', 'CF82 7PG', 'https://www.caerphilly.gov.uk/main.aspx?lang=en-GB');
 insert into localauthority ( localAuthorityName, address1, address2, city, county, postcode, website) value ( 'Risca Town Council', 'Unit B, 75 Tredegar Street', '', 'Risca', '', 'NP11 6BW', 'https://www.riscatowncouncil.org.uk/');
 insert into localauthority ( localAuthorityName, address1, address2, city, county, postcode, website) value ( 'Penarth Town Council West House', 'Stanwell Road', '', 'Penarth', '', 'CF64 2YG', 'https://www.penarthtowncouncil.gov.uk/your-council/');
\ No newline at end of file
-- 
GitLab