mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-23 09:52:22 +00:00
Der Mitarbeiterexport im FAS exportiert nun nicht mehr die Mitarbeiter
des Ausgewählten Filters sondern die markierten Mitarbeiter. Wenn keine Mitarbeiter markiert wurden werden alle angezeigten Mitarbeiter exportiert
This commit is contained in:
@@ -623,7 +623,7 @@ function MitarbeiterAuswahl()
|
||||
// ***** Termine *****
|
||||
document.getElementById('mitarbeiter-termine').setAttribute('src','termine.xul.php?mitarbeiter_uid='+uid);
|
||||
}
|
||||
|
||||
|
||||
// ***** UDF *****
|
||||
if (document.getElementById('mitarbeiter-tabs').selectedItem == document.getElementById('mitarbeiter-tab-udf'))
|
||||
{
|
||||
@@ -915,56 +915,48 @@ function MitarbeiterNeu()
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Exportiert die Daten in ein Excel File
|
||||
// * Excel Export der Mitarbeiter
|
||||
// ****
|
||||
function MitarbeiterExport()
|
||||
{
|
||||
var treeMitarbeiter=document.getElementById('mitarbeiter-tree');
|
||||
var treeMitarbeiterMenu=document.getElementById('tree-menu-mitarbeiter');
|
||||
var col = treeMitarbeiterMenu.columns ? treeMitarbeiterMenu.columns["tree-menu-mitarbeiter-col-filter"] : "tree-menu-mitarbeiter-col-filter";
|
||||
var filter=treeMitarbeiterMenu.view.getCellText(treeMitarbeiterMenu.currentIndex,col);
|
||||
cols = treeMitarbeiter.getElementsByTagName('treecol');
|
||||
|
||||
var url = "<?php echo APP_ROOT; ?>content/statistik/mitarbeiterexport.xls.php";
|
||||
var attributes="?type=mitarbeiter";
|
||||
if (filter=="Studiengangsleiter")
|
||||
attributes+="&stgl=true";
|
||||
if (filter=="Fachbereichsleiter")
|
||||
attributes+="&fbl=true";
|
||||
if (filter=="Alle")
|
||||
attributes+="&alle=true";
|
||||
if (filter=="Aktive")
|
||||
attributes+="&aktiv=true";
|
||||
if (filter=="FixAngestellte")
|
||||
attributes+="&fix=true&aktiv=true";
|
||||
if (filter=="FixAngestellteAlle")
|
||||
attributes+="&fix=true";
|
||||
if (filter=="Inaktive")
|
||||
attributes+="&aktiv=false";
|
||||
if (filter=="Karenziert")
|
||||
attributes+="&karenziert=true";
|
||||
if (filter=="Ausgeschieden")
|
||||
attributes+="&ausgeschieden=true";
|
||||
if (filter=="FreiAngestellte")
|
||||
attributes+="&fix=false&aktiv=true";
|
||||
if (filter=="FreiAngestellteAlle")
|
||||
attributes+="&fix=false";
|
||||
|
||||
url+=attributes;
|
||||
spalte=0;
|
||||
for(i in cols)
|
||||
var tree = document.getElementById('mitarbeiter-tree');
|
||||
var data='';
|
||||
//Wenn nichts markiert wurde -> alle exportieren
|
||||
if(tree.currentIndex==-1)
|
||||
{
|
||||
if(cols[i].hidden==false)
|
||||
if(tree.view)
|
||||
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
|
||||
else
|
||||
return false;
|
||||
|
||||
for (var v=0; v < items; v++)
|
||||
{
|
||||
url += "&spalte"+spalte+"="+MitarbeiterDetailgetSpaltenname(cols[i].id);
|
||||
spalte=spalte+1;
|
||||
var mitarbeiter_uid = getTreeCellText(tree, 'mitarbeiter-treecol-uid', v);
|
||||
data = data+';'+mitarbeiter_uid;
|
||||
}
|
||||
}
|
||||
//url+='&spalte0=titelpre&spalte1=vorname&spalte2=vornamen&spalte3=familienname&spalte4=uid';
|
||||
else
|
||||
{
|
||||
var start = new Object();
|
||||
var end = new Object();
|
||||
var numRanges = tree.view.selection.getRangeCount();
|
||||
var paramList= '';
|
||||
var anzahl=0;
|
||||
|
||||
//alert(url);
|
||||
//window.open(url,"","chrome,status=no, modal, width=400, height=250, centerscreen, resizable");
|
||||
window.location.href=url;
|
||||
//alle markierten personen holen
|
||||
for (var t = 0; t < numRanges; t++)
|
||||
{
|
||||
tree.view.selection.getRangeAt(t,start,end);
|
||||
for (var v = start.value; v <= end.value; v++)
|
||||
{
|
||||
mitarbeiter_uid = getTreeCellText(tree, 'mitarbeiter-treecol-uid', v);
|
||||
data = data+';'+mitarbeiter_uid;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
action = '<?php echo APP_ROOT; ?>content/statistik/mitarbeiterexport.xls.php';
|
||||
OpenWindowPost(action, data);
|
||||
}
|
||||
|
||||
// ****
|
||||
@@ -1992,9 +1984,9 @@ function MitarbeiterUDFIFrameLoad()
|
||||
{
|
||||
//Ausgewaehlte person_id holen
|
||||
var person_id = getTreeCellText(tree, 'mitarbeiter-treecol-person_id', tree.currentIndex);
|
||||
|
||||
|
||||
url = 'udf.xul.php?person_id='+person_id;
|
||||
document.getElementById('mitarbeiter-udf').setAttribute('src', url);
|
||||
}
|
||||
catch(e) {}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,59 +36,13 @@ $db = new basis_db();
|
||||
$user = get_uid();
|
||||
loadVariables($user);
|
||||
|
||||
//Parameter holen
|
||||
|
||||
if (isset($_GET['fix']))
|
||||
$fix = $_GET['fix'];
|
||||
else
|
||||
$fix=null;
|
||||
|
||||
if (isset($_GET['stgl']))
|
||||
$stgl = ($_GET['stgl'] == 'true' ? true : false);
|
||||
else
|
||||
$stgl=null;
|
||||
|
||||
if (isset($_GET['fbl']))
|
||||
$fbl = $_GET['fbl'];
|
||||
else
|
||||
$fbl=null;
|
||||
|
||||
if (isset($_GET['aktiv']))
|
||||
$aktiv = $_GET['aktiv'];
|
||||
else
|
||||
$aktiv=null;
|
||||
|
||||
if (isset($_GET['karenziert']))
|
||||
$karenziert = $_GET['karenziert'];
|
||||
else
|
||||
$karenziert=null;
|
||||
|
||||
if (isset($_GET['ausgeschieden']))
|
||||
$ausgeschieden = $_GET['ausgeschieden'];
|
||||
else
|
||||
$ausgeschieden=null;
|
||||
|
||||
if (isset($_GET['zustelladresse']))
|
||||
$zustelladresse = $_GET['zustelladresse'];
|
||||
else
|
||||
$zustelladresse = null;
|
||||
|
||||
// Die Spalten die Exportiert werden sollen, werden per GET uebergeben
|
||||
// spalte1=nachname, spalte2=vorname, spalte3=gebdatum, ...
|
||||
$anzSpalten = 0;
|
||||
$varname = 'spalte'.(string)$anzSpalten;
|
||||
while (isset($_GET[$varname]))
|
||||
{
|
||||
$spalte[$anzSpalten] = $_GET[$varname];
|
||||
$anzSpalten++;
|
||||
$varname = 'spalte'.(string)$anzSpalten;
|
||||
}
|
||||
|
||||
$zustelladresse = true;
|
||||
$data = $_POST['data'];
|
||||
$uids= explode(';',$data);
|
||||
|
||||
// Mitarbeiter holen
|
||||
$mitarbeiterDAO = new mitarbeiter();
|
||||
$mitarbeiterDAO->getPersonal($fix, $stgl, $fbl, $aktiv, $karenziert, $ausgeschieden, $semester_aktuell);
|
||||
//$mitarbeiterDAO->getPersonal($fix, $stgl, $fbl, $aktiv, $karenziert, $ausgeschieden, $semester_aktuell);
|
||||
$mitarbeiterDAO->getMitarbeiterArray($uids);
|
||||
|
||||
//Sortieren der Eintraege nach Nachname, Vorname
|
||||
//Umlaute werden ersetzt damit diese nicht unten angereiht werden
|
||||
@@ -106,6 +60,10 @@ foreach ($mitarbeiterDAO->result as $key => $foo)
|
||||
|
||||
array_multisort($nachname, SORT_ASC, $vorname, SORT_ASC, $mitarbeiterDAO->result);
|
||||
|
||||
$spalte = array('titelpre', 'vorname', 'vornamen', 'nachname', 'titelpost','gebdatum','svnr','ersatzkennzeichen',
|
||||
'aktiv','personalnummer', 'kurzbz','fixangestellt','lektor');
|
||||
$anzSpalten = count($spalte);
|
||||
|
||||
// Creating a workbook
|
||||
$workbook = new Spreadsheet_Excel_Writer();
|
||||
$workbook->setVersion(8);
|
||||
@@ -193,7 +151,7 @@ foreach ($mitarbeiterDAO->result as $mitarbeiter)
|
||||
if (mb_strlen($row->ort) > $maxlength[$col])
|
||||
$maxlength[$col] = mb_strlen($row->ort);
|
||||
$worksheet->write($zeile, $col, $row->ort);
|
||||
|
||||
|
||||
$col++;
|
||||
if ($row->firma_id != '')
|
||||
{
|
||||
@@ -210,15 +168,15 @@ foreach ($mitarbeiterDAO->result as $mitarbeiter)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$col++;
|
||||
|
||||
|
||||
// UDF
|
||||
if (isset($mitarbeiter->p_udf_values))
|
||||
{
|
||||
$udfPerson = json_decode($mitarbeiter->p_udf_values);
|
||||
if (is_object($udfPerson)) $udfPerson = (array)$udfPerson;
|
||||
|
||||
|
||||
foreach($udfTitlesPerson as $udfTitle)
|
||||
{
|
||||
if (isset($udfPerson[$udfTitle['name']]))
|
||||
@@ -234,7 +192,7 @@ foreach ($mitarbeiterDAO->result as $mitarbeiter)
|
||||
else if(is_array($udfPerson[$udfTitle['name']]) && isset($udfTitle['enum']))
|
||||
{
|
||||
$toWrite = $udf->dropdownListValuesToString($udfPerson[$udfTitle['name']], $udfTitle['enum']);
|
||||
|
||||
|
||||
if (mb_strlen($toWrite) > $maxlength[$col])
|
||||
{
|
||||
$maxlength[$col] = mb_strlen($toWrite);
|
||||
@@ -263,4 +221,4 @@ $worksheet->setColumn($col, $col, $maxlength[$col] + 2);
|
||||
|
||||
$workbook->close();
|
||||
|
||||
?>
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user