mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -73,4 +73,53 @@ class Konto_model extends DB_Model
|
||||
return error('Failed to load Payment');
|
||||
}
|
||||
}
|
||||
|
||||
public function getLastStudienbeitrag($uid, $buchungstypen)
|
||||
{
|
||||
$query = 'SELECT konto.studiensemester_kurzbz
|
||||
FROM public.tbl_konto konto,
|
||||
public.tbl_benutzer,
|
||||
public.tbl_student
|
||||
WHERE tbl_benutzer.uid = \'' . $uid . '\'
|
||||
AND tbl_benutzer.uid = tbl_student.student_uid
|
||||
AND tbl_benutzer.person_id = konto.person_id
|
||||
AND konto.studiengang_kz = tbl_student.studiengang_kz
|
||||
AND konto.buchungstyp_kurzbz IN (\'' . $buchungstypen . '\')
|
||||
AND 0 = (
|
||||
SELECT sum(betrag)
|
||||
FROM public.tbl_konto skonto
|
||||
WHERE skonto.buchungsnr = konto.buchungsnr_verweis
|
||||
OR skonto.buchungsnr_verweis = konto.buchungsnr_verweis
|
||||
)
|
||||
ORDER BY buchungsnr DESC LIMIT 1;
|
||||
';
|
||||
|
||||
return $this->execQuery($query);
|
||||
}
|
||||
|
||||
public function checkStudienbeitrag($uid, $stsem, $buchungstypen)
|
||||
{
|
||||
$query = 'SELECT tbl_konto.buchungsnr,
|
||||
tbl_konto.buchungsdatum
|
||||
FROM public.tbl_konto,
|
||||
public.tbl_benutzer,
|
||||
public.tbl_student
|
||||
WHERE
|
||||
tbl_konto.studiensemester_kurzbz = \'' . $stsem . '\'
|
||||
AND tbl_benutzer.uid = \'' . $uid . '\'
|
||||
AND tbl_benutzer.uid = tbl_student.student_uid
|
||||
AND tbl_benutzer.person_id = tbl_konto.person_id
|
||||
AND tbl_konto.studiengang_kz=tbl_student.studiengang_kz
|
||||
AND tbl_konto.buchungstyp_kurzbz IN (\'' . $buchungstypen . '\')
|
||||
AND 0 >= (
|
||||
SELECT sum(betrag)
|
||||
FROM public.tbl_konto skonto
|
||||
WHERE skonto.buchungsnr = tbl_konto.buchungsnr_verweis
|
||||
OR skonto.buchungsnr_verweis = tbl_konto.buchungsnr_verweis
|
||||
)
|
||||
ORDER BY buchungsnr DESC LIMIT 1
|
||||
';
|
||||
|
||||
return $this->execQuery($query);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
class Fotostatusperson_model extends DB_Model
|
||||
{
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
$this->dbTable = 'public.tbl_person_fotostatus';
|
||||
$this->pk = 'person_fotostatus_id';
|
||||
}
|
||||
|
||||
public function getLastFotoStatus($person_id)
|
||||
{
|
||||
$this->addOrder('datum', 'DESC');
|
||||
$this->addOrder('person_fotostatus_id', 'DESC');
|
||||
$this->addLimit(1);
|
||||
|
||||
return $this->loadWhere(array('person_id' => $person_id));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -193,7 +193,7 @@ class Person_model extends DB_Model
|
||||
*/
|
||||
public function getByUid($uid)
|
||||
{
|
||||
$this->addSelect('vorname, nachname, gebdatum, person_id, bpk, matr_nr');
|
||||
$this->addSelect('vorname, nachname, gebdatum, person_id, bpk, matr_nr, foto');
|
||||
$this->addJoin('tbl_benutzer', 'person_id');
|
||||
|
||||
return $this->loadWhere(array('uid' => $uid));
|
||||
|
||||
@@ -55,4 +55,21 @@ class Betriebsmittelperson_model extends DB_Model
|
||||
|
||||
return $this->loadWhere($condition);
|
||||
}
|
||||
|
||||
public function getBetriebsmittelZuordnung($cardIdentifier, $typ = 'Zutrittskarte', $ausgegeben = true)
|
||||
{
|
||||
$this->addJoin('wawi.tbl_betriebsmittel', 'betriebsmittel_id');
|
||||
|
||||
$where = 'wawi.tbl_betriebsmittel.nummer2 = \'' . $cardIdentifier . '\'
|
||||
AND wawi.tbl_betriebsmittel.betriebsmitteltyp = \''. $typ .'\'
|
||||
AND (retouram >= now() OR retouram IS NULL)
|
||||
';
|
||||
|
||||
if ($ausgegeben)
|
||||
$where .= 'AND ausgegebenam <= now()';
|
||||
else
|
||||
$where .= 'AND (ausgegebenam <= now() OR ausgegebenam IS NULL)';
|
||||
|
||||
return $this->loadWhere($where);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -246,6 +246,8 @@
|
||||
|
||||
"afarkas/html5shiv": "3.7.*",
|
||||
|
||||
"chillerlan/php-qrcode": "2.0.*",
|
||||
|
||||
"chriskacerguis/codeigniter-restserver": "3.0.3",
|
||||
"christianbach/tablesorter": "1.0.*",
|
||||
"codeigniter/framework": "3.*",
|
||||
|
||||
Generated
+109
-10
@@ -4,8 +4,8 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"hash": "7e7441d3ba7b9b2be1f647b9bfc2c941",
|
||||
"content-hash": "d59d1c1f4957fc2e3dc019cbb99b5aa2",
|
||||
"hash": "6bab4617977e08b2939bf959929632d4",
|
||||
"content-hash": "3e499134721f682f298dda20263ab686",
|
||||
"packages": [
|
||||
{
|
||||
"name": "BlackrockDigital/startbootstrap-sb-admin-2",
|
||||
@@ -71,6 +71,105 @@
|
||||
},
|
||||
"type": "library"
|
||||
},
|
||||
{
|
||||
"name": "chillerlan/php-qrcode",
|
||||
"version": "2.0.8",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/chillerlan/php-qrcode.git",
|
||||
"reference": "bf0382aaf2f79fa41c2dcb0f216675f74d633fe7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/chillerlan/php-qrcode/zipball/bf0382aaf2f79fa41c2dcb0f216675f74d633fe7",
|
||||
"reference": "bf0382aaf2f79fa41c2dcb0f216675f74d633fe7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"chillerlan/php-traits": "^1.1",
|
||||
"php": ">=7.0.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"chillerlan/php-authenticator": "^2.0",
|
||||
"phpunit/phpunit": "^6.5"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"chillerlan\\QRCode\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Kazuhiko Arase",
|
||||
"homepage": "https://github.com/kazuhikoarase"
|
||||
},
|
||||
{
|
||||
"name": "Smiley",
|
||||
"email": "smiley@chillerlan.net",
|
||||
"homepage": "https://github.com/codemasher"
|
||||
}
|
||||
],
|
||||
"description": "A QR code generator. PHP 7+",
|
||||
"homepage": "https://github.com/chillerlan/php-qrcode",
|
||||
"keywords": [
|
||||
"qr code"
|
||||
],
|
||||
"time": "2020-04-12 07:38:35"
|
||||
},
|
||||
{
|
||||
"name": "chillerlan/php-traits",
|
||||
"version": "1.1.13",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/chillerlan/php-traits.git",
|
||||
"reference": "264759946b6aaeb427346b749fc9639b790b8e7f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/chillerlan/php-traits/zipball/264759946b6aaeb427346b749fc9639b790b8e7f",
|
||||
"reference": "264759946b6aaeb427346b749fc9639b790b8e7f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.0.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^6.5"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"chillerlan\\Traits\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Smiley",
|
||||
"email": "smiley@chillerlan.net",
|
||||
"homepage": "https://github.com/codemasher"
|
||||
}
|
||||
],
|
||||
"description": "Some useful traits for PHP 7+",
|
||||
"homepage": "https://github.com/chillerlan/php-traits",
|
||||
"keywords": [
|
||||
"PHP7",
|
||||
"container",
|
||||
"dotenv",
|
||||
"helper",
|
||||
"trait"
|
||||
],
|
||||
"abandoned": true,
|
||||
"time": "2018-06-22 00:30:47"
|
||||
},
|
||||
{
|
||||
"name": "chriskacerguis/codeigniter-restserver",
|
||||
"version": "3.0.3",
|
||||
@@ -1248,26 +1347,26 @@
|
||||
},
|
||||
{
|
||||
"name": "netcarver/textile",
|
||||
"version": "v3.7.6",
|
||||
"version": "v3.7.7",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/textile/php-textile.git",
|
||||
"reference": "1846fd5aeace2a0dd57c4f770f693d12bcd7fa26"
|
||||
"reference": "e5c32b4485741e656cfd94932da8ba7dd4a19da5"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/textile/php-textile/zipball/1846fd5aeace2a0dd57c4f770f693d12bcd7fa26",
|
||||
"reference": "1846fd5aeace2a0dd57c4f770f693d12bcd7fa26",
|
||||
"url": "https://api.github.com/repos/textile/php-textile/zipball/e5c32b4485741e656cfd94932da8ba7dd4a19da5",
|
||||
"reference": "e5c32b4485741e656cfd94932da8ba7dd4a19da5",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"php-coveralls/php-coveralls": "2.1.*",
|
||||
"phpunit/phpunit": "5.7.*",
|
||||
"phpstan/phpstan": "1.6.3",
|
||||
"phpunit/phpunit": "^9.5.20",
|
||||
"squizlabs/php_codesniffer": "3.*",
|
||||
"symfony/yaml": "2.4.*"
|
||||
"symfony/yaml": "^4.4.3"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@@ -1297,7 +1396,7 @@
|
||||
"plaintext",
|
||||
"textile"
|
||||
],
|
||||
"time": "2020-01-08 21:13:37"
|
||||
"time": "2022-05-01 17:05:16"
|
||||
},
|
||||
{
|
||||
"name": "nicolaskruchten/pivottable",
|
||||
|
||||
@@ -1655,5 +1655,37 @@ class mitarbeiter extends benutzer
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Generiert nächste freie Personalnummer anhand der sequence tbl_mitarbeiter_personalnummer_seq
|
||||
* @return string $personalnummer
|
||||
*/
|
||||
public function getNextPersonalnummer()
|
||||
{
|
||||
$qry = "SELECT nextval('tbl_mitarbeiter_personalnummer_seq') ";
|
||||
|
||||
if ($result = $this->db_query($qry))
|
||||
{
|
||||
while ($row = $this->db_fetch_object())
|
||||
{
|
||||
if ($row->nextval != '')
|
||||
{
|
||||
$personalnummer = $row->nextval;
|
||||
return $personalnummer;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler bei einer Datenbankabfrage!';
|
||||
$return = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -73,7 +73,7 @@ if(!$generateuid_addon_found)
|
||||
// ****
|
||||
// * Gerneriert die Mitarbeiter UID
|
||||
// ****
|
||||
function generateMitarbeiterUID($vorname, $nachname, $lektor, $fixangestellt=true)
|
||||
function generateMitarbeiterUID($vorname, $nachname, $lektor, $fixangestellt=true, $personalnummer=null)
|
||||
{
|
||||
$bn = new benutzer();
|
||||
$reserviert = array();
|
||||
@@ -110,4 +110,5 @@ if(!$generateuid_addon_found)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
@@ -9532,6 +9532,26 @@ Any unusual occurrences
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'projektarbeitsbeurteilung',
|
||||
'category' => 'projektarbeitsbeurteilung',
|
||||
'phrase' => 'begutachter',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => 'Begutachter*in',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => 'Assessor',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'projektarbeitsbeurteilung',
|
||||
'category' => 'projektarbeitsbeurteilung',
|
||||
|
||||
@@ -16,8 +16,9 @@
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
|
||||
* Manuela Thamer <manuela.thamer@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
require_once('../../../config/vilesci.config.inc.php');
|
||||
@@ -620,8 +621,16 @@ if(isset($_POST['save']))
|
||||
$nachname_clean = mb_strtolower(convertProblemChars($nachname));
|
||||
$vorname_clean = mb_strtolower(convertProblemChars($vorname));
|
||||
$uid='';
|
||||
$mitarbeiter = new mitarbeiter();
|
||||
|
||||
$uid = generateMitarbeiterUID($vorname_clean, $nachname_clean, $lektor, $fixangestellt);
|
||||
if ($_POST['personalnummer'])
|
||||
{
|
||||
$personalnummer = $_POST['personalnummer'];
|
||||
}
|
||||
else
|
||||
$personalnummer = $mitarbeiter->getNextPersonalnummer();
|
||||
|
||||
$uid = generateMitarbeiterUID($vorname_clean, $nachname_clean, $lektor, $fixangestellt, $personalnummer);
|
||||
|
||||
if ($wunschUid != '')
|
||||
{
|
||||
@@ -872,10 +881,10 @@ if(isset($_POST['save']))
|
||||
}
|
||||
}
|
||||
|
||||
if(!$error)
|
||||
if (!$error)
|
||||
{
|
||||
$db->db_query('COMMIT');
|
||||
die("<b>MitarbeiterIn $vorname $vornamen $nachname wurde erfolgreich angelegt</b><br><br><a href='mitarbeiterimport.php'>Neue Person anlegen</a><br>");
|
||||
die("<b>MitarbeiterIn $vorname $vornamen $nachname ($uid) wurde erfolgreich angelegt</b><br><br><a href='mitarbeiterimport.php'>Neue Person anlegen</a><br>");
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -925,7 +934,8 @@ echo '<tr><td>Wunsch-UID</td><td><input type="text" name="wunschUid" id="wunschU
|
||||
echo '<span style="padding: 0 3px" id="checkUID"></span>';
|
||||
if ($showagain)
|
||||
echo '<br>';
|
||||
echo '<button type="button" title="Prüft, ob die UID schon vorhanden ist. Keine Sonderzeichen, Umlaute oder Leerzeichen in der UID" href="#" onclick="checkWunschUid()"> Check UID </button> (optional, max. 32)
|
||||
echo '<button type="button" title="Prüft, ob die UID schon vorhanden ist. Keine Sonderzeichen, Umlaute oder Leerzeichen in der UID"
|
||||
href="#" onclick="checkWunschUid()"> Check UID </button> (optional, max. 32)
|
||||
</td></tr>';
|
||||
echo '<tr><td>Anrede</td><td><input type="text" id="anrede" name="anrede" maxlength="16" size="30" value="'.$anrede.'" onblur="AnredeChange()"/></td></tr>';
|
||||
echo '<tr><td>Titel(Pre)</td><td><input type="text" id="titel" name="titel" maxlength="64" size="30" value="'.$titel.'" /></td></tr>';
|
||||
|
||||
Reference in New Issue
Block a user