mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 20:29:29 +00:00
Merge branch 'feature-18887/Datenverbund_Clearing_und_Community_Changes'
This commit is contained in:
@@ -27,35 +27,36 @@ class studiengang extends basis_db
|
||||
public $new; // boolean
|
||||
public $result = array(); // studiengang Objekt
|
||||
|
||||
public $studiengang_kz; // integer
|
||||
public $kurzbz; // varchar(5)
|
||||
public $kurzbzlang; // varchar(10)
|
||||
public $bezeichnung; // varchar(128)
|
||||
public $english; // varchar(128)
|
||||
public $typ; // char(1)
|
||||
public $farbe; // char(6)
|
||||
public $email; // varchar(64)
|
||||
public $max_semester; // smallint
|
||||
public $max_verband; // char(1)
|
||||
public $max_gruppe; // char(1)
|
||||
public $erhalter_kz; // smallint
|
||||
public $bescheid; // varchar(256)
|
||||
public $bescheidbgbl1; // varchar(16)
|
||||
public $bescheidbgbl2; // varchar(16)
|
||||
public $bescheidgz; // varchar(16)
|
||||
public $bescheidvom; // Date
|
||||
public $titelbescheidvom; // Date
|
||||
public $ext_id; // bigint
|
||||
public $orgform_kurzbz; // varchar(3)
|
||||
public $zusatzinfo_html; // text
|
||||
public $sprache; // varchar(16)
|
||||
public $testtool_sprachwahl;// boolean
|
||||
public $studienplaetze; // smallint
|
||||
public $oe_kurzbz; // varchar(32)
|
||||
public $onlinebewerbung; // boolean
|
||||
public $melderelevant; // boolean
|
||||
public $foerderrelevant; // boolean
|
||||
public $standort_code; // integer
|
||||
public $studiengang_kz; // integer
|
||||
public $kurzbz; // varchar(5)
|
||||
public $kurzbzlang; // varchar(10)
|
||||
public $bezeichnung; // varchar(128)
|
||||
public $english; // varchar(128)
|
||||
public $typ; // char(1)
|
||||
public $farbe; // char(6)
|
||||
public $email; // varchar(64)
|
||||
public $max_semester; // smallint
|
||||
public $max_verband; // char(1)
|
||||
public $max_gruppe; // char(1)
|
||||
public $erhalter_kz; // smallint
|
||||
public $bescheid; // varchar(256)
|
||||
public $bescheidbgbl1; // varchar(16)
|
||||
public $bescheidbgbl2; // varchar(16)
|
||||
public $bescheidgz; // varchar(16)
|
||||
public $bescheidvom; // Date
|
||||
public $titelbescheidvom; // Date
|
||||
public $ext_id; // bigint
|
||||
public $orgform_kurzbz; // varchar(3)
|
||||
public $zusatzinfo_html; // text
|
||||
public $sprache; // varchar(16)
|
||||
public $testtool_sprachwahl; // boolean
|
||||
public $studienplaetze; // smallint
|
||||
public $oe_kurzbz; // varchar(32)
|
||||
public $onlinebewerbung; // boolean
|
||||
public $melderelevant; // boolean
|
||||
public $foerderrelevant; // boolean
|
||||
public $standort_code; // integer
|
||||
public $melde_studiengang_kz; // varchar(32)
|
||||
|
||||
public $kuerzel; // = typ + kurzbz (Bsp: BBE)
|
||||
public $kuerzel_arr = array(); // Array mit allen Kurzeln Index=studiengangs_kz
|
||||
@@ -134,6 +135,7 @@ class studiengang extends basis_db
|
||||
$this->melderelevant = $this->db_parse_bool($row->melderelevant);
|
||||
$this->foerderrelevant = $this->db_parse_bool($row->foerderrelevant);
|
||||
$this->standort_code = $row->standort_code;
|
||||
$this->melde_studiengang_kz = $row->melde_studiengang_kz;
|
||||
|
||||
$this->bezeichnung_arr['German'] = $this->bezeichnung;
|
||||
$this->bezeichnung_arr['English'] = $this->english;
|
||||
@@ -210,6 +212,7 @@ class studiengang extends basis_db
|
||||
$stg_obj->melderelevant = $this->db_parse_bool($row->melderelevant);
|
||||
$stg_obj->foerderrelevant = $this->db_parse_bool($row->foerderrelevant);
|
||||
$stg_obj->standort_code = $row->standort_code;
|
||||
$stg_obj->melde_studiengang_kz = $row->melde_studiengang_kz;
|
||||
|
||||
$stg_obj->bezeichnung_arr['German'] = $row->bezeichnung;
|
||||
$stg_obj->bezeichnung_arr['English'] = $row->english;
|
||||
@@ -431,6 +434,7 @@ class studiengang extends basis_db
|
||||
$stg_obj->melderelevant = $this->db_parse_bool($row->melderelevant);
|
||||
$stg_obj->foerderrelevant = $this->db_parse_bool($row->foerderrelevant);
|
||||
$stg_obj->standort_code = $row->standort_code;
|
||||
$stg_obj->melde_studiengang_kz = $row->melde_studiengang_kz;
|
||||
|
||||
$stg_obj->bezeichnung_arr['German'] = $row->bezeichnung;
|
||||
$stg_obj->bezeichnung_arr['English'] = $row->english;
|
||||
@@ -474,6 +478,11 @@ class studiengang extends basis_db
|
||||
$this->errormsg = 'studiengang_kz ungueltig!';
|
||||
return false;
|
||||
}
|
||||
if(isset($this->melde_studiengang_kz) && $this->melde_studiengang_kz != '' && !is_numeric($this->melde_studiengang_kz))
|
||||
{
|
||||
$this->errormsg = 'melde_studiengang_kz ungueltig!';
|
||||
return false;
|
||||
}
|
||||
$this->errormsg = '';
|
||||
return true;
|
||||
}
|
||||
@@ -501,7 +510,7 @@ class studiengang extends basis_db
|
||||
typ, farbe, email, telefon, max_verband, max_semester, max_gruppe, erhalter_kz, bescheid, bescheidbgbl1,
|
||||
bescheidbgbl2, bescheidgz, bescheidvom, titelbescheidvom, aktiv, onlinebewerbung, orgform_kurzbz, zusatzinfo_html,
|
||||
oe_kurzbz, moodle, sprache, testtool_sprachwahl, studienplaetze, lgartcode, mischform,projektarbeit_note_anzeige,
|
||||
melderelevant, foerderrelevant, standort_code) VALUES ('.
|
||||
melderelevant, foerderrelevant, standort_code, melde_studiengang_kz) VALUES ('.
|
||||
$this->db_add_param($this->studiengang_kz, FHC_INTEGER).', '.
|
||||
$this->db_add_param($this->kurzbz).', '.
|
||||
$this->db_add_param($this->kurzbzlang).', '.
|
||||
@@ -535,7 +544,8 @@ class studiengang extends basis_db
|
||||
$this->db_add_param($this->projektarbeit_note_anzeige, FHC_BOOLEAN).','.
|
||||
$this->db_add_param($this->melderelevant, FHC_BOOLEAN).','.
|
||||
$this->db_add_param($this->foerderrelevant, FHC_BOOLEAN).','.
|
||||
$this->db_add_param($this->standort_code).');';
|
||||
$this->db_add_param($this->standort_code).','.
|
||||
$this->db_add_param($this->melde_studiengang_kz).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -575,7 +585,8 @@ class studiengang extends basis_db
|
||||
'mischform='.$this->db_add_param($this->mischform, FHC_BOOLEAN).', '.
|
||||
'melderelevant='.$this->db_add_param($this->melderelevant, FHC_BOOLEAN).', '.
|
||||
'foerderrelevant='.$this->db_add_param($this->foerderrelevant, FHC_BOOLEAN).', '.
|
||||
'standort_code='.$this->db_add_param($this->standort_code).' '.
|
||||
'standort_code='.$this->db_add_param($this->standort_code).', '.
|
||||
'melde_studiengang_kz='.$this->db_add_param($this->melde_studiengang_kz).' '.
|
||||
'WHERE studiengang_kz='.$this->db_add_param($this->studiengang_kz, FHC_INTEGER, false).';';
|
||||
}
|
||||
|
||||
@@ -701,6 +712,7 @@ class studiengang extends basis_db
|
||||
$this->melderelevant = $this->db_parse_bool($row->melderelevant);
|
||||
$this->foerderrelevant = $this->db_parse_bool($row->foerderrelevant);
|
||||
$this->standort_code = $row->standort_code;
|
||||
$this->melde_studiengang_kz = $row->melde_studiengang_kz;
|
||||
$this->projektarbeit_note_anzeige = $this->db_parse_bool($row->projektarbeit_note_anzeige);
|
||||
|
||||
$this->bezeichnung_arr['German'] = $this->bezeichnung;
|
||||
@@ -844,6 +856,7 @@ class studiengang extends basis_db
|
||||
$obj->melderelevant = $this->db_parse_bool($row->melderelevant);
|
||||
$obj->foerderrelevant = $this->db_parse_bool($row->foerderrelevant);
|
||||
$obj->standort_code = $row->standort_code;
|
||||
$obj->melde_studiengang_kz = $row->melde_studiengang_kz;
|
||||
$obj->aktiv = $this->db_parse_bool($row->aktiv);
|
||||
|
||||
$this->result[] = $obj;
|
||||
@@ -1024,6 +1037,7 @@ class studiengang extends basis_db
|
||||
$obj->melderelevant = $this->db_parse_bool($row->melderelevant);
|
||||
$obj->foerderrelevant = $this->db_parse_bool($row->foerderrelevant);
|
||||
$obj->standort_code = $row->standort_code;
|
||||
$obj->melde_studiengang_kz = $row->melde_studiengang_kz;
|
||||
|
||||
$obj->bezeichnung_arr['German'] = $obj->bezeichnung;
|
||||
$obj->bezeichnung_arr['English'] = $obj->english;
|
||||
@@ -1161,6 +1175,7 @@ class studiengang extends basis_db
|
||||
$obj->melderelevant = $this->db_parse_bool($row->melderelevant);
|
||||
$obj->foerderrelevant = $this->db_parse_bool($row->foerderrelevant);
|
||||
$obj->standort_code = $row->standort_code;
|
||||
$obj->melde_studiengang_kz = $row->melde_studiengang_kz;
|
||||
|
||||
$obj->bezeichnung_arr['German'] = $obj->bezeichnung;
|
||||
$obj->bezeichnung_arr['English'] = $obj->english;
|
||||
|
||||
+29
-1
@@ -6126,6 +6126,33 @@ if ($result = $db->db_query("SELECT * FROM pg_class WHERE relname='idx_webservic
|
||||
}
|
||||
}
|
||||
|
||||
// Add column melde_studiengang_kz to public.tbl_studiengang and prefill values
|
||||
if (!$result = @$db->db_query("SELECT melde_studiengang_kz FROM public.tbl_studiengang LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_studiengang ADD COLUMN melde_studiengang_kz varchar(32);
|
||||
UPDATE public.tbl_studiengang stg SET melde_studiengang_kz = (SELECT lpad(abs(studiengang_kz)::text, 4, '0') FROM tbl_studiengang WHERE studiengang_kz = stg.studiengang_kz) WHERE melderelevant AND lgartcode IS NULL;
|
||||
UPDATE public.tbl_studiengang stg SET melde_studiengang_kz = (SELECT (SELECT lpad(erhalter_kz::text, 3, '0') FROM public.tbl_erhalter) || lpad(abs(studiengang_kz)::text, 4, '0') FROM tbl_studiengang WHERE studiengang_kz = stg.studiengang_kz) WHERE melderelevant AND lgartcode IS NOT NULL;
|
||||
COMMENT ON COLUMN public.tbl_studiengang.melde_studiengang_kz IS 'Studiengangskennzahl, mit der der Studiengang gemeldet wird (z.B. Bismeldung)'";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_studiengang: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>public.tbl_studiengang: Neue Spalte melde_studiengang_kz hinzugefuegt.';
|
||||
}
|
||||
|
||||
// Add permission for calling certain APIs in Datenverbund extension
|
||||
if($result = @$db->db_query("SELECT 1 FROM system.tbl_berechtigung WHERE berechtigung_kurzbz = 'extension/dvuh_gui_ekz_anfordern';"))
|
||||
{
|
||||
if($db->db_num_rows($result) == 0)
|
||||
{
|
||||
$qry = "INSERT INTO system.tbl_berechtigung(berechtigung_kurzbz, beschreibung) VALUES('extension/dvuh_gui_ekz_anfordern', 'Berechtigung für Abfage des Ersatzkennzeichens in der Datenverbund GUI');";
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>system.tbl_berechtigung '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>system.tbl_berechtigung: Added permission for extension/dvuh_gui_ekz_anfordern';
|
||||
}
|
||||
}
|
||||
|
||||
// ADD COLUMN insertamum to system.tbl_fehler_zustaendigkeiten
|
||||
if(!@$db->db_query("SELECT insertamum FROM system.tbl_fehler_zustaendigkeiten LIMIT 1"))
|
||||
{
|
||||
@@ -6241,6 +6268,7 @@ if($result = @$db->db_query("SELECT 1 FROM system.tbl_berechtigung WHERE berecht
|
||||
echo '<strong>system.tbl_berechtigung '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo 'system.tbl_berechtigung: Added permission for student/keine_studstatuspruefung<br>';
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6479,7 +6507,7 @@ $tabellen=array(
|
||||
"public.tbl_statistik" => array("statistik_kurzbz","bezeichnung","url","gruppe","sql","content_id","insertamum","insertvon","updateamum","updatevon","berechtigung_kurzbz","publish","preferences"),
|
||||
"public.tbl_student" => array("student_uid","matrikelnr","prestudent_id","studiengang_kz","semester","verband","gruppe","updateamum","updatevon","insertamum","insertvon","ext_id"),
|
||||
"public.tbl_studentlehrverband" => array("student_uid","studiensemester_kurzbz","studiengang_kz","semester","verband","gruppe","updateamum","updatevon","insertamum","insertvon","ext_id"),
|
||||
"public.tbl_studiengang" => array("studiengang_kz","kurzbz","kurzbzlang","typ","bezeichnung","english","farbe","email","telefon","max_semester","max_verband","max_gruppe","erhalter_kz","bescheid","bescheidbgbl1","bescheidbgbl2","bescheidgz","bescheidvom","orgform_kurzbz","titelbescheidvom","aktiv","ext_id","zusatzinfo_html","moodle","sprache","testtool_sprachwahl","studienplaetze","oe_kurzbz","lgartcode","mischform","projektarbeit_note_anzeige", "onlinebewerbung","melderelevant","foerderrelevant","standort_code"),
|
||||
"public.tbl_studiengang" => array("studiengang_kz","kurzbz","kurzbzlang","typ","bezeichnung","english","farbe","email","telefon","max_semester","max_verband","max_gruppe","erhalter_kz","bescheid","bescheidbgbl1","bescheidbgbl2","bescheidgz","bescheidvom","orgform_kurzbz","titelbescheidvom","aktiv","ext_id","zusatzinfo_html","moodle","sprache","testtool_sprachwahl","studienplaetze","oe_kurzbz","lgartcode","mischform","projektarbeit_note_anzeige", "onlinebewerbung","melderelevant","foerderrelevant","standort_code","melde_studiengang_kz"),
|
||||
"public.tbl_studiengangstyp" => array("typ","bezeichnung","beschreibung","bezeichnung_mehrsprachig"),
|
||||
"public.tbl_studienjahr" => array("studienjahr_kurzbz","bezeichnung"),
|
||||
"public.tbl_studiensemester" => array("studiensemester_kurzbz","bezeichnung","start","ende","studienjahr_kurzbz","ext_id","beschreibung","onlinebewerbung"),
|
||||
|
||||
@@ -304,7 +304,9 @@ elseif ($stg_kz == 'alleBaMa')
|
||||
JOIN public.tbl_studiengang ON (tbl_studiengang.studiengang_kz=tbl_student.studiengang_kz)
|
||||
WHERE
|
||||
bismelden=TRUE
|
||||
AND tbl_studiengang.typ IN ('b','m')
|
||||
AND tbl_studiengang.typ IN ('b','m','e')
|
||||
AND tbl_studiengang.melderelevant=TRUE
|
||||
AND tbl_studiengang.studiengang_kz > 0
|
||||
AND (((tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem).") AND (tbl_prestudentstatus.datum<=".$db->db_add_param($bisdatum).")
|
||||
AND (status_kurzbz='Student' OR status_kurzbz='Outgoing'
|
||||
OR status_kurzbz='Praktikant' OR status_kurzbz='Diplomand' OR status_kurzbz='Absolvent'
|
||||
|
||||
@@ -92,6 +92,7 @@ $lgartcode='';
|
||||
$melderelevant = false;
|
||||
$foerderrelevant = false;
|
||||
$standort_code='';
|
||||
$melde_studiengang_kz = '';
|
||||
$schick = filter_input(INPUT_POST, 'schick');
|
||||
$onlinebewerbung = false;
|
||||
|
||||
@@ -155,6 +156,7 @@ if($schick)
|
||||
$melderelevant = filter_input(INPUT_POST, 'melderelevant', FILTER_VALIDATE_BOOLEAN);
|
||||
$foerderrelevant = filter_input(INPUT_POST, 'foerderrelevant', FILTER_VALIDATE_BOOLEAN);
|
||||
$standort_code = filter_input(INPUT_POST, 'standort_code');
|
||||
$melde_studiengang_kz = filter_input(INPUT_POST, 'melde_studiengang_kz');
|
||||
|
||||
$ext_id = filter_input(INPUT_POST, 'ext_id');
|
||||
|
||||
@@ -223,6 +225,7 @@ if($schick)
|
||||
$sg_update->melderelevant = $melderelevant;
|
||||
$sg_update->foerderrelevant = $foerderrelevant;
|
||||
$sg_update->standort_code = $standort_code;
|
||||
$sg_update->melde_studiengang_kz = $melde_studiengang_kz;
|
||||
|
||||
$sg_update->bescheidvom=$date->formatDatum($sg_update->bescheidvom,'Y-m-d');
|
||||
$sg_update->titelbescheidvom=$date->formatDatum($sg_update->titelbescheidvom,'Y-m-d');
|
||||
@@ -292,6 +295,7 @@ if ((isset($_REQUEST['studiengang_kz'])) && ((!isset($_REQUEST['neu'])) || ($_RE
|
||||
$melderelevant = $sg->melderelevant;
|
||||
$foerderrelevant = $sg->foerderrelevant;
|
||||
$standort_code = $sg->standort_code;
|
||||
$melde_studiengang_kz = $sg->melde_studiengang_kz;
|
||||
}
|
||||
|
||||
$erh = new erhalter();
|
||||
@@ -611,6 +615,12 @@ if (!$erh->getAll('kurzbz'))
|
||||
</td>
|
||||
<td valign="top">
|
||||
<table>
|
||||
<tr>
|
||||
<td>Meldestudiengangskennzahl</td>
|
||||
<td>
|
||||
<input class="detail" type="text" name="melde_studiengang_kz" size="16" maxlength="7" value="<?php echo $melde_studiengang_kz ?>" onchange="submitable()">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Bezeichnung</td>
|
||||
<td>
|
||||
|
||||
Reference in New Issue
Block a user