Added automatic module delete

+ small Changes
This commit is contained in:
AlexE030
2023-05-20 22:33:53 +02:00
parent e92712d1d6
commit 313df3e343
2 changed files with 33 additions and 9 deletions
@@ -312,6 +312,8 @@ public class DataBaseHandler
{ {
try try
{ {
st.executeUpdate("DELETE FROM module WHERE semesterId = " + id);
st.executeUpdate("delete from semester where id=" + id); st.executeUpdate("delete from semester where id=" + id);
} }
catch(Exception e) catch(Exception e)
@@ -344,10 +346,10 @@ public class DataBaseHandler
MODULE MODULE
*/ */
//get a semester object by its name //get a module object by its name
public Module getModule(String name) { public Module getModule(String name) {
try { try {
ResultSet rs = st.executeQuery("SELECT * FROM SEMESTER WHERE name = '" + name + "'"); ResultSet rs = st.executeQuery("SELECT * FROM modules WHERE name = '" + name + "'");
return resultSetToModule(rs); return resultSetToModule(rs);
} }
catch (Exception ex){ catch (Exception ex){
@@ -355,10 +357,10 @@ public class DataBaseHandler
} }
} }
//get a semester object by its id //get a module object by its id
public Module getModule(int id) { public Module getModule(int id) {
try { try {
ResultSet rs = st.executeQuery("SELECT * FROM Module WHERE id=" + id); ResultSet rs = st.executeQuery("SELECT * FROM modules WHERE id=" + id);
return resultSetToModule(rs); return resultSetToModule(rs);
} }
catch (Exception ex) { catch (Exception ex) {
@@ -369,7 +371,7 @@ public class DataBaseHandler
public Module addModule(Module m) public Module addModule(Module m)
{ {
try { try {
st.executeUpdate("INSERT INTO Module (lecturerId, semesterId, name) " + st.executeUpdate("INSERT INTO modules (lecturerId, semesterId, name) " +
"Values (" + m.getLecturerId() + m.getSemesterId() + m.getName() + ")"); "Values (" + m.getLecturerId() + m.getSemesterId() + m.getName() + ")");
return getModule(m.getId()); return getModule(m.getId());
@@ -382,7 +384,7 @@ public class DataBaseHandler
public Module[] getAllModules() { public Module[] getAllModules() {
try try
{ {
ResultSet rs = st.executeQuery("SELECT * FROM semester"); ResultSet rs = st.executeQuery("SELECT * FROM modules");
List<Module> moduleList = new ArrayList<>(); List<Module> moduleList = new ArrayList<>();
Module m = null; Module m = null;
while((m = resultSetToModule(rs)) != null) while((m = resultSetToModule(rs)) != null)
@@ -401,7 +403,7 @@ public class DataBaseHandler
public Module updateModule(Module m) public Module updateModule(Module m)
{ {
try { try {
st.executeUpdate("UPDATE module SET lecturerId=" + m.getLecturerId() + ", " + st.executeUpdate("UPDATE modules SET lecturerId=" + m.getLecturerId() + ", " +
"semesterId=" + m.getSemesterId() + ", " + "semesterId=" + m.getSemesterId() + ", " +
"name='" + m.getName() + "'"); "name='" + m.getName() + "'");
return getModule(m.getId()); return getModule(m.getId());
@@ -415,7 +417,7 @@ public class DataBaseHandler
public boolean deleteModule(int id) public boolean deleteModule(int id)
{ {
try { try {
st.executeUpdate("DELETE FROM module WHERE id=" + id); st.executeUpdate("DELETE FROM modules WHERE id=" + id);
return true; return true;
} }
catch(Exception ex) { catch(Exception ex) {
@@ -583,6 +585,11 @@ public class DataBaseHandler
{ {
try try
{ {
ResultSet rs = st.executeQuery("SELECT id FROM user WHERE mail='" + mail + "'");
rs.next();
int id = rs.getInt("id");
st.executeUpdate("DELETE FROM modules WHERE lecturerId = " + id);
st.executeUpdate("delete from users where mail='" + mail + "'"); st.executeUpdate("delete from users where mail='" + mail + "'");
return true; return true;
} }
@@ -2,7 +2,6 @@ package com.example.backend.anwprj.controller;
import com.example.backend.anwprj.DataBaseHandler; import com.example.backend.anwprj.DataBaseHandler;
import com.example.backend.anwprj.Module.Module; import com.example.backend.anwprj.Module.Module;
import com.example.backend.anwprj.Semesters.Semester;
import com.example.backend.anwprj.Users.User; import com.example.backend.anwprj.Users.User;
import com.example.backend.anwprj.Users.UserPermissions; import com.example.backend.anwprj.Users.UserPermissions;
import com.example.backend.anwprj.Users.UserSessionIDHandler; import com.example.backend.anwprj.Users.UserSessionIDHandler;
@@ -73,6 +72,24 @@ public class ModuleController {
return null; return null;
} }
@CrossOrigin
@PostMapping("/module")
public ResponseEntity<Module> addModule(@RequestBody Module module, @RequestParam(name="sessionid") String sessionID) {
User user = UserSessionIDHandler.getUserBySessionID(sessionID);
if(user.getPermissions() == UserPermissions.admin.getValue()) {
Module m = db.addModule(module);
if(m != null) {
return new ResponseEntity<>(m, HttpStatus.OK);
}
return new ResponseEntity<>(HttpStatus.NOT_FOUND);
}
return new ResponseEntity<>(HttpStatus.FORBIDDEN);
}
@CrossOrigin @CrossOrigin
@PutMapping("/module") @PutMapping("/module")
public ResponseEntity<Module> updateModule(@RequestBody Module module, @RequestParam(name="sessionid") String sessionID) { public ResponseEntity<Module> updateModule(@RequestBody Module module, @RequestParam(name="sessionid") String sessionID) {