Added modules to Database

+ small changes in backend
This commit is contained in:
AlexE030
2023-05-23 17:44:35 +02:00
parent 2a87d54102
commit 1da2f5be41
4 changed files with 1433 additions and 24 deletions
@@ -312,7 +312,7 @@ public class DataBaseHandler
{
try
{
//st.executeUpdate("DELETE FROM module WHERE semesterId = " + id);
st.executeUpdate("DELETE FROM modules WHERE semesterId = " + id);
st.executeUpdate("delete from semester where id=" + id);
}
@@ -346,17 +346,6 @@ public class DataBaseHandler
MODULE
*/
//get a module object by its name
public Module getModule(String name) {
try {
ResultSet rs = st.executeQuery("SELECT * FROM modules WHERE name = '" + name + "'");
return resultSetToModule(rs);
}
catch (Exception ex){
return null;
}
}
//get a module object by its id
public Module getModule(int id) {
try {
@@ -368,6 +357,26 @@ public class DataBaseHandler
}
}
//get module objects by its semester and its lecturer
public Module[] getModules(int semesterId, int lecturerId) {
try {
ResultSet rs = st.executeQuery("SELECT * FROM modules WHERE lecturerId = " + lecturerId +
"AND semesterId = " + semesterId);
List<Module> moduleList = new ArrayList<>();
Module m = null;
while((m = resultSetToModule(rs)) != null)
{
moduleList.add(m);
}
return moduleList.toArray(new Module[0]);
}
catch (Exception ex){
return null;
}
}
public Module addModule(Module m)
{
try {
@@ -3,22 +3,22 @@ package com.example.backend.anwprj.Module;
//module data class
public class Module {
private final int id;
private final int lecturerId;
private final int semesterId;
private final int lecturer_id;
private final int semester_id;
private final String name;
public Module(int id, int lecturerId, int semesterId, String name){
public Module(int id, int lecturer_id, int semester_id, String name){
this.id = id;
this.lecturerId = lecturerId;
this.semesterId = semesterId;
this.lecturer_id = lecturer_id;
this.semester_id = semester_id;semester_id
this.name = name;
}
public int getId() { return id; }
public int getLecturerId() { return lecturerId; }
public int getLecturerId() { return lecturer_id; }
public int getSemesterId() { return semesterId; }
public int getSemesterId() { return semester_id; }
public String getName() { return name; }
@@ -39,17 +39,18 @@ public class ModuleController {
@CrossOrigin
@GetMapping("/module/id")
public ResponseEntity<Module> getModule(
@RequestParam(name="name") String name,
public ResponseEntity<Module[]> getModules(
@RequestParam(name= "semester_id") int semesterId,
@RequestParam(name="lecturer_id") int lecturerId,
@RequestParam(name="sessionid") String sessionID) {
User user = UserSessionIDHandler.getUserBySessionID(sessionID);
if(user != null)
{
Module module = db.getModule(name);
if (module != null) {
return new ResponseEntity<>(module, HttpStatus.OK);
Module[] modules = db.getModules(semesterId, lecturerId);
if (modules != null) {
return new ResponseEntity<>(modules, HttpStatus.OK);
}
return new ResponseEntity<>(HttpStatus.NOT_FOUND);