Release - Upload
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
from django.contrib import admin
|
||||
|
||||
# Register your models here.
|
||||
@@ -0,0 +1,5 @@
|
||||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class PruefplanParserConfig(AppConfig):
|
||||
name = 'pruefplan_parser'
|
||||
@@ -0,0 +1,229 @@
|
||||
{
|
||||
"revision": "2648:2829M",
|
||||
"array": [
|
||||
{
|
||||
"kennung": "259",
|
||||
"vorname": "Christine",
|
||||
"nachname": "Rademacher",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "AMP",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "315",
|
||||
"vorname": "J\u00c3\u00b6rg",
|
||||
"nachname": "Steinbach",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "AMP",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "385",
|
||||
"vorname": "Peter",
|
||||
"nachname": "Jonas",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "AMP",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "71655",
|
||||
"vorname": "Melanie",
|
||||
"nachname": "Basting",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "AMP",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "103",
|
||||
"vorname": "Thomas",
|
||||
"nachname": "Giesler",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "70901",
|
||||
"vorname": "Sven",
|
||||
"nachname": "Loquai",
|
||||
"titel": "Prof. Dr.-Ing.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "166",
|
||||
"vorname": "Bernd",
|
||||
"nachname": "Klehn",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "382",
|
||||
"vorname": "Michael",
|
||||
"nachname": "Zwanger",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "74090",
|
||||
"vorname": "Olga",
|
||||
"nachname": "Battermann",
|
||||
"titel": "Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": true
|
||||
},
|
||||
{
|
||||
"kennung": "73247",
|
||||
"vorname": "Michael",
|
||||
"nachname": "Mayle",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "AMP",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "316",
|
||||
"vorname": "Florian",
|
||||
"nachname": "Steinmeyer",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "AMP",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "49",
|
||||
"vorname": "Bernd",
|
||||
"nachname": "Braun",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "AMP",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "73630",
|
||||
"vorname": "Peter",
|
||||
"nachname": "Eberhardt",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": true
|
||||
},
|
||||
{
|
||||
"kennung": "576",
|
||||
"vorname": "J\u00c3\u00bcrgen",
|
||||
"nachname": "Krumm",
|
||||
"titel": "Prof.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "219",
|
||||
"vorname": "Stefan",
|
||||
"nachname": "May",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "75398",
|
||||
"vorname": "Christian",
|
||||
"nachname": "Pfitzner",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "508",
|
||||
"vorname": "Wolfgang",
|
||||
"nachname": "M\u00c3\u00b6nch",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "585",
|
||||
"vorname": "Rainer",
|
||||
"nachname": "Engelbrecht",
|
||||
"titel": "Prof. Dr.-Ing.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "73998",
|
||||
"vorname": "Stefan",
|
||||
"nachname": "Wenhardt",
|
||||
"titel": "",
|
||||
"fakultaet": "AMP",
|
||||
"istLehrbeauftragter": true
|
||||
},
|
||||
{
|
||||
"kennung": "74065",
|
||||
"vorname": "Matthias",
|
||||
"nachname": "Gleich",
|
||||
"titel": "",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": true
|
||||
},
|
||||
{
|
||||
"kennung": "376",
|
||||
"vorname": "Olaf",
|
||||
"nachname": "Ziemann",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "350",
|
||||
"vorname": "Sebastian",
|
||||
"nachname": "Walter",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "75807",
|
||||
"vorname": "Andreas",
|
||||
"nachname": "Stute",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "492",
|
||||
"vorname": "G\u00c3\u00bcnter",
|
||||
"nachname": "Kie\u00c3\u0178ling",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "84399",
|
||||
"vorname": "Anja",
|
||||
"nachname": "Freudenreich",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "38496",
|
||||
"vorname": "Jan",
|
||||
"nachname": "Paulus",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "62711",
|
||||
"vorname": "Hritam",
|
||||
"nachname": "Dutta",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
},
|
||||
{
|
||||
"kennung": "73323",
|
||||
"vorname": "Enrico",
|
||||
"nachname": "Schr\u00c3\u00b6der;",
|
||||
"titel": "Prof. Dr.",
|
||||
"fakultaet": "EFI",
|
||||
"istLehrbeauftragter": false
|
||||
}
|
||||
]
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,161 @@
|
||||
{
|
||||
"revision": "2648:2829M",
|
||||
"array": [
|
||||
{
|
||||
"dozentenkennung": "103",
|
||||
"termin": {
|
||||
"datumText": "22.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 22,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "MONTAG",
|
||||
"pruefungswoche": 2
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "70901",
|
||||
"termin": {
|
||||
"datumText": "11.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 11,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "DONNERSTAG",
|
||||
"pruefungswoche": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "166",
|
||||
"termin": {
|
||||
"datumText": "16.07.2024 16:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 16,
|
||||
"stunde": 16,
|
||||
"minute": 30,
|
||||
"wochentag": "DIENSTAG",
|
||||
"pruefungswoche": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "382",
|
||||
"termin": {
|
||||
"datumText": "16.07.2024 14:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 16,
|
||||
"stunde": 14,
|
||||
"minute": 0,
|
||||
"wochentag": "DIENSTAG",
|
||||
"pruefungswoche": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "576",
|
||||
"termin": {
|
||||
"datumText": "03.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 3,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "MITTWOCH",
|
||||
"pruefungswoche": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "75398",
|
||||
"termin": {
|
||||
"datumText": "09.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 9,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "DIENSTAG",
|
||||
"pruefungswoche": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "508",
|
||||
"termin": {
|
||||
"datumText": "13.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 13,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "SAMSTAG",
|
||||
"pruefungswoche": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "585",
|
||||
"termin": {
|
||||
"datumText": "13.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 13,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "SAMSTAG",
|
||||
"pruefungswoche": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "492",
|
||||
"termin": {
|
||||
"datumText": "19.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 19,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "FREITAG",
|
||||
"pruefungswoche": 2
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "84399",
|
||||
"termin": {
|
||||
"datumText": "26.07.2024 16:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 26,
|
||||
"stunde": 16,
|
||||
"minute": 30,
|
||||
"wochentag": "FREITAG",
|
||||
"pruefungswoche": 3
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "38496",
|
||||
"termin": {
|
||||
"datumText": "05.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 5,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "FREITAG",
|
||||
"pruefungswoche": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "62711",
|
||||
"termin": {
|
||||
"datumText": "04.07.2024 14:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 4,
|
||||
"stunde": 14,
|
||||
"minute": 0,
|
||||
"wochentag": "DONNERSTAG",
|
||||
"pruefungswoche": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,803 @@
|
||||
{
|
||||
"revision": "2648:2829M",
|
||||
"array": [
|
||||
{
|
||||
"kennung": "M1:SU:BEI:1",
|
||||
"pruefungsart": "LN_STUDIENBEGLEITEND",
|
||||
"termin": {
|
||||
"datumText": "10.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 10,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "MITTWOCH",
|
||||
"pruefungswoche": 0
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "M1:SU:BEI:1",
|
||||
"anzahlAnmeldungen": 63,
|
||||
"fachkennungen": [
|
||||
"BEI:20141:1110"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "259",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "BB.103",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:1110"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "315",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.450",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:1110"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "385",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "BB.111",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:1110"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "71655",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "BB.103",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:1110"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "BMED:20141:5150:\"103,166\"_BMED:20141:5150:\"70901\"_BMED:20201:5150:\"103,166\"",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"termin": {
|
||||
"datumText": "11.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 11,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "DONNERSTAG",
|
||||
"pruefungswoche": 1
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "BMED:20141:5150:\"103,166\"",
|
||||
"anzahlAnmeldungen": 5,
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5150"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "103",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.111",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5150"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "70901",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.213",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5150"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "166",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.111",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5150"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennung": "BMED:20141:5150:\"70901\"",
|
||||
"anzahlAnmeldungen": 0,
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5150"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "103",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.111",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5150"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "70901",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.213",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5150"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "166",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.111",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5150"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennung": "BMED:20201:5150:\"103,166\"",
|
||||
"anzahlAnmeldungen": 41,
|
||||
"fachkennungen": [
|
||||
"BMED:20201:5150"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "103",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.111",
|
||||
"fachkennungen": [
|
||||
"BMED:20201:5150"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "70901",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.213",
|
||||
"fachkennungen": [
|
||||
"BMED:20201:5150"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "166",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.111",
|
||||
"fachkennungen": [
|
||||
"BMED:20201:5150"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "MZ1PH:SU:BMED:2_PH:SU:BMED:2",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"termin": {
|
||||
"datumText": "24.07.2024 14:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 24,
|
||||
"stunde": 14,
|
||||
"minute": 0,
|
||||
"wochentag": "MITTWOCH",
|
||||
"pruefungswoche": 2
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "MZ1PH:SU:BMED:2",
|
||||
"anzahlAnmeldungen": 2,
|
||||
"fachkennungen": [
|
||||
"BMED:20141:1370"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "382",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.107",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:1370"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "74090",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.107",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:1370"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennung": "PH:SU:BMED:2",
|
||||
"anzahlAnmeldungen": 101,
|
||||
"fachkennungen": [
|
||||
"BMED:20201:1600"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "73247",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "ML.034",
|
||||
"fachkennungen": [
|
||||
"BMED:20201:1600"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "316",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.140",
|
||||
"fachkennungen": [
|
||||
"BMED:20201:1600"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "49",
|
||||
"typ": "AUFSICHT",
|
||||
"raum": "ML.034",
|
||||
"fachkennungen": [
|
||||
"BMED:20201:1600"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "126efi:WPF:EFI:0",
|
||||
"pruefungsart": "LN_VORGEZOGEN",
|
||||
"teilpruefungen": [],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "MUK:SU:BME:6",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "MUK:SU:BME:6",
|
||||
"anzahlAnmeldungen": 0,
|
||||
"fachkennungen": [
|
||||
"BME:20131:4520"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": []
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "ET1:SU:BMF:1",
|
||||
"pruefungsart": "LN_STUDIENBEGLEITEND",
|
||||
"termin": {
|
||||
"datumText": "03.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 3,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "MITTWOCH",
|
||||
"pruefungswoche": 0
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "ET1:SU:BMF:1",
|
||||
"anzahlAnmeldungen": 12,
|
||||
"fachkennungen": [
|
||||
"BMF:20171:1180"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "73630",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KH.108",
|
||||
"fachkennungen": [
|
||||
"BMF:20171:1180"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "576",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KH.108",
|
||||
"fachkennungen": [
|
||||
"BMF:20171:1180"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "mAUT4#AB:SU:MSY:1",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"termin": {
|
||||
"datumText": "30.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 30,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "DIENSTAG",
|
||||
"pruefungswoche": 3
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "mAUT4#AB:SU:MSY:1",
|
||||
"anzahlAnmeldungen": 31,
|
||||
"fachkennungen": [
|
||||
"MAPR:20201:8425",
|
||||
"MSY:20091:8425"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "219",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.213",
|
||||
"fachkennungen": [
|
||||
"MAPR:20201:8425",
|
||||
"MSY:20091:8425"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "75398",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.213",
|
||||
"fachkennungen": [
|
||||
"MAPR:20201:8425",
|
||||
"MSY:20091:8425"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "MAPR:20201:5020:\"393,159,355\"",
|
||||
"pruefungsart": "LN_VORGEZOGEN",
|
||||
"teilpruefungen": [],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "TO:SU:BMF:6_TO:SU:BMMF:4",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"termin": {
|
||||
"datumText": "13.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 13,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "SAMSTAG",
|
||||
"pruefungswoche": 1
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "TO:SU:BMMF:4",
|
||||
"anzahlAnmeldungen": 30,
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5350",
|
||||
"BMED:20201:5350"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "508",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.440",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5350",
|
||||
"BMED:20201:5350"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "585",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.107",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:5350",
|
||||
"BMED:20201:5350"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennung": "TO:SU:BMF:6",
|
||||
"anzahlAnmeldungen": 29,
|
||||
"fachkennungen": [
|
||||
"BMF:20171:4130"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "508",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.440",
|
||||
"fachkennungen": [
|
||||
"BMF:20171:4130"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "585",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.107",
|
||||
"fachkennungen": [
|
||||
"BMF:20171:4130"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "M1:SU:BMED:1",
|
||||
"pruefungsart": "LN_STUDIENBEGLEITEND",
|
||||
"termin": {
|
||||
"datumText": "10.07.2024 16:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 10,
|
||||
"stunde": 16,
|
||||
"minute": 30,
|
||||
"wochentag": "MITTWOCH",
|
||||
"pruefungswoche": 0
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "M1:SU:BMED:1",
|
||||
"anzahlAnmeldungen": 35,
|
||||
"fachkennungen": [
|
||||
"BMED:20141:1210",
|
||||
"BMED:20201:1510"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "73998",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "MC.100",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:1210",
|
||||
"BMED:20201:1510"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "259",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "MC.100",
|
||||
"fachkennungen": [
|
||||
"BMED:20141:1210",
|
||||
"BMED:20201:1510"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "FO:SU:BME:2",
|
||||
"pruefungsart": "LN_VORGEZOGEN",
|
||||
"teilpruefungen": [],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "BW:SU:BEI:5",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"termin": {
|
||||
"datumText": "11.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 11,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "DONNERSTAG",
|
||||
"pruefungswoche": 1
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "BW:SU:BEI:5",
|
||||
"anzahlAnmeldungen": 49,
|
||||
"fachkennungen": [
|
||||
"BEI:20141:3800"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "74065",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "MC.100",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:3800"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "376",
|
||||
"typ": "AUFSICHT",
|
||||
"raum": "KA.111",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:3800"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "MAPR:20201:5810:\"472,60104\"",
|
||||
"pruefungsart": "LN_VORGEZOGEN",
|
||||
"teilpruefungen": [],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "MK:SU:BMF:4",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"termin": {
|
||||
"datumText": "26.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 26,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "FREITAG",
|
||||
"pruefungswoche": 3
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "MK:SU:BMF:4",
|
||||
"anzahlAnmeldungen": 43,
|
||||
"fachkennungen": [
|
||||
"BMF:20171:4070"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "350",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "MC.100",
|
||||
"fachkennungen": [
|
||||
"BMF:20171:4070"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "024efi:WPF:EFI:0",
|
||||
"pruefungsart": "LN_VORGEZOGEN",
|
||||
"teilpruefungen": [],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "ELK1:SU:BEI:3_IBT:20141:6160:\"166\"",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"termin": {
|
||||
"datumText": "27.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 27,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "SAMSTAG",
|
||||
"pruefungswoche": 3
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "ELK1:SU:BEI:3",
|
||||
"anzahlAnmeldungen": 36,
|
||||
"fachkennungen": [
|
||||
"BEI:20141:5120",
|
||||
"BMED:20141:5120"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "166",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "MC.100",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:5120",
|
||||
"BMED:20141:5120"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennung": "IBT:20141:6160:\"166\"",
|
||||
"anzahlAnmeldungen": 6,
|
||||
"fachkennungen": [
|
||||
"IBT:20141:6160"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "166",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "MC.100",
|
||||
"fachkennungen": [
|
||||
"IBT:20141:6160"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "mINF6/1:SU:MSY:2",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "mINF6/1:SU:MSY:2",
|
||||
"anzahlAnmeldungen": 2,
|
||||
"fachkennungen": [
|
||||
"MAPR:20201:8835",
|
||||
"MSY:20091:8835"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": []
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "MSY:20091:8361:\"49,75807\"",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"termin": {
|
||||
"datumText": "15.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 15,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "MONTAG",
|
||||
"pruefungswoche": 1
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "MSY:20091:8361:\"49,75807\"",
|
||||
"anzahlAnmeldungen": 8,
|
||||
"fachkennungen": [
|
||||
"MSY:20091:8361"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "75807",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.217",
|
||||
"fachkennungen": [
|
||||
"MSY:20091:8361"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "49",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.217",
|
||||
"fachkennungen": [
|
||||
"MSY:20091:8361"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "ET2:SU:BMF:2",
|
||||
"pruefungsart": "PRUEFUNG",
|
||||
"termin": {
|
||||
"datumText": "19.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 19,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "FREITAG",
|
||||
"pruefungswoche": 2
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "ET2:SU:BMF:2",
|
||||
"anzahlAnmeldungen": 61,
|
||||
"fachkennungen": [
|
||||
"BMF:20171:1190"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "73630",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "BB.103",
|
||||
"fachkennungen": [
|
||||
"BMF:20171:1190"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "492",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "SP.467",
|
||||
"fachkennungen": [
|
||||
"BMF:20171:1190"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
},
|
||||
{
|
||||
"kennung": "I2#AB:SU:BEI:3",
|
||||
"pruefungsart": "LN_STUDIENBEGLEITEND",
|
||||
"termin": {
|
||||
"datumText": "04.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 4,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "DONNERSTAG",
|
||||
"pruefungswoche": 0
|
||||
},
|
||||
"teilpruefungen": [
|
||||
{
|
||||
"kennung": "I2#AB:SU:BEI:3",
|
||||
"anzahlAnmeldungen": 63,
|
||||
"fachkennungen": [
|
||||
"BEI:20141:5160",
|
||||
"BEI:20141:5160",
|
||||
"BMED:20141:5160",
|
||||
"BMED:20141:5160"
|
||||
],
|
||||
"pruefungsdurchfuehrungen": [
|
||||
{
|
||||
"dozentenkennung": "84399",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "BB.103",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:5160",
|
||||
"BEI:20141:5160",
|
||||
"BMED:20141:5160",
|
||||
"BMED:20141:5160"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "38496",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "KA.450",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:5160",
|
||||
"BEI:20141:5160",
|
||||
"BMED:20141:5160",
|
||||
"BMED:20141:5160"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "62711",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "BB.210",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:5160",
|
||||
"BEI:20141:5160",
|
||||
"BMED:20141:5160",
|
||||
"BMED:20141:5160"
|
||||
]
|
||||
},
|
||||
{
|
||||
"dozentenkennung": "73323",
|
||||
"typ": "PRUEFER",
|
||||
"raum": "BB.103",
|
||||
"fachkennungen": [
|
||||
"BEI:20141:5160",
|
||||
"BEI:20141:5160",
|
||||
"BMED:20141:5160",
|
||||
"BMED:20141:5160"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dozentenKennungPendler": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
Hier landen die hochgeladenen Dateien
|
||||
@@ -0,0 +1,577 @@
|
||||
{
|
||||
"revision": "2648:2829M",
|
||||
"array": [
|
||||
{
|
||||
"kennungPruefung": "M1:SU:BEI:1",
|
||||
"termin": {
|
||||
"datumText": "10.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 10,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "MITTWOCH",
|
||||
"pruefungswoche": 0
|
||||
},
|
||||
"raum": "KA.450",
|
||||
"kennungFaecher": [
|
||||
"BEI:20141:1110"
|
||||
],
|
||||
"matrikel": [
|
||||
3752511,
|
||||
3743531,
|
||||
3726002,
|
||||
3756960,
|
||||
3682959,
|
||||
3747191,
|
||||
3726312,
|
||||
3727575,
|
||||
3677443,
|
||||
3724433,
|
||||
3724165,
|
||||
3748172,
|
||||
3726338,
|
||||
3671524,
|
||||
3684924,
|
||||
3571059,
|
||||
3725229,
|
||||
3678411,
|
||||
3726268,
|
||||
3303621,
|
||||
3732643
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "BMED:20141:5150:\"103,166\"_BMED:20141:5150:\"70901\"_BMED:20201:5150:\"103,166\"",
|
||||
"termin": {
|
||||
"datumText": "11.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 11,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "DONNERSTAG",
|
||||
"pruefungswoche": 1
|
||||
},
|
||||
"raum": "KA.213",
|
||||
"kennungFaecher": [
|
||||
"BMED:20141:5150",
|
||||
"BMED:20141:5150",
|
||||
"BMED:20201:5150"
|
||||
],
|
||||
"matrikel": [
|
||||
3691111,
|
||||
3503148,
|
||||
3680786,
|
||||
3670499,
|
||||
3634750,
|
||||
3706613,
|
||||
3527650,
|
||||
3645338,
|
||||
3706064,
|
||||
3674877,
|
||||
3291852,
|
||||
3676053,
|
||||
3578540,
|
||||
3690651,
|
||||
3621462,
|
||||
3623453,
|
||||
3623581,
|
||||
3673432,
|
||||
2747059,
|
||||
3569726,
|
||||
3673458,
|
||||
3535000,
|
||||
3623411
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "MZ1PH:SU:BMED:2_PH:SU:BMED:2",
|
||||
"termin": {
|
||||
"datumText": "24.07.2024 14:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 24,
|
||||
"stunde": 14,
|
||||
"minute": 0,
|
||||
"wochentag": "MITTWOCH",
|
||||
"pruefungswoche": 2
|
||||
},
|
||||
"raum": "KA.107",
|
||||
"kennungFaecher": [
|
||||
"BMED:20141:1370"
|
||||
],
|
||||
"matrikel": [
|
||||
3504398,
|
||||
3516845
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "ET1:SU:BMF:1",
|
||||
"termin": {
|
||||
"datumText": "03.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 3,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "MITTWOCH",
|
||||
"pruefungswoche": 0
|
||||
},
|
||||
"raum": "KH.108",
|
||||
"kennungFaecher": [
|
||||
"BMF:20171:1180"
|
||||
],
|
||||
"matrikel": [
|
||||
3584222,
|
||||
3569599,
|
||||
3565942,
|
||||
3749645,
|
||||
3756449,
|
||||
3698347,
|
||||
3628502,
|
||||
3182142,
|
||||
3673742,
|
||||
3719352,
|
||||
3693298,
|
||||
3756564
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "mAUT4#AB:SU:MSY:1",
|
||||
"termin": {
|
||||
"datumText": "30.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 30,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "DIENSTAG",
|
||||
"pruefungswoche": 3
|
||||
},
|
||||
"raum": "KA.213",
|
||||
"kennungFaecher": [
|
||||
"MAPR:20201:8425",
|
||||
"MSY:20091:8425"
|
||||
],
|
||||
"matrikel": [
|
||||
3716009,
|
||||
3518430,
|
||||
3506909,
|
||||
3513240,
|
||||
3503119,
|
||||
3724136,
|
||||
3767142,
|
||||
3767155,
|
||||
3707610,
|
||||
3508565,
|
||||
3503429,
|
||||
3581599,
|
||||
3754052,
|
||||
3516832,
|
||||
3772463,
|
||||
3508680,
|
||||
3505960,
|
||||
3569630,
|
||||
3577853,
|
||||
3244724,
|
||||
3502563,
|
||||
3503094,
|
||||
3580352,
|
||||
3164060,
|
||||
3502873,
|
||||
3559848,
|
||||
3723960,
|
||||
3758612,
|
||||
3513224,
|
||||
3289528,
|
||||
3768800
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "TO:SU:BMF:6_TO:SU:BMMF:4",
|
||||
"termin": {
|
||||
"datumText": "13.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 13,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "SAMSTAG",
|
||||
"pruefungswoche": 1
|
||||
},
|
||||
"raum": "KA.107",
|
||||
"kennungFaecher": [
|
||||
"BMED:20141:5350",
|
||||
"BMED:20201:5350",
|
||||
"BMF:20171:4130"
|
||||
],
|
||||
"matrikel": [
|
||||
3622836,
|
||||
3574261,
|
||||
3529162,
|
||||
3617023,
|
||||
3616170,
|
||||
3615636,
|
||||
3629947,
|
||||
3584699,
|
||||
3624405,
|
||||
3556537,
|
||||
3616138,
|
||||
3513422,
|
||||
3619874,
|
||||
3621178,
|
||||
3623929,
|
||||
2984098,
|
||||
2931071,
|
||||
3513266,
|
||||
2267607
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "M1:SU:BMED:1",
|
||||
"termin": {
|
||||
"datumText": "10.07.2024 16:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 10,
|
||||
"stunde": 16,
|
||||
"minute": 30,
|
||||
"wochentag": "MITTWOCH",
|
||||
"pruefungswoche": 0
|
||||
},
|
||||
"raum": "MC.100",
|
||||
"kennungFaecher": [
|
||||
"BMED:20141:1210",
|
||||
"BMED:20201:1510"
|
||||
],
|
||||
"matrikel": [
|
||||
3733583,
|
||||
3746008,
|
||||
3751361,
|
||||
3673445,
|
||||
3739767,
|
||||
3749629,
|
||||
3719307,
|
||||
3742617,
|
||||
3740220,
|
||||
3720860,
|
||||
3721838,
|
||||
3504653,
|
||||
3754586,
|
||||
3726479,
|
||||
3561069,
|
||||
3727869,
|
||||
3740275,
|
||||
3728051,
|
||||
3724967,
|
||||
3512920,
|
||||
3581490,
|
||||
3711062,
|
||||
3759862,
|
||||
3649154,
|
||||
3756551,
|
||||
3636093,
|
||||
3719266,
|
||||
3635348,
|
||||
3719563,
|
||||
3727393,
|
||||
3761041,
|
||||
3691393,
|
||||
3638266,
|
||||
3633414,
|
||||
3622852
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "BW:SU:BEI:5",
|
||||
"termin": {
|
||||
"datumText": "11.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 11,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "DONNERSTAG",
|
||||
"pruefungswoche": 1
|
||||
},
|
||||
"raum": "MC.100",
|
||||
"kennungFaecher": [
|
||||
"BEI:20141:3800"
|
||||
],
|
||||
"matrikel": [
|
||||
3616675,
|
||||
3647725,
|
||||
3627406,
|
||||
3572030,
|
||||
3235621,
|
||||
3161199,
|
||||
3512045,
|
||||
3628672,
|
||||
3308517,
|
||||
3235250,
|
||||
3634396,
|
||||
3616703,
|
||||
3627381,
|
||||
3085850,
|
||||
3620436,
|
||||
3622159,
|
||||
3569205,
|
||||
3628205,
|
||||
3263104,
|
||||
3516957,
|
||||
3628630,
|
||||
3615850,
|
||||
3647866,
|
||||
3627419,
|
||||
3641161,
|
||||
3627831,
|
||||
3622191,
|
||||
3017956
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "MK:SU:BMF:4",
|
||||
"termin": {
|
||||
"datumText": "26.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 26,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "FREITAG",
|
||||
"pruefungswoche": 3
|
||||
},
|
||||
"raum": "MC.100",
|
||||
"kennungFaecher": [
|
||||
"BMF:20171:4070"
|
||||
],
|
||||
"matrikel": [
|
||||
3544163,
|
||||
3643800,
|
||||
3621545,
|
||||
3668827,
|
||||
3569599,
|
||||
3678479,
|
||||
3246109,
|
||||
3698350,
|
||||
3583791,
|
||||
3678437,
|
||||
3693511,
|
||||
3619902,
|
||||
3699683,
|
||||
3733244,
|
||||
3627394,
|
||||
3667523,
|
||||
3700385,
|
||||
3678226,
|
||||
3698839,
|
||||
3678495,
|
||||
3036482,
|
||||
3678440,
|
||||
3684474,
|
||||
3664621,
|
||||
3698347,
|
||||
3693243,
|
||||
3564309,
|
||||
3629947,
|
||||
3584699,
|
||||
3645721,
|
||||
3687433,
|
||||
3693269,
|
||||
3678242,
|
||||
3638914,
|
||||
3619874,
|
||||
3678424,
|
||||
3234192,
|
||||
3682438,
|
||||
3669428,
|
||||
3665967,
|
||||
3693272,
|
||||
3706626,
|
||||
3665222
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "ELK1:SU:BEI:3_IBT:20141:6160:\"166\"",
|
||||
"termin": {
|
||||
"datumText": "27.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 27,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "SAMSTAG",
|
||||
"pruefungswoche": 3
|
||||
},
|
||||
"raum": "MC.100",
|
||||
"kennungFaecher": [
|
||||
"BEI:20141:5120",
|
||||
"BMED:20141:5120",
|
||||
"IBT:20141:6160"
|
||||
],
|
||||
"matrikel": [
|
||||
3569979,
|
||||
3647684,
|
||||
3572030,
|
||||
3633737,
|
||||
3530133,
|
||||
3509559,
|
||||
3627381,
|
||||
3085850,
|
||||
3706121,
|
||||
3670064,
|
||||
3513381,
|
||||
3263104,
|
||||
3670402,
|
||||
3670936,
|
||||
3536119,
|
||||
3692598,
|
||||
3615272,
|
||||
3692639,
|
||||
3692668,
|
||||
3671962,
|
||||
3667932,
|
||||
3672617,
|
||||
3692837,
|
||||
3674822,
|
||||
3671805,
|
||||
3513026,
|
||||
3670051,
|
||||
3693214,
|
||||
3577712,
|
||||
3668517,
|
||||
3673586,
|
||||
3672068,
|
||||
3702392,
|
||||
3722314,
|
||||
3645792,
|
||||
3534748,
|
||||
3638394,
|
||||
3305701,
|
||||
3291335,
|
||||
3637256,
|
||||
3589933,
|
||||
3589988
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "MSY:20091:8361:\"49,75807\"",
|
||||
"termin": {
|
||||
"datumText": "15.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 15,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "MONTAG",
|
||||
"pruefungswoche": 1
|
||||
},
|
||||
"raum": "KA.217",
|
||||
"kennungFaecher": [
|
||||
"MSY:20091:8361"
|
||||
],
|
||||
"matrikel": [
|
||||
3581599,
|
||||
2761145,
|
||||
3132088,
|
||||
3757011,
|
||||
2694152,
|
||||
3768798,
|
||||
3713545,
|
||||
3506826
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "ET2:SU:BMF:2",
|
||||
"termin": {
|
||||
"datumText": "19.07.2024 08:30 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 19,
|
||||
"stunde": 8,
|
||||
"minute": 30,
|
||||
"wochentag": "FREITAG",
|
||||
"pruefungswoche": 2
|
||||
},
|
||||
"raum": "SP.467",
|
||||
"kennungFaecher": [
|
||||
"BMF:20171:1190"
|
||||
],
|
||||
"matrikel": [
|
||||
3726495,
|
||||
3756449,
|
||||
3721148,
|
||||
3664621,
|
||||
3721825,
|
||||
3698347,
|
||||
3628502,
|
||||
3720831,
|
||||
3182142,
|
||||
3742505,
|
||||
3250956,
|
||||
3720901,
|
||||
3688315,
|
||||
3719253,
|
||||
3720844,
|
||||
3673742,
|
||||
3513422,
|
||||
3726239,
|
||||
3719237,
|
||||
3753899,
|
||||
2984098,
|
||||
3234192,
|
||||
3719352,
|
||||
3257531,
|
||||
3693298,
|
||||
3198761,
|
||||
3756564,
|
||||
3726099,
|
||||
3719914
|
||||
]
|
||||
},
|
||||
{
|
||||
"kennungPruefung": "I2#AB:SU:BEI:3",
|
||||
"termin": {
|
||||
"datumText": "04.07.2024 11:00 MESZ",
|
||||
"jahr": 2024,
|
||||
"monat": 7,
|
||||
"tag": 4,
|
||||
"stunde": 11,
|
||||
"minute": 0,
|
||||
"wochentag": "DONNERSTAG",
|
||||
"pruefungswoche": 0
|
||||
},
|
||||
"raum": "KA.450",
|
||||
"kennungFaecher": [
|
||||
"BEI:20141:5160",
|
||||
"BEI:20141:5160",
|
||||
"BMED:20141:5160",
|
||||
"BMED:20141:5160"
|
||||
],
|
||||
"matrikel": [
|
||||
3641161,
|
||||
3670936,
|
||||
3565575,
|
||||
3536119,
|
||||
3570982,
|
||||
3615272,
|
||||
3692613,
|
||||
3570627,
|
||||
3629017,
|
||||
3590623,
|
||||
3629033,
|
||||
3667932,
|
||||
3706118,
|
||||
3702389,
|
||||
3630286,
|
||||
3283310,
|
||||
3715284,
|
||||
3671087,
|
||||
3271030,
|
||||
3674822,
|
||||
3665277
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
from django import forms
|
||||
|
||||
|
||||
class UploadFileForm(forms.Form):
|
||||
student_file = forms.FileField(required=False)
|
||||
exams_file = forms.FileField(required=False)
|
||||
lecturers_file = forms.FileField(required=False)
|
||||
subjects_file = forms.FileField(required=False)
|
||||
attendance_file = forms.FileField(required=False)
|
||||
@@ -0,0 +1,20 @@
|
||||
# Generated by Django 3.2 on 2021-04-30 12:03
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='JsonParser',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
],
|
||||
),
|
||||
]
|
||||
@@ -0,0 +1,454 @@
|
||||
import inspect
|
||||
from django.db import models
|
||||
|
||||
from medinf.settings import (
|
||||
PP_EXAM_FILE,
|
||||
PP_ATTENDANCE_FILE,
|
||||
PP_STUDENT_FILE,
|
||||
PP_SUBJECT_FILE,
|
||||
PP_TEACHER_FILE,
|
||||
)
|
||||
from pruefplan_viewer.models import (
|
||||
API_ExamDataSet_ForStudent,
|
||||
Attendance,
|
||||
Subject,
|
||||
Exam,
|
||||
Lecturer,
|
||||
PartialExam,
|
||||
ExamExecution,
|
||||
Student,
|
||||
StudentExam,
|
||||
)
|
||||
import json
|
||||
import datetime
|
||||
|
||||
|
||||
class JsonParser(models.Model):
|
||||
exceptionMessages = []
|
||||
warningMessages = []
|
||||
|
||||
def clearTable(self):
|
||||
JsonParser.exceptionMessages.clear()
|
||||
JsonParser.warningMessages.clear()
|
||||
|
||||
Subject.objects.all().delete()
|
||||
Exam.objects.all().delete()
|
||||
Attendance.objects.all().delete()
|
||||
Lecturer.objects.all().delete()
|
||||
Student.objects.all().delete()
|
||||
PartialExam.objects.all().delete()
|
||||
ExamExecution.objects.all().delete()
|
||||
StudentExam.objects.all().delete()
|
||||
API_ExamDataSet_ForStudent.objects.all().delete()
|
||||
|
||||
def fillLecturerTable(self):
|
||||
idKey = "kennung"
|
||||
firstNameKey = "vorname"
|
||||
lastNameKey = "nachname"
|
||||
titleKey = "titel"
|
||||
|
||||
try:
|
||||
with open(PP_TEACHER_FILE, encoding="utf-8") as json_file:
|
||||
data = json.load(json_file)
|
||||
revision = data["revision"] # TODO -> Do Something with Revision
|
||||
for d in data["array"]:
|
||||
entry = Lecturer(
|
||||
identification=d[idKey],
|
||||
firstName=d[firstNameKey],
|
||||
lastName=d[lastNameKey],
|
||||
title=d[titleKey],
|
||||
) # Create new Lecturer entry
|
||||
entry.save()
|
||||
except FileNotFoundError as e:
|
||||
JsonParser.exceptionMessages.append(
|
||||
"Exception of type [FileNotFound]. Message: " + str(e)
|
||||
)
|
||||
except KeyError as e:
|
||||
calling_function = inspect.stack()[0][3]
|
||||
iteration_number = data["array"].index(d)
|
||||
template = "Exception of type [{0}] occurred in function {1} in iteration {2} of the loop.. Arguments: {3!r}. Message: [{4}] entry might be missing in {5!r}"
|
||||
message = template.format(
|
||||
type(e).__name__,
|
||||
calling_function,
|
||||
iteration_number,
|
||||
e.args,
|
||||
e,
|
||||
PP_TEACHER_FILE,
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
except Exception as e:
|
||||
calling_function = inspect.stack()[0][3]
|
||||
template = "Exception of type [{0}] occurred in function {1} in iteration {2} of the loop. Arguments: {3!r}. Message: {4}."
|
||||
message = template.format(
|
||||
type(e).__name__,
|
||||
calling_function,
|
||||
iteration_number,
|
||||
e.args,
|
||||
e.__str__(),
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
|
||||
def fillAttendanceTable(self):
|
||||
idKey = "dozentenkennung"
|
||||
yearKey = "jahr"
|
||||
monthKey = "monat"
|
||||
dayKey = "tag"
|
||||
hourKey = "stunde"
|
||||
minuteKey = "minute"
|
||||
weekdayKey = "wochentag"
|
||||
dateKey = "termin"
|
||||
|
||||
try:
|
||||
with open(PP_ATTENDANCE_FILE, encoding="utf-8") as json_file:
|
||||
data = json.load(json_file)
|
||||
revision = data["revision"] # TODO -> Do Something with Revision
|
||||
for d in data["array"]:
|
||||
|
||||
keyAvailable = "termin" in d
|
||||
if (
|
||||
not keyAvailable
|
||||
): # These attendance entries were not assigned any examination date
|
||||
template = "Warning. Location: {0!r}. Following Exam was not assigned any examination date ['termin']: [{1}]"
|
||||
message = template.format(PP_EXAM_FILE, d[idKey])
|
||||
JsonParser.warningMessages.append(message)
|
||||
continue
|
||||
|
||||
date = datetime.date(
|
||||
d[dateKey][yearKey], d[dateKey][monthKey], d[dateKey][dayKey]
|
||||
)
|
||||
time = datetime.time(d[dateKey][hourKey], d[dateKey][minuteKey])
|
||||
|
||||
entry = Attendance(
|
||||
identification=d[idKey],
|
||||
time=time,
|
||||
date=date,
|
||||
dateTimeText=d[dateKey]["datumText"],
|
||||
weekday=d[dateKey]["wochentag"],
|
||||
) # Create new Lecturer entry
|
||||
entry.save()
|
||||
|
||||
try:
|
||||
# Get the Lecturer with the "Dozentenkennung" of this attendance entry
|
||||
lecturer = Lecturer.objects.get(identification=d[idKey])
|
||||
|
||||
# Link this attendance entry to the lecturer
|
||||
lecturer.attendance_set.add(entry)
|
||||
except Exception as e:
|
||||
template = "Exception of type [{0}]. Arguments: {1!r}. Message: [{2}] entry might be missing in {3!r}"
|
||||
message = template.format(
|
||||
type(e).__name__, e.args, idKey, PP_TEACHER_FILE
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
|
||||
except FileNotFoundError as e:
|
||||
JsonParser.exceptionMessages.append(
|
||||
"Exception of type [FileNotFound]. Message: " + str(e)
|
||||
)
|
||||
except KeyError as e:
|
||||
calling_function = inspect.stack()[0][3]
|
||||
iteration_number = data["array"].index(d)
|
||||
template = "Exception of type [{0}] occurred in function {1} in iteration {2} of the loop.. Arguments: {3!r}. Message: [{4}] entry might be missing in {5!r}"
|
||||
message = template.format(
|
||||
type(e).__name__,
|
||||
calling_function,
|
||||
iteration_number,
|
||||
e.args,
|
||||
e,
|
||||
PP_ATTENDANCE_FILE,
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
except Exception as e:
|
||||
calling_function = inspect.stack()[0][3]
|
||||
iteration_number = data["array"].index(d)
|
||||
template = "Exception of type [{0}] occurred in function {1} in iteration {2} of the loop. Arguments: {3!r}. Message: {4}."
|
||||
message = template.format(
|
||||
type(e).__name__,
|
||||
calling_function,
|
||||
iteration_number,
|
||||
e.args,
|
||||
e.__str__(),
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
|
||||
def fillSubjectTable(self):
|
||||
idKey = "kennung"
|
||||
initialsKey = "kurztext"
|
||||
nameKey = "langtext"
|
||||
ohmIdKey = "fachkennungOhm"
|
||||
|
||||
try:
|
||||
with open(PP_SUBJECT_FILE, encoding="utf-8") as json_file:
|
||||
data = json.load(json_file)
|
||||
revision = data["revision"] # TODO -> Do Something with Revision
|
||||
for d in data["array"]:
|
||||
|
||||
entry = Subject(
|
||||
identification=d[idKey],
|
||||
initials=d[ohmIdKey][initialsKey],
|
||||
name=d[ohmIdKey][nameKey],
|
||||
) # Create new Subject entry
|
||||
entry.save()
|
||||
|
||||
except FileNotFoundError as e:
|
||||
JsonParser.exceptionMessages.append(
|
||||
"Exception of type [FileNotFound]. Message:" + str(e)
|
||||
)
|
||||
except KeyError as e:
|
||||
calling_function = inspect.stack()[0][3]
|
||||
iteration_number = data["array"].index(d)
|
||||
template = "Exception of type [{0}] occurred in function {1} in iteration {2} of the loop.. Arguments: {3!r}. Message: [{4}] entry might be missing in {5!r}"
|
||||
message = template.format(
|
||||
type(e).__name__,
|
||||
calling_function,
|
||||
iteration_number,
|
||||
e.args,
|
||||
e,
|
||||
PP_SUBJECT_FILE,
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
except Exception as e:
|
||||
calling_function = inspect.stack()[0][3]
|
||||
iteration_number = data["array"].index(d)
|
||||
template = "Exception of type [{0}] occurred in function {1} in iteration {2} of the loop. Arguments: {3!r}. Message: {4}."
|
||||
message = template.format(
|
||||
type(e).__name__,
|
||||
calling_function,
|
||||
iteration_number,
|
||||
e.args,
|
||||
e.__str__(),
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
|
||||
def fillExamTable(self):
|
||||
idKey = "kennung"
|
||||
yearKey = "jahr"
|
||||
monthKey = "monat"
|
||||
dayKey = "tag"
|
||||
hourKey = "stunde"
|
||||
minuteKey = "minute"
|
||||
weekdayKey = "wochentag"
|
||||
dateKey = "termin"
|
||||
partialExamsKey = "teilpruefungen"
|
||||
partialExamIdKey = "kennung"
|
||||
numRegStudKey = "anzahlAnmeldungen"
|
||||
subjectIdsKey = "fachkennungen"
|
||||
examExecutionsKey = "pruefungsdurchfuehrungen"
|
||||
lecturerIdKey = "dozentenkennung"
|
||||
supervisorTypeKey = "typ"
|
||||
locationKey = "raum"
|
||||
|
||||
try:
|
||||
with open(PP_EXAM_FILE, encoding="utf-8") as json_file:
|
||||
data = json.load(json_file)
|
||||
revision = data["revision"] # TODO -> Do Something with Revision
|
||||
for d in data["array"]:
|
||||
|
||||
if (
|
||||
d["pruefungsart"] == "LN_VORGEZOGEN"
|
||||
): # These entries can be ignored
|
||||
continue
|
||||
|
||||
keyAvailable = "termin" in d
|
||||
if (
|
||||
not keyAvailable
|
||||
): # These exam entries were not assigned any examination date
|
||||
template = "Warning. Location: {0!r}. Following Exam was not assigned any examination date ['termin']: [{1}]"
|
||||
message = template.format(PP_EXAM_FILE, d[idKey])
|
||||
JsonParser.warningMessages.append(message)
|
||||
continue
|
||||
|
||||
date = datetime.date(
|
||||
d[dateKey][yearKey], d[dateKey][monthKey], d[dateKey][dayKey]
|
||||
)
|
||||
time = datetime.time(d[dateKey][hourKey], d[dateKey][minuteKey])
|
||||
|
||||
examEntry = Exam(
|
||||
identification=d[idKey],
|
||||
date=date,
|
||||
time=time,
|
||||
weekday=d[dateKey][weekdayKey],
|
||||
) # Create new Exam entry
|
||||
examEntry.save()
|
||||
|
||||
for teilpruef in d[partialExamsKey]:
|
||||
partialExamId = teilpruef[partialExamIdKey]
|
||||
regStudCount = teilpruef[numRegStudKey]
|
||||
|
||||
partialExam = PartialExam(
|
||||
identification=partialExamId, regStudCount=regStudCount
|
||||
) # Create new Partialexam entry
|
||||
partialExam.save()
|
||||
|
||||
examEntry.partialexam_set.add(
|
||||
partialExam
|
||||
) # Add connection Exam(One) to PartialExam(Many)
|
||||
|
||||
for subId in teilpruef[subjectIdsKey]:
|
||||
# check if subject exists
|
||||
try:
|
||||
subject = Subject.objects.get(identification=subId)
|
||||
partialExam.subjectIds.add(
|
||||
subject
|
||||
) # Add connection PartialExam(Many) to Subject(Many)
|
||||
except Exception as e:
|
||||
template = "Exception of type [{0}]. Arguments: {1!r}. Message: [{2}] entry might be missing in {3!r}"
|
||||
message = template.format(
|
||||
type(e).__name__, e.args, subId, PP_SUBJECT_FILE
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
|
||||
for pruefdurch in teilpruef[examExecutionsKey]:
|
||||
lecId = pruefdurch[lecturerIdKey]
|
||||
supervisorType = pruefdurch[supervisorTypeKey]
|
||||
location = pruefdurch[locationKey]
|
||||
|
||||
examExecution = ExamExecution(
|
||||
supervisorType=supervisorType, location=location
|
||||
) # Create new ExamExecution entry
|
||||
examExecution.save()
|
||||
|
||||
# check if lecturer exists
|
||||
try:
|
||||
lecturer = Lecturer.objects.get(pk=lecId)
|
||||
lecturer.examexecution_set.add(
|
||||
examExecution
|
||||
) # Add connection Lecturer (One) to ExamExecution (Many)
|
||||
except Exception as e:
|
||||
template = "Exception of type [{0}]. Arguments: {1!r}. Message: [{2}] entry might be missing in {3!r}"
|
||||
message = template.format(
|
||||
type(e).__name__, e.args, lecId, PP_TEACHER_FILE
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
|
||||
for subId in pruefdurch[subjectIdsKey]:
|
||||
# check if subject exists
|
||||
try:
|
||||
subject = Subject.objects.get(identification=subId)
|
||||
examExecution.subjectIds.add(
|
||||
subject
|
||||
) # Add connection ExamExecution(Many) to Subject(Many)
|
||||
except Exception as e:
|
||||
template = "Exception of type [{0}]. Arguments: {1!r}. Message: [{2}] entry might be missing in {3!r}"
|
||||
message = template.format(
|
||||
type(e).__name__, e.args, subId, PP_SUBJECT_FILE
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
|
||||
partialExam.examexecution_set.add(
|
||||
examExecution
|
||||
) # Add connection PartialExam(One) to ExamExecution(Many)
|
||||
except FileNotFoundError as e:
|
||||
JsonParser.exceptionMessages.append(
|
||||
"Exception of type [FileNotFound]. Message" + str(e)
|
||||
)
|
||||
except KeyError as e:
|
||||
calling_function = inspect.stack()[0][3]
|
||||
iteration_number = data["array"].index(d)
|
||||
template = "Exception of type [{0}] occurred in function {1} in iteration {2} of the loop.. Arguments: {3!r}. Message: [{4}] entry might be missing in {5!r}"
|
||||
message = template.format(
|
||||
type(e).__name__,
|
||||
calling_function,
|
||||
iteration_number,
|
||||
e.args,
|
||||
e,
|
||||
PP_EXAM_FILE,
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
except Exception as e:
|
||||
calling_function = inspect.stack()[0][3]
|
||||
iteration_number = data["array"].index(d)
|
||||
template = "Exception of type [{0}] occurred in function {1} in iteration {2} of the loop. Arguments: {3!r}. Message: {4}."
|
||||
message = template.format(
|
||||
type(e).__name__,
|
||||
calling_function,
|
||||
iteration_number,
|
||||
e.args,
|
||||
e.__str__(),
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
|
||||
def fillStudentExamTable(self):
|
||||
idKey = "kennungPruefung"
|
||||
yearKey = "jahr"
|
||||
monthKey = "monat"
|
||||
dayKey = "tag"
|
||||
hourKey = "stunde"
|
||||
minuteKey = "minute"
|
||||
weekdayKey = "wochentag"
|
||||
locationKey = "raum"
|
||||
dateKey = "termin"
|
||||
matrikelKey = "matrikel"
|
||||
|
||||
try:
|
||||
with open(PP_STUDENT_FILE, encoding="utf-8") as json_file:
|
||||
data = json.load(json_file)
|
||||
revision = data["revision"] # TODO -> Do Something with Revision
|
||||
for d in data["array"]:
|
||||
|
||||
date = datetime.date(
|
||||
d[dateKey][yearKey], d[dateKey][monthKey], d[dateKey][dayKey]
|
||||
)
|
||||
time = datetime.time(d[dateKey][hourKey], d[dateKey][minuteKey])
|
||||
|
||||
exam = Exam.objects.filter(
|
||||
identification=d[idKey], date=date, time=time
|
||||
).first()
|
||||
|
||||
partialExams = exam.partialexam_set.all()
|
||||
for partialExam in partialExams:
|
||||
examExecutions = partialExam.examexecution_set.all()
|
||||
for examExecution in examExecutions:
|
||||
if examExecution.location == d[locationKey]:
|
||||
studentExamEntry = StudentExam(
|
||||
examIdentification=d[idKey],
|
||||
date=date,
|
||||
time=time,
|
||||
weekday=d[dateKey][weekdayKey],
|
||||
location=d[locationKey],
|
||||
examExecution=examExecution,
|
||||
) # Create new StudentExam entry
|
||||
studentExamEntry.save()
|
||||
|
||||
for matrikel in d[matrikelKey]:
|
||||
studentEntry = Student.objects.filter(
|
||||
matrikel=matrikel
|
||||
).exists()
|
||||
if (
|
||||
studentEntry is False
|
||||
): # Create new Student entry if does not already exists
|
||||
entry = Student(matrikel=matrikel)
|
||||
entry.save()
|
||||
else:
|
||||
entry = (
|
||||
Student.objects.all().filter(matrikel=matrikel).first()
|
||||
)
|
||||
entry.exams.add(studentExamEntry)
|
||||
except FileNotFoundError as e:
|
||||
JsonParser.exceptionMessages.append(
|
||||
"Exception of type [FileNotFound]. Message:" + str(e)
|
||||
)
|
||||
except KeyError as e:
|
||||
calling_function = inspect.stack()[0][3]
|
||||
iteration_number = data["array"].index(d)
|
||||
template = "Exception of type [{0}] occurred in function {1} in iteration {2} of the loop.. Arguments: {3!r}. Message: [{4}] entry might be missing in {5!r}"
|
||||
message = template.format(
|
||||
type(e).__name__,
|
||||
calling_function,
|
||||
iteration_number,
|
||||
e.args,
|
||||
e,
|
||||
PP_STUDENT_FILE,
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
except Exception as e:
|
||||
calling_function = inspect.stack()[0][3]
|
||||
iteration_number = data["array"].index(d)
|
||||
template = "Exception of type [{0}] occurred in function {1} in iteration {2} of the loop. Arguments: {3!r}. Message: {4}."
|
||||
message = template.format(
|
||||
type(e).__name__,
|
||||
calling_function,
|
||||
iteration_number,
|
||||
e.args,
|
||||
e.__str__(),
|
||||
)
|
||||
JsonParser.exceptionMessages.append(message)
|
||||
@@ -0,0 +1,10 @@
|
||||
from django.urls import path
|
||||
from . import views
|
||||
|
||||
app_name = 'pp_parser'
|
||||
|
||||
urlpatterns = [
|
||||
path('parse', views.parse, name='parse'),
|
||||
path('clearTable', views.clearTable, name='clearTable'),
|
||||
path('upload_file', views.upload_file, name='upload_file'),
|
||||
]
|
||||
@@ -0,0 +1,7 @@
|
||||
|
||||
|
||||
def handle_uploaded_file(f, location):
|
||||
if f is not None:
|
||||
with open(location, 'wb+') as destination:
|
||||
for chunk in f.chunks():
|
||||
destination.write(chunk)
|
||||
@@ -0,0 +1,65 @@
|
||||
from django.shortcuts import render
|
||||
from .models import JsonParser
|
||||
from pruefplan_parser.models import JsonParser
|
||||
from django.shortcuts import render
|
||||
from django.contrib.auth.decorators import user_passes_test
|
||||
from .forms import UploadFileForm
|
||||
from pruefplan_parser.utils import handle_uploaded_file
|
||||
from medinf.settings import (
|
||||
PP_EXAM_FILE,
|
||||
PP_ATTENDANCE_FILE,
|
||||
PP_STUDENT_FILE,
|
||||
PP_SUBJECT_FILE,
|
||||
PP_TEACHER_FILE,
|
||||
)
|
||||
|
||||
|
||||
def is_pp_admin(user):
|
||||
return user.groups.filter(name="PP_ADMIN").exists()
|
||||
|
||||
|
||||
def parse():
|
||||
parser = JsonParser()
|
||||
parser.clearTable()
|
||||
parser.fillLecturerTable()
|
||||
parser.fillAttendanceTable()
|
||||
parser.fillSubjectTable()
|
||||
parser.fillExamTable()
|
||||
parser.fillStudentExamTable()
|
||||
|
||||
|
||||
@user_passes_test(is_pp_admin)
|
||||
def clearTable(request):
|
||||
parser = JsonParser()
|
||||
parser.clearTable()
|
||||
return render(request, "pruefplan/clearTable.html")
|
||||
|
||||
|
||||
@user_passes_test(is_pp_admin)
|
||||
def upload_file(request):
|
||||
if request.method == "POST":
|
||||
form = UploadFileForm(request.POST, request.FILES)
|
||||
if form.is_valid():
|
||||
print(request.FILES)
|
||||
handle_uploaded_file(
|
||||
request.FILES.get("attendance_file"), PP_ATTENDANCE_FILE
|
||||
)
|
||||
handle_uploaded_file(request.FILES.get("student_file"), PP_STUDENT_FILE)
|
||||
handle_uploaded_file(request.FILES.get("exams_file"), PP_EXAM_FILE)
|
||||
handle_uploaded_file(request.FILES.get("lecturers_file"), PP_TEACHER_FILE)
|
||||
handle_uploaded_file(request.FILES.get("subjects_file"), PP_SUBJECT_FILE)
|
||||
parse()
|
||||
if (
|
||||
len(JsonParser.exceptionMessages) != 0
|
||||
or len(JsonParser.warningMessages) != 0
|
||||
):
|
||||
context = {
|
||||
"exceptions": JsonParser.exceptionMessages,
|
||||
"warnings": JsonParser.warningMessages,
|
||||
}
|
||||
return render(request, "pruefplan/exceptionHandling.html", context)
|
||||
else:
|
||||
return render(request, "pruefplan/parse.html")
|
||||
else:
|
||||
form = UploadFileForm()
|
||||
return render(request, "pruefplan/upload.html", {"form": form})
|
||||
Reference in New Issue
Block a user