Added "zeitaufzeichnungspflichtig" to FAS and DB

The field 'zeitaufzeichnungspflichtig' indicates the obligation of an employee to record working times. (-> monthlists should then be created)

. added column to tbl_bisverwendung and value true for all employees, who are fix angestellt 
. added FAS GUI in popup window when creating new contract of employment 
-- by default checkbox is checked when employee is fix angestellt, otherwise unchecked.
This commit is contained in:
Cris
2018-10-02 16:23:57 +02:00
parent f907cd7292
commit 597ed8a16e
7 changed files with 106 additions and 5 deletions
+6
View File
@@ -169,6 +169,12 @@ if(!$error)
$verwendung->updatevon = $user;
$verwendung->dv_art = $_POST['dv_art'];
$verwendung->inkludierte_lehre = $_POST['inkludierte_lehre'];
if($_POST['zeitaufzeichnungspflichtig']=='true')
$verwendung->zeitaufzeichnungspflichtig = true;
elseif($_POST['zeitaufzeichnungspflichtig']=='false')
$verwendung->zeitaufzeichnungspflichtig = false;
else
$verwendung->zeitaufzeichnungspflichtig = '';
if($verwendung->save())
{
@@ -1209,6 +1209,7 @@ function MitarbeiterVerwendungSpeichern(dialog, bisverwendung_id, mitarbeiter_ui
vertragsstunden = dialog.getElementById('mitarbeiter-verwendung-detail-textbox-vertragsstunden').value;
dv_art = dialog.getElementById('mitarbeiter-verwendung-detail-textbox-dv_art').value;
inkludierte_lehre = dialog.getElementById('mitarbeiter-verwendung-detail-textbox-inkludierte_lehre').value;
zeitaufzeichnungspflichtig = dialog.getElementById('mitarbeiter-verwendung-detail-checkbox-zeitaufzeichnungspflichtig').checked;
if(verwendung_code=='1' || verwendung_code=='5' || verwendung_code=='6')
{
@@ -1266,6 +1267,7 @@ function MitarbeiterVerwendungSpeichern(dialog, bisverwendung_id, mitarbeiter_ui
req.add('vertragsstunden', vertragsstunden);
req.add('dv_art', dv_art);
req.add('inkludierte_lehre', inkludierte_lehre);
req.add('zeitaufzeichnungspflichtig', zeitaufzeichnungspflichtig);
var response = req.executePOST();
@@ -69,9 +69,25 @@ function MitarbeiterVerwendungInit(mitarbeiter_uid, bisverwendung_id)
vertragsstunden = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#vertragsstunden" ));
dv_art = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#dv_art" ));
inkludierte_lehre = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#inkludierte_lehre" ));
zeitaufzeichnungspflichtig = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#zeitaufzeichnungspflichtig" ));
}
else
{
//Laden der Daten
//Daten holen
var url = '<?php echo APP_ROOT ?>rdf/personal.rdf.php?uid='+MitarbeiterVerwendungDetailMitarbeiterUid+'&'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var dsource = rdfService.GetDataSourceBlocking(url);
var subject = rdfService.GetResource("http://www.technikum-wien.at/mitarbeiter/" + MitarbeiterVerwendungDetailMitarbeiterUid);
var predicateNS = "http://www.technikum-wien.at/mitarbeiter/rdf";
fixangestellt = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#fixangestellt" ));
//neuer Datensatz wird angelegt
MitarbeiterVerwendungDetailNeu='true';
@@ -88,6 +104,14 @@ function MitarbeiterVerwendungInit(mitarbeiter_uid, bisverwendung_id)
vertragsstunden='38.5';
dv_art='';
inkludierte_lehre='';
if (fixangestellt=='Ja')
{
zeitaufzeichnungspflichtig='Ja';
}
else
{
zeitaufzeichnungspflichtig='Nein';
}
}
document.getElementById('mitarbeiter-verwendung-detail-menulist-beschart1').value=ba1code;
@@ -110,6 +134,10 @@ function MitarbeiterVerwendungInit(mitarbeiter_uid, bisverwendung_id)
document.getElementById('mitarbeiter-verwendung-detail-textbox-vertragsstunden').value=vertragsstunden;
document.getElementById('mitarbeiter-verwendung-detail-textbox-dv_art').value=dv_art;
document.getElementById('mitarbeiter-verwendung-detail-textbox-inkludierte_lehre').value=inkludierte_lehre;
if(zeitaufzeichnungspflichtig=='Ja')
document.getElementById('mitarbeiter-verwendung-detail-checkbox-zeitaufzeichnungspflichtig').checked=true;
else
document.getElementById('mitarbeiter-verwendung-detail-checkbox-zeitaufzeichnungspflichtig').checked=false;
MitarbeiterVerwendungDetailToggleHauptberuf();
MitarbeiterVerwendungVerwendungChange();
@@ -162,6 +162,10 @@ echo '<?xml-stylesheet href="'.APP_ROOT.'content/datepicker/datepicker.css" type
<row>
<label value="Inkludierte Lehre" control="mitarbeiter-verwendung-detail-textbox-inkludierte_lehre" />
<textbox id="mitarbeiter-verwendung-detail-textbox-inkludierte_lehre" />
</row>
<row>
<label value="Zeitaufzeichnungspflichtig" control="mitarbeiter-verwendung-detail-checkbox-zeitaufzeichnungspflichtig"/>
<checkbox id="mitarbeiter-verwendung-detail-checkbox-zeitaufzeichnungspflichtig"/>
</row>
<row>
<spacer />
+21 -3
View File
@@ -46,6 +46,7 @@ class bisverwendung extends basis_db
public $ext_id;
public $dv_art;
public $inkludierte_lehre;
public $zeitaufzeichnungspflichtig;
public $ba1bez;
public $ba2bez;
@@ -120,6 +121,7 @@ class bisverwendung extends basis_db
$this->vertragsstunden = $row->vertragsstunden;
$this->dv_art = $row->dv_art;
$this->inkludierte_lehre = $row->inkludierte_lehre;
$this->zeitaufzeichnungspflichtig = $this->db_parse_bool($row->zeitaufzeichnungspflichtig);
return true;
}
else
@@ -207,12 +209,22 @@ class bisverwendung extends basis_db
$hauptberuflich = $this->db_add_param($this->hauptberuflich, FHC_BOOLEAN);
else
$hauptberuflich = 'null';
if(is_bool($this->zeitaufzeichnungspflichtig))
{
$zeitaufzeichnungspflichtig = $this->db_add_param($this->zeitaufzeichnungspflichtig, FHC_BOOLEAN);
}
else
{
$zeitaufzeichnungspflichtig = 'null';
}
if($new)
{
//Neuen Datensatz anlegen
$qry = "BEGIN;INSERT INTO bis.tbl_bisverwendung (ba1code, ba2code, beschausmasscode,
verwendung_code, mitarbeiter_uid, hauptberufcode, hauptberuflich, habilitation, beginn, ende, vertragsstunden,
updateamum, updatevon, insertamum, insertvon, dv_art, inkludierte_lehre) VALUES (".
updateamum, updatevon, insertamum, insertvon, dv_art, inkludierte_lehre, zeitaufzeichnungspflichtig) VALUES (".
$this->db_add_param($this->ba1code, FHC_INTEGER).', '.
$this->db_add_param($this->ba2code, FHC_INTEGER).', '.
$this->db_add_param($this->beschausmasscode, FHC_INTEGER).', '.
@@ -229,7 +241,8 @@ class bisverwendung extends basis_db
$this->db_add_param($this->insertamum).', '.
$this->db_add_param($this->insertvon).', '.
$this->db_add_param($this->dv_art).','.
$this->db_add_param($this->inkludierte_lehre).');';
$this->db_add_param($this->inkludierte_lehre).','.
$zeitaufzeichnungspflichtig. ');';
}
else
@@ -252,7 +265,8 @@ class bisverwendung extends basis_db
" insertamum=".$this->db_add_param($this->insertamum).",".
" insertvon=".$this->db_add_param($this->insertvon).",".
" dv_art=".$this->db_add_param($this->dv_art).",".
" inkludierte_lehre=".$this->db_add_param($this->inkludierte_lehre).
" inkludierte_lehre=".$this->db_add_param($this->inkludierte_lehre).",".
" zeitaufzeichnungspflichtig=". $zeitaufzeichnungspflichtig.
" WHERE bisverwendung_id=".$this->db_add_param($this->bisverwendung_id, FHC_INTEGER);
}
@@ -344,6 +358,7 @@ class bisverwendung extends basis_db
$obj->vertragsstunden = $row->vertragsstunden;
$obj->dv_art = $row->dv_art;
$obj->inkludierte_lehre = $row->inkludierte_lehre;
$obj->zeitaufzeichnungspflichtig = $this->db_parse_bool($row->zeitaufzeichnungspflichtig);
$this->result[] = $obj;
}
@@ -400,6 +415,7 @@ class bisverwendung extends basis_db
$obj->vertragsstunden = $row->vertragsstunden;
$obj->dv_art = $row->dv_art;
$obj->inkludierte_lehre = $row->inkludierte_lehre;
$obj->zeitaufzeichnungspflichtig = $this->db_parse_bool($row->zeitaufzeichnungspflichtig);
$this->result[] = $obj;
}
@@ -450,6 +466,7 @@ class bisverwendung extends basis_db
$this->vertragsstunden = $row->vertragsstunden;
$this->dv_art = $row->dv_art;
$this->inkludierte_lehre = $row->inkludierte_lehre;
$this->zeitaufzeichnungspflichtig = $this->db_parse_bool($row->zeitaufzeichnungspflichtig);
}
return true;
}
@@ -502,6 +519,7 @@ class bisverwendung extends basis_db
$this->vertragsstunden = $row->vertragsstunden;
$this->dv_art = $row->dv_art;
$this->inkludierte_lehre = $row->inkludierte_lehre;
$this->zeitaufzeichnungspflichtig = $this->db_parse_bool($row->zeitaufzeichnungspflichtig);
}
return true;
}
+7 -1
View File
@@ -84,7 +84,12 @@ function draw_row($row)
$hauptberuflich = $row->hauptberuflich?'Ja':'Nein';
else
$hauptberuflich = '';
if(is_bool($row->zeitaufzeichnungspflichtig))
$zeitaufzeichnungspflichtig = $row->zeitaufzeichnungspflichtig?'Ja':'Nein';
else
$zeitaufzeichnungspflichtig = '';
echo '
<RDF:li>
<RDF:Description id="'.$row->bisverwendung_id.'" about="'.$rdf_url.'/'.$row->bisverwendung_id.'" >
@@ -113,6 +118,7 @@ function draw_row($row)
<VERWENDUNG:insertvon><![CDATA['.$row->insertvon.']]></VERWENDUNG:insertvon>
<VERWENDUNG:dv_art><![CDATA['.$row->dv_art.']]></VERWENDUNG:dv_art>
<VERWENDUNG:inkludierte_lehre><![CDATA['.$row->inkludierte_lehre.']]></VERWENDUNG:inkludierte_lehre>
<VERWENDUNG:zeitaufzeichnungspflichtig><![CDATA['.$zeitaufzeichnungspflichtig.']]></VERWENDUNG:zeitaufzeichnungspflichtig>
</RDF:Description>
</RDF:li>
';
+38 -1
View File
@@ -2394,6 +2394,43 @@ if(!$result = @$db->db_query("SELECT lkt_ueberschreibbar FROM lehre.tbl_note LIM
echo '<br>lehre.tbl_note: Spalte lkt_ueberschreibbar hinzugefuegt!<br>';
}
// ADD COLUMN zeitaufzeichnungspflichtig to bis.tbl_bisverwendung
// UPDATE zeitaufzeichnungspflichtig in bis.tbl_bisverwendung
if(!@$db->db_query("SELECT zeitaufzeichnungspflichtig FROM bis.tbl_bisverwendung LIMIT 1"))
{
$qry = "ALTER TABLE bis.tbl_bisverwendung ADD COLUMN zeitaufzeichnungspflichtig boolean;
UPDATE
bis.tbl_bisverwendung
SET
zeitaufzeichnungspflichtig=true
FROM
public.tbl_mitarbeiter
WHERE
tbl_bisverwendung.mitarbeiter_uid = tbl_mitarbeiter.mitarbeiter_uid
AND
fixangestellt=true;
UPDATE
bis.tbl_bisverwendung
SET
zeitaufzeichnungspflichtig=false
FROM
public.tbl_mitarbeiter
WHERE
tbl_bisverwendung.mitarbeiter_uid = tbl_mitarbeiter.mitarbeiter_uid
AND
fixangestellt=false;
COMMENT ON COLUMN bis.tbl_bisverwendung.zeitaufzeichnungspflichtig IS 'CaseTime Monatslisten mit Vertragsbeginn verpflichtend führen?';";
if(!$db->db_query($qry))
echo '<strong>bis.tbl_bisverwendung '.$db->db_last_error().'</strong><br>';
else
echo "<br>Spalte zeitaufzeichnungspflichtig in bis.tbl_bisverwendung hinzugefügt"
. "<br>Fix angestellte Mitarbeiter auf true gesetzt, alle anderen auf false";
}
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
@@ -2410,7 +2447,7 @@ $tabellen=array(
"bis.tbl_besqual" => array("besqualcode","besqualbez"),
"bis.tbl_bisfunktion" => array("bisverwendung_id","studiengang_kz","sws","updateamum","updatevon","insertamum","insertvon","ext_id"),
"bis.tbl_bisio" => array("bisio_id","mobilitaetsprogramm_code","nation_code","von","bis","zweck_code","student_uid","updateamum","updatevon","insertamum","insertvon","ext_id","ort","universitaet","lehreinheit_id"),
"bis.tbl_bisverwendung" => array("bisverwendung_id","ba1code","ba2code","vertragsstunden","beschausmasscode","verwendung_code","mitarbeiter_uid","hauptberufcode","hauptberuflich","habilitation","beginn","ende","updateamum","updatevon","insertamum","insertvon","ext_id","dv_art","inkludierte_lehre"),
"bis.tbl_bisverwendung" => array("bisverwendung_id","ba1code","ba2code","vertragsstunden","beschausmasscode","verwendung_code","mitarbeiter_uid","hauptberufcode","hauptberuflich","habilitation","beginn","ende","updateamum","updatevon","insertamum","insertvon","ext_id","dv_art","inkludierte_lehre","zeitaufzeichnungspflichtig"),
"bis.tbl_bundesland" => array("bundesland_code","kurzbz","bezeichnung"),
"bis.tbl_entwicklungsteam" => array("mitarbeiter_uid","studiengang_kz","besqualcode","beginn","ende","updateamum","updatevon","insertamum","insertvon","ext_id"),
"bis.tbl_gemeinde" => array("gemeinde_id","plz","name","ortschaftskennziffer","ortschaftsname","bulacode","bulabez","kennziffer"),