Edit Function Finished (Semester and Modules)

Man kann bis jetzt eine dozenten noch nicht "abwählen"
This commit is contained in:
brausjonas
2023-05-25 13:22:22 +02:00
parent 00d57da32d
commit ac9fa44b99
7 changed files with 3446 additions and 32 deletions
+47 -17
View File
@@ -25,8 +25,10 @@ export default function InputForm(p) {
const [moduleInfos, setModuleInfos] = useState([]) const [moduleInfos, setModuleInfos] = useState([])
const [checkedSelected, setCheckedSelected] = useState(new Array(100).fill(false)) const [checkedSelected, setCheckedSelected] = useState(new Array(100).fill(false))
const [activatedSelected, setActivatedSelected] = useState(new Array(100).fill(false)) const [activatedSelected, setActivatedSelected] = useState(new Array(100).fill(false))
const [modulesNames, setModulesNames] = useState(new Array(100).fill("Please Select"))
async function getAllUsers() { async function getAllUsers() {
console.log("update")
let sessionid = localStorage.getItem("sessionid"); let sessionid = localStorage.getItem("sessionid");
let url = "http://localhost:8080/users/all?sessionid=" + sessionid; let url = "http://localhost:8080/users/all?sessionid=" + sessionid;
@@ -58,14 +60,43 @@ export default function InputForm(p) {
for(let i = 0; i < user.length; i++) for(let i = 0; i < user.length; i++)
{ {
temp.push(m[i] != null && m[i].activated === 1); temp.push(m[i] != null && m[i].activated === 1);
if(m[i] != null) {
let tempModuleInfo = new UserModuleInfo();
tempModuleInfo.setModuleName(m[i].name);
tempModuleInfo.setActivated(m[i].activated);
tempModuleInfo.setChecked(true);
tempModuleInfo.setUserid(user[i].id)
userModuleMapping.set(user[i].id, tempModuleInfo)
}
} }
setActivatedSelected(temp); setActivatedSelected(temp);
temp = []
for(let i = 0; i < user.length; i++)
{
temp.push(m[i] == null ? "Please Select" : m[i].name);
}
setModulesNames(temp);
setModuleInfos(m); setModuleInfos(m);
}); });
});
for(let i = 0; i < user.length; i++)
{
if(!userModuleMapping.has(user[i].id)) {
let tempModuleInfo = new UserModuleInfo();
tempModuleInfo.setModuleName("Please Select");
tempModuleInfo.setActivated(0);
tempModuleInfo.setChecked(false);
tempModuleInfo.setUserid(user[i].id)
userModuleMapping.set(user[i].id, tempModuleInfo)
}
}
});
} }
useEffect(() => { useEffect(() => {
@@ -118,6 +149,7 @@ export default function InputForm(p) {
} }
for (let [key, value] of userModuleMapping) { for (let [key, value] of userModuleMapping) {
let json1 = { let json1 = {
"id": 0, "id": 0,
"userid": value.getUserid(), "userid": value.getUserid(),
@@ -125,9 +157,9 @@ export default function InputForm(p) {
"name": value.getModuleName(), "name": value.getModuleName(),
"activated": value.getActivated() "activated": value.getActivated()
} }
if (value.getChecked()) { if (value.getChecked()) {
await fetch("http://localhost:8080/module?sessionid=" + localStorage.getItem("sessionid"), { let updateURL = "http://localhost:8080/module?sessionid=" + localStorage.getItem("sessionid");
await fetch(updateURL, {
method: method, method: method,
headers: {"Content-Type": "application/json"}, headers: {"Content-Type": "application/json"},
body: JSON.stringify(json1) body: JSON.stringify(json1)
@@ -185,15 +217,18 @@ export default function InputForm(p) {
let temp = userModuleMapping.get(user.id) let temp = userModuleMapping.get(user.id)
temp.setModuleName(module) temp.setModuleName(module)
temp.setUserid(user.id) temp.setUserid(user.id)
console.log("test")
} else {
let temp = new UserModuleInfo()
temp.setModuleName(module)
temp.setUserid(user.id)
userModuleMapping.set(user.id, temp)
console.log("test1")
} }
let temp = [];
for(let i = 0; i < modulesNames.length; i++)
{
temp.push(modulesNames[i]);
}
temp[index] = module;
setModulesNames(temp);
} }
function onSelectedCheckBox(user, state, index) { function onSelectedCheckBox(user, state, index) {
@@ -222,12 +257,7 @@ export default function InputForm(p) {
if (userModuleMapping.has(user.id)) { if (userModuleMapping.has(user.id)) {
let t = state.target.checked ? 1 : 0; let t = state.target.checked ? 1 : 0;
userModuleMapping.get(user.id).setActivated(t); userModuleMapping.get(user.id).setActivated(t);
} else { console.log(userModuleMapping.get(user.id).getActivated())
let temp = new UserModuleInfo()
let t = state.target.checked ? 1 : 0;
temp.setActivated(t)
temp.setUserid(user.id)
userModuleMapping.set(user.id, temp)
} }
let temp = [] let temp = []
@@ -341,7 +371,7 @@ export default function InputForm(p) {
padding: "5px 2px" padding: "5px 2px"
}} onChange={(e) => { }} onChange={(e) => {
onModuleClicked(user, e.target.value, i) onModuleClicked(user, e.target.value, i)
}} value={moduleInfos[i] != null ? moduleInfos[i].name : "Please Select"}> }} value={modulesNames[i]}>
<option value={"Please Select"}>Please Select</option> <option value={"Please Select"}>Please Select</option>
<option value={"Programmieren"}>Programmieren</option> <option value={"Programmieren"}>Programmieren</option>
<option value={"BWL"}>BWL</option> <option value={"BWL"}>BWL</option>
Binary file not shown.
File diff suppressed because it is too large Load Diff
@@ -10,7 +10,6 @@ import com.example.backend.anwprj.Module.Module;
import java.sql.*; import java.sql.*;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
public class DataBaseHandler public class DataBaseHandler
@@ -44,7 +43,6 @@ public class DataBaseHandler
} catch (SQLException e) } catch (SQLException e)
{ {
e.printStackTrace(); e.printStackTrace();
System.out.println("No Connection!");
} }
} }
/** /**
@@ -358,11 +356,11 @@ public class DataBaseHandler
} }
} }
public Module getModule(int userid, int semesterid, String name) public Module getModule(int userid, int semesterid)
{ {
try try
{ {
ResultSet rs = st.executeQuery("select * from modules where userid=" + userid + " and semesterid=" + semesterid + " and name='" + name + "'"); ResultSet rs = st.executeQuery("select * from modules where userid=" + userid + " and semesterid=" + semesterid);
return resultSetToModule(rs); return resultSetToModule(rs);
} }
@@ -395,8 +393,8 @@ public class DataBaseHandler
{ {
try { try {
st.executeUpdate("insert into modules (userid, semesterid, name, activated) " + st.executeUpdate("insert into modules (userid, semesterid, name, activated) " +
"Values (" + m.getUserid() + ", " + m.getSemesterId() + ", '" + m.getName() + "', " + m.getActivated() + ")"); "Values (" + m.getUserid() + ", " + m.getsemesterid() + ", '" + m.getName() + "', " + m.getActivated() + ")");
return getModule(m.getUserid(), m.getSemesterId(), m.getName()); return getModule(m.getUserid(), m.getsemesterid());
} }
catch (Exception e) { catch (Exception e) {
@@ -441,19 +439,19 @@ public class DataBaseHandler
{ {
try { try {
System.out.println(m.getId()); Module module = getModule(m.getUserid(), m.getsemesterid());
Module module = getModule(m.getUserid(), m.getSemesterId(), m.getName());
if(module == null) if(module == null)
{ {
addModule(m); addModule(m);
} }
else else
{ {
System.out.println("test"); st.executeUpdate("update modules set activated=" + m.getActivated() + ", semesterid=" + m.getsemesterid() + ", name='" + m.getName() + "' where id=" + module.getid());
st.executeUpdate("update modules set activated=" + m.getActivated() + " where userid=" + m.getUserid() + " and semesterid=" + m.getSemesterId() + " and name='" + m.getName() + "'");
} }
return getModule(m.getUserid(), m.getSemesterId(), m.getName()); Module test = getModule(m.getUserid(), m.getsemesterid());
System.out.println(test.getActivated());
return test;
} }
catch (SQLException ex) { catch (SQLException ex) {
ex.printStackTrace(); ex.printStackTrace();
@@ -18,11 +18,11 @@ public class Module {
this.activated = activated; this.activated = activated;
} }
public int getId() { return id; } public int getid() { return id; }
public int getUserid() { return userid; } public int getUserid() { return userid; }
public int getSemesterId() { return semesterid; } public int getsemesterid() { return semesterid; }
public String getName() { return name; } public String getName() { return name; }
@@ -111,6 +111,8 @@ public class ModuleController
@PostMapping("/module") @PostMapping("/module")
public ResponseEntity<Module> addModule(@RequestBody Module module, @RequestParam(name = "sessionid") String sessionID) public ResponseEntity<Module> addModule(@RequestBody Module module, @RequestParam(name = "sessionid") String sessionID)
{ {
System.out.println("test1");
User user = UserSessionIDHandler.getUserBySessionID(sessionID); User user = UserSessionIDHandler.getUserBySessionID(sessionID);
if (user.getPermissions() == UserPermissions.admin.getValue()) if (user.getPermissions() == UserPermissions.admin.getValue())
@@ -132,6 +134,7 @@ public class ModuleController
@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)
{ {
User u = UserSessionIDHandler.getUserBySessionID(sessionID); User u = UserSessionIDHandler.getUserBySessionID(sessionID);
if (u != null && u.getPermissions() == UserPermissions.admin.getValue()) if (u != null && u.getPermissions() == UserPermissions.admin.getValue())
{ {
@@ -33,7 +33,7 @@ public class SemesterController
Semester s = db.addSemester(semester); Semester s = db.addSemester(semester);
if(s != null) if(s != null)
{ {
System.out.println(s.getStartday());
return new ResponseEntity<>(s, HttpStatus.OK); return new ResponseEntity<>(s, HttpStatus.OK);
} }
@@ -109,7 +109,6 @@ public class SemesterController
User u = UserSessionIDHandler.getUserBySessionID(sessionID); User u = UserSessionIDHandler.getUserBySessionID(sessionID);
if(u != null && u.getPermissions() == UserPermissions.admin.getValue()) if(u != null && u.getPermissions() == UserPermissions.admin.getValue())
{ {
System.out.println(semester.getId());
Semester s = db.updateSemester(semester); Semester s = db.updateSemester(semester);
if(s != null) if(s != null)