- Aufwandstyp pro Projekt einstellbar
   - Aufwand kann bei Ressourcezuordnung eingetragen werden
   - Ressourcenauslastung für Tasks
   - Aufwandssumme wird in Ressourcenauslastung angezeigt
   - Fehler beim Speichern und in der Anzeige behoben wenn Sonderzeichen in den Beschreibungen verwendet wurden
This commit is contained in:
Andreas Österreicher
2014-06-03 08:25:53 +00:00
parent d6bed5dbe4
commit 097eeb46a1
21 changed files with 474 additions and 63 deletions
+7 -3
View File
@@ -130,6 +130,7 @@ class projekt extends basis_db
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->budget = $row->budget;
$obj->farbe = $row->farbe;
$obj->aufwandstyp_kurzbz = $row->aufwandstyp_kurzbz;
$this->result[] = $obj;
}
@@ -211,6 +212,7 @@ class projekt extends basis_db
$obj->oe_kurzbz = $row->oe_kurzbz;
$obj->budget = $row->budget;
$obj->farbe = $row->farbe;
$obj->aufwandstyp_kurzbz = $row->aufwandstyp_kurzbz;
$this->result[] = $obj;
}
@@ -278,7 +280,7 @@ class projekt extends basis_db
{
//Neuen Datensatz einfuegen
$qry='INSERT INTO fue.tbl_projekt (projekt_kurzbz, nummer, titel,beschreibung, beginn, ende, budget, farbe, oe_kurzbz) VALUES('.
$qry='INSERT INTO fue.tbl_projekt (projekt_kurzbz, nummer, titel,beschreibung, beginn, ende, budget, farbe, oe_kurzbz, aufwandstyp_kurzbz) VALUES('.
$this->addslashes($this->projekt_kurzbz).', '.
$this->addslashes($this->nummer).', '.
$this->addslashes($this->titel).', '.
@@ -287,7 +289,8 @@ class projekt extends basis_db
$this->addslashes($this->ende).', '.
$this->addslashes($this->budget).', '.
$this->addslashes($this->farbe).', '.
$this->addslashes($this->oe_kurzbz).');';
$this->addslashes($this->oe_kurzbz).','.
$this->addslashes($this->aufwandstyp_kurzbz).');';
}
else
{
@@ -302,7 +305,8 @@ class projekt extends basis_db
'ende='.$this->addslashes($this->ende).', '.
'budget='.$this->addslashes($this->budget).', '.
'farbe='.$this->addslashes($this->farbe).', '.
'oe_kurzbz='.$this->addslashes($this->oe_kurzbz).' '.
'oe_kurzbz='.$this->addslashes($this->oe_kurzbz).', '.
'aufwandstyp_kurzbz='.$this->addslashes($this->aufwandstyp_kurzbz).' '.
'WHERE projekt_kurzbz='.$this->addslashes($this->projekt_kurzbz).';';
}
+92 -17
View File
@@ -43,7 +43,7 @@ class ressource extends basis_db
public $projektphase_id;
public $projekt_kurzbz;
public $funktion_kurzbz;
public $aufwand;
/**
* Konstruktor
@@ -150,7 +150,7 @@ class ressource extends basis_db
*/
public function getProjectRessourcen($project_kurzbz)
{
$qry = "SELECT ressource.* FROM fue.tbl_ressource as ressource
$qry = "SELECT ressource.*, project.projekt_ressource_id, project.aufwand FROM fue.tbl_ressource as ressource
JOIN fue.tbl_projekt_ressource project ON(project.ressource_id = ressource.ressource_id)
WHERE project.projekt_kurzbz ='".addslashes($project_kurzbz)."';";
@@ -173,6 +173,9 @@ class ressource extends basis_db
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->aufwand = $row->aufwand;
$obj->projekt_ressource_id= $row->projekt_ressource_id;
$this->result[] = $obj;
}
//var_dump($this->result);
@@ -193,7 +196,7 @@ class ressource extends basis_db
*/
public function getPhaseRessourcen($projektphase_id)
{
$qry = "SELECT ressource.* FROM fue.tbl_ressource as ressource
$qry = "SELECT ressource.*, project.aufwand, project.projekt_ressource_id FROM fue.tbl_ressource as ressource
JOIN fue.tbl_projekt_ressource project ON(project.ressource_id = ressource.ressource_id)
WHERE project.projektphase_id ='".addslashes($projektphase_id)."';";
@@ -216,6 +219,8 @@ class ressource extends basis_db
$obj->insertvon = $row->insertvon;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->aufwand = $row->aufwand;
$obj->projekt_ressource_id = $row->projekt_ressource_id;
$this->result[] = $obj;
}
//var_dump($this->result);
@@ -243,12 +248,13 @@ class ressource extends basis_db
{
//Neuen Datensatz einfuegen
$qry='BEGIN; INSERT INTO fue.tbl_projekt_ressource (projektphase_id, projekt_kurzbz,
ressource_id, funktion_kurzbz, beschreibung) VALUES ('.
ressource_id, funktion_kurzbz, beschreibung, aufwand) VALUES ('.
$this->addslashes($this->projektphase_id).', '.
$this->addslashes($this->projekt_kurzbz).', '.
$this->addslashes($this->ressource_id).', '.
$this->addslashes($this->funktion_kurzbz).', '.
$this->addslashes($this->beschreibung).'); ';
$this->addslashes($this->beschreibung).', '.
$this->addslashes($this->aufwand, FHC_INTEGER).'); ';
}
else
{
@@ -258,7 +264,8 @@ class ressource extends basis_db
'projekt_kurzbz='.$this->addslashes($this->projekt_kurzbz).', '.
'ressource_id='.$this->addslashes($this->ressource_id).', '.
'funktion_kurzbz='.$this->addslashes($this->funktion_kurzbz).', '.
'beschreibung='.$this->addslashes($this->beschreibung).' '.
'beschreibung='.$this->addslashes($this->beschreibung).', '.
'aufwand='.$this->addslashes($this->aufwand).' '.
'WHERE projekt_ressource_id='.$this->addslashes($this->projekt_ressource_id).';';
}
@@ -435,11 +442,12 @@ class ressource extends basis_db
tbl_ressource.bezeichnung, tbl_ressource.beschreibung
FROM
fue.tbl_ressource
LEFT JOIN fue.tbl_projekt_ressource USING(ressource_id)
LEFT JOIN fue.tbl_projekt USING(projekt_kurzbz)
JOIN fue.tbl_projekt_ressource USING(ressource_id)
JOIN fue.tbl_projekt USING(projekt_kurzbz)
WHERE
(tbl_projekt.beginn<='".addslashes($endedatum)."' OR tbl_projekt.beginn is null) AND
(tbl_projekt.ende>='".addslashes($datum)."' OR tbl_projekt.ende is null) ";
(tbl_projekt.beginn<=".$this->db_add_param($endedatum)." OR tbl_projekt.beginn is null) AND
(tbl_projekt.ende>=".$this->db_add_param($datum)." OR tbl_projekt.ende is null)
ORDER BY bezeichnung";
if($result = $this->db_query($qry))
{
@@ -459,6 +467,7 @@ class ressource extends basis_db
$obj->firma_id = $row->firma_id;
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
$obj->aufwand = $row->aufwand;
$this->result[] = $obj;
}
@@ -469,8 +478,8 @@ class ressource extends basis_db
* Liefert die Ressourcen aller Projektphasen die zu einem bestimmten Datum aktiv sind
*
* @param $datum
*/
public function getProjektphaseRessourceDatum($datum, $endedatum)
*/
public function getProjektphaseRessourceDatum($datum, $endedatum, $projekt_kurzbz=null)
{
$qry = "
SELECT
@@ -480,12 +489,17 @@ class ressource extends basis_db
tbl_ressource.bezeichnung, tbl_ressource.beschreibung
FROM
fue.tbl_ressource
LEFT JOIN fue.tbl_projekt_ressource USING(ressource_id)
LEFT JOIN fue.tbl_projektphase USING(projektphase_id)
JOIN fue.tbl_projekt_ressource USING(ressource_id)
JOIN fue.tbl_projektphase USING(projektphase_id)
WHERE
(tbl_projektphase.start<='".addslashes($endedatum)."' OR tbl_projektphase.start is null) AND
(tbl_projektphase.ende>='".addslashes($datum)."' OR tbl_projektphase.ende is null)
ORDER BY tbl_ressource.bezeichnung";
(tbl_projektphase.start<=".$this->db_add_param($endedatum)." OR tbl_projektphase.start is null) AND
(tbl_projektphase.ende>=".$this->db_add_param($datum)." OR tbl_projektphase.ende is null)
";
if(!is_null($projekt_kurzbz))
{
$qry.=" AND tbl_projektphase.projekt_kurzbz=".$this->db_add_param($projekt_kurzbz);
}
$qry.=" ORDER BY tbl_ressource.bezeichnung";
if($result = $this->db_query($qry))
{
@@ -505,6 +519,7 @@ class ressource extends basis_db
$obj->firma_id = $row->firma_id;
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
$obj->aufwand = $row->aufwand;
$this->result[] = $obj;
}
@@ -515,6 +530,66 @@ class ressource extends basis_db
return false;
}
}
/**
* Liefert die Ressourcen aller Projektphasen die zu einem bestimmten Datum aktiv sind
*
* @param $datum
* @param $endedatum
* @param $projekt_kurzbz optional
*/
public function getTaskRessoureDatum($datum, $endedatum, $projekt_kurzbz=null)
{
$qry = "
SELECT
distinct
tbl_projekttask.*, tbl_projektphase.start, tbl_projekttask.ende,
tbl_ressource.student_uid, tbl_ressource.mitarbeiter_uid, tbl_ressource.betriebsmittel_id, tbl_ressource.firma_id,
tbl_ressource.bezeichnung, tbl_ressource.beschreibung
FROM
fue.tbl_ressource
LEFT JOIN fue.tbl_projekttask USING(ressource_id)
LEFT JOIN fue.tbl_projektphase USING(projektphase_id)
WHERE
(tbl_projektphase.start<=".$this->db_add_param($endedatum)." OR tbl_projektphase.start is null) AND
((tbl_projektphase.ende>=".$this->db_add_param($datum)." OR tbl_projektphase.ende is null) AND
(tbl_projekttask.ende>=".$this->db_add_param($datum)." OR tbl_projekttask.ende is null))
";
if(!is_null($projekt_kurzbz))
{
$qry.=" AND projekt_kurzbz=".$this->db_add_param($projekt_kurzbz);
}
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new ressource();
$obj->projekttask_id = $row->projekttask_id;
$obj->projektphase_id = $row->projektphase_id;
$obj->start = $row->start;
$obj->ende = $row->ende;
$obj->ressource_id = $row->ressource_id;
$obj->student_uid = $row->student_uid;
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
$obj->betriebsmittel_id = $row->betriebsmittel_id;
$obj->firma_id = $row->firma_id;
$obj->bezeichnung = $row->bezeichnung;
$obj->beschreibung = $row->beschreibung;
$obj->aufwand = $row->aufwand;
$this->result[] = $obj;
}
}
else
{
$this->errorsmg = 'Fehler beim Laden';
return false;
}
}
/**
* Löscht eine Ressource zu Projekt Zuordnung