mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-16 22:42:16 +00:00
display only projektphasen of the user
This commit is contained in:
@@ -1936,6 +1936,9 @@ function getDataForProjectOverviewCSV($user)
|
||||
$projects_of_user = new projekt();
|
||||
$projects= $projects_of_user->getProjekteListForMitarbeiter($user);
|
||||
|
||||
$projektphase = new projektphase();
|
||||
$projektphasen = $projektphase->getProjectphaseForMitarbeiter($user);
|
||||
|
||||
$csvData = array();
|
||||
//headers schreiben
|
||||
$csvData[] = array('PROJEKT', 'PROJEKT KURZBEZEICHNUNG', 'PROJEKTPHASE', 'PROJEKTPHASEN ID', 'START', 'PROJEKT ENDE');
|
||||
@@ -1951,25 +1954,27 @@ function getDataForProjectOverviewCSV($user)
|
||||
|
||||
$csvData[] = array($titel, $projekt_kurzbz,$projekt_phase,$projekt_phase_id, $beginn, $ende);
|
||||
|
||||
$projektphasen = new projektphase();
|
||||
//$projektphasen = new projektphase();
|
||||
|
||||
if($projektphasen->getProjectphaseForMitarbeiter($user))
|
||||
{
|
||||
foreach($projektphasen->result as $projektphase)
|
||||
|
||||
foreach($projektphasen as $prjp)
|
||||
{
|
||||
$projekt_phase = $projektphase->bezeichnung;
|
||||
$projekt_phase_id = $projektphase->projektphase_id;
|
||||
if(!empty($projektphase->beginn))
|
||||
$beginn = $projektphase->beginn;
|
||||
else
|
||||
$beginn = $project->beginn;
|
||||
if(!empty($projektphase->ende))
|
||||
$ende = $projektphase->ende;
|
||||
else
|
||||
$ende = $project->ende;
|
||||
$csvData[] = array($titel, $projekt_kurzbz,$projekt_phase, $projekt_phase_id, $beginn, $ende);
|
||||
if($prjp->projekt_kurzbz===$projekt_kurzbz)
|
||||
{
|
||||
$projekt_phase = $prjp->bezeichnung;
|
||||
$projekt_phase_id = $prjp->projektphase_id;
|
||||
if (!empty($prjp->beginn))
|
||||
$beginn = $prjp->beginn;
|
||||
else
|
||||
$beginn = $project->beginn;
|
||||
if (!empty($prjp->ende))
|
||||
$ende = $prjp->ende;
|
||||
else
|
||||
$ende = $project->ende;
|
||||
$csvData[] = array($titel, $projekt_kurzbz, $projekt_phase, $projekt_phase_id, $beginn, $ende);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
return $csvData;
|
||||
}
|
||||
|
||||
@@ -1,26 +1,36 @@
|
||||
<?php
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
/*require_once('../../../include/functions.inc.php');*/
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
require_once('../../../include/projektphase.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
|
||||
//$uid=get_uid();
|
||||
$user = get_uid();
|
||||
if(isset($_GET['projekt_kurzbz'])) // TODO maybe check that phasen only shown if projekt is projekt of logged in user
|
||||
{
|
||||
$projekt_kurzbz = $_GET['projekt_kurzbz'];
|
||||
$projektphase = new projektphase();
|
||||
|
||||
$projektphasen_user = $projektphase->getProjectphaseForMitarbeiterByKurzBz($user, $projekt_kurzbz);
|
||||
$pp_user_ids = array();
|
||||
foreach ($projektphasen_user as $pp_user)
|
||||
{
|
||||
array_push($pp_user_ids, $pp_user->projektphase_id);
|
||||
}
|
||||
|
||||
if($projektphase->getProjektphasen($projekt_kurzbz))
|
||||
{
|
||||
$result_obj = array();
|
||||
foreach($projektphase->result as $row)
|
||||
{
|
||||
$item['projektphase_id']=$row->projektphase_id;
|
||||
$item['bezeichnung']=$row->bezeichnung;
|
||||
$result_obj[]=$item;
|
||||
if(in_array($row->projektphase_id, $pp_user_ids))
|
||||
{
|
||||
$item['projektphase_id'] = $row->projektphase_id;
|
||||
$item['bezeichnung'] = $row->bezeichnung;
|
||||
$result_obj[] = $item;
|
||||
}
|
||||
}
|
||||
echo json_encode($result_obj);
|
||||
}
|
||||
|
||||
@@ -657,9 +657,14 @@ class projektphase extends basis_db
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Projektphase mit der ID des mitarbeiters
|
||||
* @param $mitarbeiter_uid der zu ladenden Projektphase des users
|
||||
* @return array wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function getProjectphaseForMitarbeiter($mitarbeiter_uid)
|
||||
{
|
||||
|
||||
$projecphasetList = array();
|
||||
/*$qry = "SELECT DISTINCT
|
||||
tbl_projekt.*
|
||||
FROM
|
||||
@@ -697,10 +702,10 @@ class projektphase extends basis_db
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
while ($row = $this->db_fetch_object($result)) {
|
||||
$obj = new projektphase();
|
||||
|
||||
$obj->projekt_kurzbz = $row->projekt_kurzbz;
|
||||
$obj->projektphase_id = $row->projektphase_id;
|
||||
$obj->projektphase_fk = $row->projektphase_fk;
|
||||
@@ -713,21 +718,97 @@ class projektphase extends basis_db
|
||||
$obj->farbe = $row->farbe;
|
||||
$obj->budget = $row->budget;
|
||||
$obj->ressource_id = $row->ressource_id;
|
||||
$obj->ressource_bezeichnung = $row->ressource_bezeichnung;
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
$obj->updateamum = $row->updateamum;
|
||||
$obj->updatevon = $row->updatevon;
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Datensatz wurde nicht gefunden';
|
||||
return false;
|
||||
|
||||
array_push($projecphasetList, $obj);
|
||||
}
|
||||
return $projecphasetList;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Projektphase mit der ID des mitarbeiters für das jeweilige Projekt
|
||||
* @param $mitarbeiter_uid der zu ladenden Projektphase des users
|
||||
* @param $prjkzbz des zu landenen Projekts
|
||||
* @return array wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function getProjectphaseForMitarbeiterByKurzBz($mitarbeiter_uid, $prjkzbz)
|
||||
{
|
||||
$projecphasetList = array();
|
||||
/*$qry = "SELECT DISTINCT
|
||||
tbl_projekt.*
|
||||
FROM
|
||||
fue.tbl_ressource
|
||||
JOIN fue.tbl_projekt_ressource USING(ressource_id)
|
||||
JOIN fue.tbl_projekt USING(projekt_kurzbz)
|
||||
WHERE (beginn<=now() or beginn is null)
|
||||
AND (ende + interval '1 month 1 day' >=now() OR ende is null)
|
||||
AND
|
||||
(
|
||||
mitarbeiter_uid=" . $this->db_add_param($mitarbeiter_uid) . " OR
|
||||
student_uid=" . $this->db_add_param($mitarbeiter_uid) . "
|
||||
)";*/
|
||||
|
||||
$qry = "
|
||||
|
||||
SELECT DISTINCT
|
||||
tbl_projektphase.*
|
||||
FROM
|
||||
fue.tbl_projektphase
|
||||
JOIN fue.tbl_projekt USING (projekt_kurzbz)
|
||||
JOIN fue.tbl_projekt_ressource USING (projektphase_id)
|
||||
JOIN fue.tbl_ressource ON (tbl_ressource.ressource_id=tbl_projekt_ressource.ressource_id)
|
||||
WHERE
|
||||
(
|
||||
(
|
||||
(tbl_projekt.beginn<=now() or tbl_projekt.beginn is null)
|
||||
AND (tbl_projekt.ende + interval '1 month 1 day' >=now() OR tbl_projekt.ende is null)
|
||||
) OR (
|
||||
(tbl_projektphase.start<=now() or tbl_projektphase.start is null)
|
||||
AND (tbl_projektphase.ende + interval '1 month 1 day' >=now() OR tbl_projektphase.ende is null)
|
||||
)
|
||||
)
|
||||
AND mitarbeiter_uid=" . $this->db_add_param($mitarbeiter_uid);
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new projektphase();
|
||||
|
||||
$obj->projekt_kurzbz = $row->projekt_kurzbz;
|
||||
$obj->projektphase_id = $row->projektphase_id;
|
||||
$obj->projektphase_fk = $row->projektphase_fk;
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
$obj->typ = $row->typ;
|
||||
$obj->beschreibung = $row->beschreibung;
|
||||
$obj->start = $row->start;
|
||||
$obj->ende = $row->ende;
|
||||
$obj->personentage = $row->personentage;
|
||||
$obj->farbe = $row->farbe;
|
||||
$obj->budget = $row->budget;
|
||||
$obj->ressource_id = $row->ressource_id;
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
$obj->updateamum = $row->updateamum;
|
||||
$obj->updatevon = $row->updatevon;
|
||||
|
||||
$this->result[] = $obj;
|
||||
|
||||
if($prjkzbz === $row->projekt_kurzbz )
|
||||
array_push($projecphasetList, $obj);
|
||||
}
|
||||
return $projecphasetList;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -735,6 +816,5 @@ class projektphase extends basis_db
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user