mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-11 09:09:28 +00:00
Neue Spalte für LehrveranstaltungID bei Verträgen hinzugefügt um eine Verbindung zur LV bei Prüfungen zu haben
This commit is contained in:
@@ -2519,6 +2519,7 @@ function LehrveranstaltungNotenPruefungSave()
|
||||
req.add('bezeichnung', 'Pruefungshonorar '+lv_studiengang+' '+lv_semester+' '+lv_bezeichnung+' '+lehrveranstaltung_id);
|
||||
req.add('anmerkung', satz+'€ * '+anzahl);
|
||||
req.add('vertragsdatum', datum);
|
||||
req.add('lehrveranstaltung_id',lehrveranstaltung_id);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
|
||||
@@ -467,6 +467,8 @@ if(!$error)
|
||||
$vertrag->bezeichnung = $_POST['bezeichnung'];
|
||||
$vertrag->anmerkung = $_POST['anmerkung'];
|
||||
$vertrag->vertragsdatum = $_POST['vertragsdatum'];
|
||||
if(isset($_POST['lehrveranstaltung_id']))
|
||||
$vertrag->lehrveranstaltung_id = $_POST['lehrveranstaltung_id'];
|
||||
|
||||
if($errormsg=='')
|
||||
{
|
||||
@@ -548,7 +550,7 @@ if(!$error)
|
||||
// Retour Status setzen
|
||||
$vertrag->vertragsstatus_kurzbz = 'retour';
|
||||
$vertrag->datum = date('Y-m-d H:i:s');
|
||||
|
||||
|
||||
if(!$vertrag->saveVertragsstatus(true))
|
||||
$errormsg.=$vertrag->errormsg;
|
||||
}
|
||||
|
||||
@@ -39,6 +39,7 @@ class vertrag extends basis_db
|
||||
public $ext_id; // bigint
|
||||
public $anmerkung; // text
|
||||
public $vertragsdatum; // date
|
||||
public $lehrveranstaltung_id; // integer
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
@@ -63,6 +64,7 @@ class vertrag extends basis_db
|
||||
$this->person_id = $row->person_id;
|
||||
$this->anmerkung = $row->anmerkung;
|
||||
$this->vertragsdatum = $row->vertragsdatum;
|
||||
$this->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
|
||||
$this->new=false;
|
||||
|
||||
@@ -122,6 +124,7 @@ class vertrag extends basis_db
|
||||
$obj->status = $row->status;
|
||||
$obj->anmerkung = $row->anmerkung;
|
||||
$obj->vertragsdatum = $row->vertragsdatum;
|
||||
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
|
||||
|
||||
$obj->vertragstyp_bezeichnung = $row->vertragstyp_bezeichnung;
|
||||
|
||||
@@ -583,7 +586,7 @@ class vertrag extends basis_db
|
||||
if($new)
|
||||
{
|
||||
$qry = "BEGIN;INSERT INTO lehre.tbl_vertrag(bezeichnung, person_id, vertragstyp_kurzbz, betrag, insertamum, insertvon,
|
||||
updateamum, updatevon, anmerkung, vertragsdatum) VALUES(".
|
||||
updateamum, updatevon, anmerkung, vertragsdatum,lehrveranstaltung_id) VALUES(".
|
||||
$this->db_add_param($this->bezeichnung).','.
|
||||
$this->db_add_param($this->person_id,FHC_INTEGER).','.
|
||||
$this->db_add_param($this->vertragstyp_kurzbz).','.
|
||||
@@ -593,7 +596,8 @@ class vertrag extends basis_db
|
||||
$this->db_add_param($this->updateamum).','.
|
||||
$this->db_add_param($this->updatevon).','.
|
||||
$this->db_add_param($this->anmerkung).','.
|
||||
$this->db_add_param($this->vertragsdatum).');';
|
||||
$this->db_add_param($this->vertragsdatum).','.
|
||||
$this->db_add_param($this->lehrveranstaltung_id).');';
|
||||
|
||||
}
|
||||
else
|
||||
@@ -606,7 +610,8 @@ class vertrag extends basis_db
|
||||
" updateamum=".$this->db_add_param($this->updateamum).','.
|
||||
" updatevon=".$this->db_add_param($this->updatevon).','.
|
||||
" anmerkung=".$this->db_add_param($this->anmerkung).','.
|
||||
" vertragsdatum=".$this->db_add_param($this->vertragsdatum).
|
||||
" vertragsdatum=".$this->db_add_param($this->vertragsdatum).','.
|
||||
" lehrveranstaltung_id=".$this->db_add_param($this->lehrveranstaltung_id).
|
||||
" WHERE vertrag_id=".$this->db_add_param($this->vertrag_id, FHC_INTEGER,false);
|
||||
}
|
||||
|
||||
@@ -874,5 +879,87 @@ class vertrag extends basis_db
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Liefert die Vertraege zu einem Datum
|
||||
*
|
||||
*/
|
||||
public function getVertragFromDatum($mitarbeiter_uid, $datum)
|
||||
{
|
||||
// Studiensemester zu Datum ermitteln
|
||||
$stsem_obj = new studiensemester();
|
||||
$stsem = $stsem_obj->getSemesterFromDatum($datum);
|
||||
|
||||
// Vorheriges Studiensemester
|
||||
$prev = $stsem_obj->getPreviousFrom($stsem);
|
||||
$stsem_obj->load($prev);
|
||||
$prevstsemende = $stsem_obj->ende;
|
||||
|
||||
// Alle Vertraege holen die in das Studiensemester fallen
|
||||
// (Lehreinheiten und Betreuungen)
|
||||
// plus Sonderhonorare die in diesem Zeitraum angelegt wurden
|
||||
$qry = "SELECT
|
||||
*
|
||||
FROM
|
||||
lehre.tbl_vertrag
|
||||
WHERE
|
||||
EXISTS (SELECT
|
||||
1
|
||||
FROM
|
||||
lehre.tbl_lehreinheitmitarbeiter
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE
|
||||
vertrag_id=tbl_vertrag.vertrag_id
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($stsem).")
|
||||
OR
|
||||
EXISTS (SELECT
|
||||
1
|
||||
FROM
|
||||
lehre.tbl_projektbetreuer
|
||||
JOIN lehre.tbl_projektarbeit USING(projektarbeit_id)
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE
|
||||
vertrag_id=tbl_vertrag.vertrag_id
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($stsem).")
|
||||
OR
|
||||
(NOT EXISTS (SELECT
|
||||
1
|
||||
FROM
|
||||
lehre.tbl_lehreinheitmitarbeiter
|
||||
WHERE
|
||||
vertrag_id=tbl_vertrag.vertrag_id)
|
||||
AND NOT EXISTS (SELECT
|
||||
1
|
||||
FROM
|
||||
lehre.tbl_projektbetreuer
|
||||
WHERE
|
||||
vertrag_id=tbl_vertrag.vertrag_id)
|
||||
AND vertragsdatum<=".$this->db_add_param($datum)."
|
||||
AND vertragsdatum>=".$this->db_add_param($prevstsemende)."
|
||||
)";
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new stdClass();
|
||||
|
||||
$obj->vertrag_id = $row->vertrag_id;
|
||||
$obj->vertragstyp_kurzbz = $row->vertragstyp_kurzbz;
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
$obj->betrag = $row->betrag;
|
||||
$obj->person_id = $row->person_id;
|
||||
$obj->anmerkung = $row->anmerkung;
|
||||
$obj->vertragsdatum = $row->vertragsdatum;
|
||||
|
||||
$this->result[]=$obj;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
+14
-1
@@ -3436,6 +3436,19 @@ if($result = $db->db_query("SELECT 1 FROM lehre.tbl_vertragsstatus WHERE vertrag
|
||||
echo 'Vertragsstatus Storno hinzugefuegt';
|
||||
}
|
||||
}
|
||||
|
||||
if(!$result = @$db->db_query("SELECT lehrveranstaltung_id FROM lehre.tbl_vertrag LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE lehre.tbl_vertrag ADD COLUMN lehrveranstaltung_id integer;
|
||||
ALTER TABLE lehre.tbl_vertrag ADD CONSTRAINT fk_vertrag_lehrveranstaltung_id FOREIGN KEY (lehrveranstaltung_id) REFERENCES lehre.tbl_lehrveranstaltung (lehrveranstaltung_id) ON UPDATE CASCADE ON DELETE CASCADE;
|
||||
";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>Vertrag: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo 'Vertrag: Spalte lehrveranstaltung_id hinzugefügt';
|
||||
}
|
||||
|
||||
echo '<br><br><br>';
|
||||
|
||||
$tabellen=array(
|
||||
@@ -3570,7 +3583,7 @@ $tabellen=array(
|
||||
"lehre.tbl_stundenplan" => array("stundenplan_id","unr","mitarbeiter_uid","datum","stunde","ort_kurzbz","gruppe_kurzbz","titel","anmerkung","lehreinheit_id","studiengang_kz","semester","verband","gruppe","fix","updateamum","updatevon","insertamum","insertvon"),
|
||||
"lehre.tbl_stundenplandev" => array("stundenplandev_id","lehreinheit_id","unr","studiengang_kz","semester","verband","gruppe","gruppe_kurzbz","mitarbeiter_uid","ort_kurzbz","datum","stunde","titel","anmerkung","fix","updateamum","updatevon","insertamum","insertvon","ext_id"),
|
||||
"lehre.tbl_stundenplan_betriebsmittel" => array("stundenplan_betriebsmittel_id","betriebsmittel_id","stundenplandev_id","anmerkung","insertamum","insertvon"),
|
||||
"lehre.tbl_vertrag" => array("vertrag_id","person_id","vertragstyp_kurzbz","bezeichnung","betrag","insertamum","insertvon","updateamum","updatevon","ext_id","anmerkung","vertragsdatum"),
|
||||
"lehre.tbl_vertrag" => array("vertrag_id","person_id","vertragstyp_kurzbz","bezeichnung","betrag","insertamum","insertvon","updateamum","updatevon","ext_id","anmerkung","vertragsdatum","lehrveranstaltung_id"),
|
||||
"lehre.tbl_vertrag_vertragsstatus" => array("vertragsstatus_kurzbz","vertrag_id","uid","datum","ext_id","insertamum","insertvon","updateamum","updatevon"),
|
||||
"lehre.tbl_vertragstyp" => array("vertragstyp_kurzbz","bezeichnung"),
|
||||
"lehre.tbl_vertragsstatus" => array("vertragsstatus_kurzbz","bezeichnung"),
|
||||
|
||||
Reference in New Issue
Block a user