mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
102 lines
2.5 KiB
PHP
102 lines
2.5 KiB
PHP
<?php
|
|
class Dokument_model extends DB_Model
|
|
{
|
|
|
|
/**
|
|
* Constructor
|
|
*/
|
|
public function __construct()
|
|
{
|
|
parent::__construct();
|
|
$this->dbTable = 'public.tbl_dokument';
|
|
$this->pk = 'dokument_kurzbz';
|
|
}
|
|
|
|
/**
|
|
* Loads all missing Documents of a Studiengang
|
|
* a Prestudent has not submitted
|
|
* @param integer studiengang_kz
|
|
* @param integer prestudent_id
|
|
* @param boolean archivdokumente
|
|
* Default: true.
|
|
* If false, documents that are archivable (tbl_vorlage.archivierbar e.g. certificate, notice, ...) not retrieved
|
|
* @return Array of Documents || error
|
|
*/
|
|
public function getMissingDocuments($studiengang_kz, $prestudent_id = null, $archivdokumente = false, $person_id = null)
|
|
{
|
|
$parametersArray = array($studiengang_kz);
|
|
|
|
$qry = "SELECT
|
|
tbl_dokument.* ,
|
|
tbl_dokumentstudiengang.*
|
|
FROM public.tbl_dokument
|
|
JOIN public.tbl_dokumentstudiengang USING(dokument_kurzbz)
|
|
LEFT JOIN public.tbl_vorlage ON (tbl_dokument.dokument_kurzbz = tbl_vorlage.vorlage_kurzbz)
|
|
WHERE studiengang_kz = ? ";
|
|
|
|
if($prestudent_id)
|
|
{
|
|
array_push($parametersArray, $prestudent_id);
|
|
$qry.=" AND tbl_dokument.dokument_kurzbz NOT IN (
|
|
SELECT dokument_kurzbz FROM public.tbl_dokumentprestudent WHERE prestudent_id= ?)";
|
|
}
|
|
|
|
if(!$archivdokumente)
|
|
{
|
|
$qry.=" AND (tbl_vorlage.archivierbar = FALSE OR tbl_vorlage.archivierbar IS NULL)";
|
|
}
|
|
|
|
$qry.=" ORDER BY tbl_dokument.dokument_kurzbz;";
|
|
|
|
return $this->execQuery($qry, $parametersArray);
|
|
}
|
|
|
|
public function getUnacceptedDocuments($prestudent_id, $person_id)
|
|
{
|
|
$parametersArray = array($person_id, $prestudent_id);
|
|
|
|
$qry = " SELECT
|
|
a.akte_id,
|
|
a.bezeichnung,
|
|
a.dokument_kurzbz,
|
|
a.titel_intern,
|
|
a.anmerkung_intern,
|
|
a.insertamum as hochgeladenamum,
|
|
a.updatevon,
|
|
a.insertvon,
|
|
a.uid,
|
|
a.dms_id,
|
|
a.anmerkung as infotext,
|
|
a.nachgereicht,
|
|
CASE
|
|
WHEN inhalt IS NOT NULL
|
|
OR a.dms_id IS NOT NULL THEN true
|
|
ELSE false
|
|
END AS vorhanden,
|
|
a.nachgereicht_am,
|
|
ausstellungsnation,
|
|
formal_geprueft_amum,
|
|
archiv,
|
|
signiert,
|
|
stud_selfservice,
|
|
akzeptiertamum,
|
|
inhalt
|
|
FROM
|
|
public.tbl_akte a
|
|
WHERE
|
|
a.person_id = ?
|
|
AND a.dokument_kurzbz NOT IN (
|
|
SELECT
|
|
dokument_kurzbz
|
|
FROM
|
|
public.tbl_dokumentprestudent
|
|
WHERE
|
|
prestudent_id = ?
|
|
)
|
|
AND a.dokument_kurzbz NOT IN ('Zeugnis','DiplSupp','Bescheid')
|
|
ORDER BY a.dokument_kurzbz;";
|
|
|
|
return $this->execQuery($qry, $parametersArray);
|
|
}
|
|
}
|