WeekController finished
This commit is contained in:
Binary file not shown.
@@ -1554,3 +1554,12 @@ java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supporte
|
|||||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
at java.base/java.lang.Thread.run(Thread.java:833)
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-14 22:00:18 jdbc[3]: exception
|
||||||
|
org.h2.jdbc.JdbcSQLNonTransientException: Keine Daten verfügbar
|
||||||
|
No data is available [2000-214]
|
||||||
|
2023-05-14 22:00:50 jdbc[3]: exception
|
||||||
|
org.h2.jdbc.JdbcSQLNonTransientException: Keine Daten verfügbar
|
||||||
|
No data is available [2000-214]
|
||||||
|
2023-05-14 22:08:48 jdbc[3]: exception
|
||||||
|
org.h2.jdbc.JdbcSQLNonTransientException: Keine Daten verfügbar
|
||||||
|
No data is available [2000-214]
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import com.example.backend.anwprj.Days.Day;
|
|||||||
import com.example.backend.anwprj.Entries.Entry;
|
import com.example.backend.anwprj.Entries.Entry;
|
||||||
import com.example.backend.anwprj.Semesters.Semester;
|
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.Week.Week;
|
||||||
|
|
||||||
import java.sql.*;
|
import java.sql.*;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -44,63 +45,70 @@ public class DataBaseHandler
|
|||||||
System.out.println("No Connection!");
|
System.out.println("No Connection!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
/*
|
* WEEKS
|
||||||
TEMPPPPPP
|
|
||||||
*/
|
*/
|
||||||
public static class Week
|
|
||||||
{
|
|
||||||
public int semesterid, id, weeknumber;
|
|
||||||
|
|
||||||
public Week(int id, int semesterid, int weeknumber)
|
|
||||||
{
|
|
||||||
this.semesterid = semesterid;
|
|
||||||
this.weeknumber = weeknumber;
|
|
||||||
this.id = id;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public Week addWeek(Week week)
|
public Week addWeek(Week week)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
st.executeUpdate("insert into weeks (semesterid, weeknumber) values (" + week.semesterid + ", " + week.weeknumber + ")");
|
st.executeUpdate("insert into weeks (semesterid, weeknumber) values (" + week.getSemesterid() + ", " + week.getWeeknumber() + ")");
|
||||||
return getWeek(week.semesterid, week.weeknumber);
|
|
||||||
|
return getWeek(week.getSemesterid(), week.getWeeknumber());
|
||||||
|
|
||||||
} catch (SQLException e)
|
} catch (SQLException e)
|
||||||
{
|
{
|
||||||
throw new RuntimeException(e);
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Week getWeek(int id)
|
||||||
|
{
|
||||||
|
ResultSet rs = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
rs = st.executeQuery("select * from weeks where id=" + id);
|
||||||
|
|
||||||
|
return resultSetToWeek(rs);
|
||||||
|
|
||||||
|
} catch (SQLException e)
|
||||||
|
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public Week getWeek(int semesterid, int weeknumber)
|
public Week getWeek(int semesterid, int weeknumber)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
ResultSet rs = st.executeQuery("select w.* from weeks w, semester s where s.id=" + semesterid + " and " + "w.weeknumber=" + weeknumber);
|
ResultSet rs = st.executeQuery("select * from weeks where semesterid =" + semesterid + " and weeknumber=" + weeknumber);
|
||||||
rs.next();
|
|
||||||
return new Week(rs.getInt("id"), rs.getInt("semesterid"), rs.getInt("weeknumber"));
|
return resultSetToWeek(rs);
|
||||||
} catch (SQLException e)
|
|
||||||
{
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
}
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Week getWeekById(int id)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
ResultSet rs = st.executeQuery("select * from weeks where id=" + id);
|
|
||||||
rs.next();
|
|
||||||
return new Week(rs.getInt("id"), rs.getInt("semesterid"), rs.getInt("weeknumber"));
|
|
||||||
}
|
}
|
||||||
catch(Exception e)
|
|
||||||
{
|
private Week resultSetToWeek(ResultSet rs) {
|
||||||
|
try {
|
||||||
|
rs.next();
|
||||||
|
|
||||||
|
return new Week(
|
||||||
|
rs.getInt("id"),
|
||||||
|
rs.getInt("semesterid"),
|
||||||
|
rs.getInt("weeknumber")
|
||||||
|
);
|
||||||
|
} catch (SQLException e) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
TEMP END!!!!!!!!!!!!
|
|
||||||
*/
|
|
||||||
/**
|
/**
|
||||||
DAYS
|
DAYS
|
||||||
*/
|
*/
|
||||||
@@ -109,8 +117,8 @@ public class DataBaseHandler
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
st.executeUpdate("insert into days (dayinweek, weekid) values (" + day.getDayinweek() + ", " + day.getWeekid() + ")");
|
st.executeUpdate("insert into days (dayinweek, weekid) values (" + day.getDayinweek() + ", " + day.getWeekid() + ")");
|
||||||
Week w = getWeekById(day.getWeekid());
|
Week w = getWeek(day.getWeekid());
|
||||||
return getDay(day.getDayinweek(), w.weeknumber, w.semesterid);
|
return getDay(day.getDayinweek(), w.getWeeknumber(), w.getSemesterid());
|
||||||
} catch (SQLException e)
|
} catch (SQLException e)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
package com.example.backend.anwprj.Week;
|
||||||
|
|
||||||
|
public class Week {
|
||||||
|
|
||||||
|
private int id;
|
||||||
|
private int semesterid;
|
||||||
|
private int weeknumber;
|
||||||
|
|
||||||
|
public Week(int id, int semesterid, int weeknumber) {
|
||||||
|
this.id = id;
|
||||||
|
this.semesterid = semesterid;
|
||||||
|
this.weeknumber = weeknumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getSemesterid() {
|
||||||
|
return semesterid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getWeeknumber() {
|
||||||
|
return weeknumber;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -45,7 +45,7 @@ public class UserController {
|
|||||||
@GetMapping("/users")
|
@GetMapping("/users")
|
||||||
public ResponseEntity<String> login(@RequestParam(name = "mail") String mail, @RequestParam(name = "password") String password) {
|
public ResponseEntity<String> login(@RequestParam(name = "mail") String mail, @RequestParam(name = "password") String password) {
|
||||||
//generate a session id for the user trying to login
|
//generate a session id for the user trying to login
|
||||||
boolean isEncrypted = true;
|
boolean isEncrypted = false;
|
||||||
if(isEncrypted)
|
if(isEncrypted)
|
||||||
{
|
{
|
||||||
RSA rsa = RSA.getInstance();
|
RSA rsa = RSA.getInstance();
|
||||||
|
|||||||
@@ -0,0 +1,60 @@
|
|||||||
|
package com.example.backend.anwprj.controller;
|
||||||
|
|
||||||
|
import com.example.backend.anwprj.DataBaseHandler;
|
||||||
|
import com.example.backend.anwprj.Days.Day;
|
||||||
|
import com.example.backend.anwprj.Users.User;
|
||||||
|
import com.example.backend.anwprj.Users.UserPermissions;
|
||||||
|
import com.example.backend.anwprj.Users.UserSessionIDHandler;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import com.example.backend.anwprj.Week.Week;
|
||||||
|
import org.springframework.http.ResponseEntity;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.sql.SQLException;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
public class WeekController
|
||||||
|
{
|
||||||
|
|
||||||
|
private DataBaseHandler db;
|
||||||
|
|
||||||
|
{
|
||||||
|
db = DataBaseHandler.getInstance();
|
||||||
|
}
|
||||||
|
|
||||||
|
@CrossOrigin
|
||||||
|
@GetMapping("/weeks")
|
||||||
|
public ResponseEntity<Week> getWeek(
|
||||||
|
@RequestParam(name="sessionid") String sessionID,
|
||||||
|
@RequestParam(name="semesterid") int semesterID,
|
||||||
|
@RequestParam(name="weeknumber") int weekNumber) throws SQLException {
|
||||||
|
User u = UserSessionIDHandler.getUserBySessionID(sessionID);
|
||||||
|
|
||||||
|
if(u != null)
|
||||||
|
{
|
||||||
|
Week w = db.getWeek(semesterID,weekNumber);
|
||||||
|
|
||||||
|
if(w != null)
|
||||||
|
{
|
||||||
|
return new ResponseEntity<>(w, HttpStatus.OK);
|
||||||
|
}
|
||||||
|
return new ResponseEntity<>(HttpStatus.NOT_FOUND);
|
||||||
|
}
|
||||||
|
return new ResponseEntity<>(HttpStatus.FORBIDDEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
@CrossOrigin
|
||||||
|
@PostMapping("/weeks")
|
||||||
|
public ResponseEntity<Week> addWeek(@RequestBody Week week, @RequestParam(name="sessionid") String sessionID)
|
||||||
|
{
|
||||||
|
User u = UserSessionIDHandler.getUserBySessionID(sessionID);
|
||||||
|
|
||||||
|
if(u !=null && u.getPermissions() == UserPermissions.admin.getValue())
|
||||||
|
{
|
||||||
|
return new ResponseEntity<>(db.addWeek(week), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
return new ResponseEntity<>(null, HttpStatus.FORBIDDEN);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Reference in New Issue
Block a user