This commit is contained in:
Andreas Österreicher
2008-03-19 10:33:09 +00:00
parent 7d19c36935
commit fcedac8a3a
4 changed files with 127 additions and 49 deletions
+56 -14
View File
@@ -13,7 +13,8 @@
</h2>
<ul>
<li>Status&auml;nderung f&uuml;r mehrere Studenten auf einmal
(Interessent-&gt;Bewerber, Student-&gt;Diplomand, etc)<br>
(Interessent-&gt;Bewerber, Student-&gt;Diplomand, etc)</li>
<li>Gruppierung von Interessenten<br>
</li>
<li>Projektarbeit - "Betreuer einer Projekt- und Diplomarbeit"
umbenennen in "Betreuer"<br>
@@ -81,11 +82,9 @@ Geburtsdatum konstruiert. </td>
<tr>
</tr>
<tr class="liste0">
<td>Wunsch: statt WS2007 soll WS2007/08 stehen</td>
<td align="center">?<br>
</td>
<td align="center">30+<br>
</td>
<td>Betreuerdaten &auml;ndern. (Update)</td>
<td align="center">AG </td>
<td align="center">15 </td>
</tr>
<tr>
</tr>
@@ -149,9 +148,11 @@ Accountdeaktivierung, zus&auml;tzlich Mail an die Bibliothek<br>
<tr>
</tr>
<tr class="liste0">
<td>Betreuerdaten &auml;ndern. (Update)</td>
<td align="center">AG</td>
<td align="center">15<br>
<td><br>
</td>
<td align="center"><br>
</td>
<td align="center"><br>
</td>
</tr>
<tr>
@@ -396,12 +397,10 @@ Duplizierter Wert, etc.)<br>
<th>Aufwand [h]</th>
</tr>
<tr class="liste0">
<td><br>
</td>
<td align="center"><br>
</td>
<td>Wunsch: statt WS2007 soll WS2007/08 stehen </td>
<td align="center"><br>
</td>
<td align="center">30+ </td>
</tr>
<tr>
</tr>
@@ -422,7 +421,50 @@ Duplizierter Wert, etc.)<br>
<hr>
<h2>Erledigte Anforderungen</h2>
<ul>
<li>Beim anlegen von neuen Buchungen wird jetzt ein Standardbetrag
<li>Personen die mehrere Mitarbeiterdatens&auml;tze haben werden
jetzt richtig angezeigt.<br>
19.03.2008 oesi<br>
<br>
</li>
<li>Fehler beim Sortieren von Pruefungen wurde behoben.<br>
19.03.2008 oesi<br>
<br>
</li>
<li>Es kann jetzt direkt beim Anlegen von Mitarbeitern angegeben
werden ob es sich bei der Person um einen Lektor handelt.<br>
19.03.2008 oesi<br>
<br>
</li>
<li>Beim Anlegen von Mitarbeitern kann jetzt optional die
Personalnummer angegeben werden. Wenn keine Personalnummer angegeben
wird, dann wird automatisch die n&auml;chste verf&uuml;gbare Nummer
verwendet.<br>
19.03.2008 oesi<br>
<br>
</li>
<li>Beim Anlegen von neuen Interessenten/Mitarbeitern wird bei
Auswahl einer bereits vorhandenen Person die neue Adresse
standardm&auml;&szlig;ig NICHT eingetragen.<br>
19.03.2008 oesi<br>
<br>
</li>
<li>Bei der Ansicht, welche Gruppen zu einer Lehreinheit zugeteilt
sind, kann jetzt Studiengang und Semester der Gruppe eingeblendet
werden.<br>
18.03.2008 oesi<br>
<br>
</li>
<li>Die Anmerkung von Prestudenten werden in der
Studenten&uuml;bersicht jetzt korrekt angezeigt.<br>
17.03.2008 oesi<br>
<br>
</li>
<li>In der Studenten&uuml;bersicht wurde die Spalte 'Aufmerksam
durch' hinzugef&uuml;gt.<br>
17.03.2008 oesi<br>
<br>
</li>
<li>Beim Anlegen von neuen Buchungen wird jetzt ein Standardbetrag
und Standardtext vorgeschlagen.<br>
13.03.2008 oesi<br>
<br>
+62 -7
View File
@@ -117,11 +117,11 @@ class mitarbeiter extends benutzer
// ************************************************
function validate()
{
if(utf8_strlen($this->uid)>16)
{
$this->errormsg = "ID darf nicht laenger als 16 Zeichen sein\n";
return false;
}
//if(utf8_strlen($this->uid)>16)
//{
// $this->errormsg = "ID darf nicht laenger als 16 Zeichen sein\n";
// return false;
//}
if($this->uid=='')
{
$this->errormsg = "UID muss eingegeben werden ".$this->personalnummer."\n";
@@ -199,14 +199,69 @@ class mitarbeiter extends benutzer
if($new)
{
if($this->personalnummer=='')
{
do
{
//Wenn keine Personalnummer angegeben wurde, dann die naechste freie Suchen
$qry = "SELECT nextval('public.tbl_mitarbeiter_personalnummer_seq') as id";
if($result = pg_query($this->conn, $qry))
{
if($row = pg_fetch_object($result))
{
$personalnummer = $row->id;
}
else
{
$this->errormsg = 'Fehler beim Ermitteln der Personalnummer';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Ermitteln der Personalnummer';
return false;
}
//Da die Personalnummer auch direkt uebergeben werden kann, ist es moeglich, dass die Personalnummer
//aus dem Serial schon vergeben ist. Deshalb wird zur sicherheit nochmal ueberprueft ob die Nr
//noch frei ist.
$qry = "SELECT personalnummer FROM public.tbl_mitarbeiter WHERE personalnummer='$personalnummer'";
if($result = pg_query($this->conn, $qry))
{
if(pg_num_rows($result)==0)
$this->personalnummer = $personalnummer;
}
} while($this->personalnummer=='');
}
else
{
//Pruefen ob Personalnummer eine gueltige Zahl ist
if(!is_numeric($this->personalnummer))
{
$this->errormsg = 'Personalnummer muss eine gueltige Zahl sein';
return false;
}
//Preufen ob die Personalnummer schon vergeben ist
$qry = "SELECT personalnummer FROM public.tbl_mitarbeiter WHERE personalnummer='$this->personalnummer'";
if($result = pg_query($this->conn, $qry))
{
if(pg_num_rows($result)!=0)
{
$this->errormsg = 'Personalnummer ist bereits vergeben!';
return false;
}
}
}
//Neuen Datensatz anlegen
$qry = "INSERT INTO public.tbl_mitarbeiter(mitarbeiter_uid, ausbildungcode, personalnummer, kurzbz, lektor, ort_kurzbz,
fixangestellt, standort_kurzbz, telefonklappe, anmerkung, stundensatz, updateamum, updatevon, insertamum, insertvon, ext_id, bismelden)
VALUES('".addslashes($this->uid)."',".
$this->addslashes($this->ausbildungcode).",".
$this->addslashes($this->personalnummer).",". //TODO: in Produktivversion nicht angeben
$this->addslashes($this->personalnummer).",".
$this->addslashes($this->kurzbz).','.
($this->lektor?'true':'false').','.
$this->addslashes($this->ort_kurzbz).','.
@@ -71,12 +71,14 @@ function disablefields(obj)
document.getElementById('ueb1').style.display = 'block';
document.getElementById('ueb2').style.display = 'block';
document.getElementById('ueb3').style.display = 'block';
document.getElementById('ueberschreiben3').checked = true;
}
else
{
document.getElementById('ueb1').style.display = 'none';
document.getElementById('ueb2').style.display = 'none';
document.getElementById('ueb3').style.display = 'none';
document.getElementById('ueberschreiben1').checked = true;
}
}
+7 -28
View File
@@ -93,12 +93,14 @@ function disablefields(obj)
document.getElementById('ueb1').style.display = 'block';
document.getElementById('ueb2').style.display = 'block';
document.getElementById('ueb3').style.display = 'block';
document.getElementById('ueberschreiben3').checked = true;
}
else
{
document.getElementById('ueb1').style.display = 'none';
document.getElementById('ueb2').style.display = 'none';
document.getElementById('ueb3').style.display = 'none';
document.getElementById('ueberschreiben1').checked = true;
}
}
@@ -155,6 +157,7 @@ if(!isset($_POST['svnr']))
$ersatzkennzeichen = (isset($_POST['ersatzkennzeichen'])?$_POST['ersatzkennzeichen']:'');
//end Parameter
$geburtsdatum_error=false;
$personalnummer = (isset($_POST['personalnummer'])?trim($_POST['personalnummer']):'');
// *** Speichern der Daten ***
if(isset($_POST['save']))
@@ -291,32 +294,7 @@ if(isset($_POST['save']))
$errormsg = 'Fehler beim Speichern des Benutzers:'.$benutzer->errormsg;
}
}
//Personalnummer ermitteln
//ToDo: Wenn alle Syncscripte abgeschalten sind, dann kann in der Klasse beim Insert die
// Personalnummer entfernt werden. Dann ist dieser Teil nicht mehr noetig
if(!$error)
{
$qry = "SELECT nextval('public.tbl_mitarbeiter_personalnummer_seq') as id";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
$personalnummer = $row->id;
}
else
{
$error = true;
$errormsg = 'Fehler beim Ermitteln der Personalnummer';
}
}
else
{
$error = true;
$errormsg = 'Fehler beim Ermitteln der Personalnummer';
}
}
//Mitarbeiter anlegen
if(!$error)
{
@@ -378,7 +356,7 @@ if(isset($_POST['save']))
else
{
$error = true;
$errormsg = 'Fehler beim laden der Adresse';
$errormsg = 'Fehler beim Laden der Adresse';
}
}
else
@@ -473,7 +451,7 @@ if(isset($_POST['save']))
else
{
pg_query($conn, 'ROLLBACK');
echo '<span class="error">'.$errormsg.'</span>';
echo '<font class="error">'.$errormsg.'</font>';
}
}
// *** SAVE ENDE ***
@@ -545,6 +523,7 @@ if($result = pg_query($conn, $qry))
echo '</SELECT>';
echo '</td></tr>';
echo '<tr><td>Lektor</td><td><input type="checkbox" name="lektor" '.($lektor?'checked':'').' /></td></tr>';
echo '<tr><td>Personalnummer</td><td><input type="text" name="personalnummer" size="4" value="'.$personalnummer.'" /> (optional)</td></tr>';
echo '<tr><td>Anmerkungen</td><td><textarea id="anmerkung" name="anmerkungen">'.$anmerkungen.'</textarea></td></tr>';
echo '<tr><td></td><td>';