* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/mitarbeiter.class.php');
require_once('../../include/ort.class.php');
require_once('../../include/organisationseinheit.class.php');
require_once('../../include/person.class.php');
require_once('../../include/betriebsmittel.class.php');
require_once('../../include/betriebsmittelperson.class.php');
require_once('../../include/betriebsmitteltyp.class.php');
require_once('../../include/betriebsmittelstatus.class.php');
require_once('../../include/betriebsmittel_betriebsmittelstatus.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/wawi_rechnung.class.php');
if (!$uid = get_uid())
die('Keine UID gefunden ! Zurück');
// ------------------------------------------------------------------------------------------
// Initialisierung
// ------------------------------------------------------------------------------------------
$errormsg=array();
$default_status_vorhanden='vorhanden'; // Defaultwert fuer Selectfeld - Status
//------------ Berechtigungen
$berechtigung_kurzbz='wawi/inventar:begrenzt';
$recht=false;
$delete_recht=false;
$schreib_recht=false;
$schreib_recht_administration=2; // Admin wert fuer set schreib_recht
$datum_obj = new datum();
// ------------------------------------------------------------------------------------------
// Parameter Aufruf uebernehmen
// ------------------------------------------------------------------------------------------
$inventarnummer=trim((isset($_REQUEST['inventarnummer']) ? $_REQUEST['inventarnummer']:''));
$seriennummer=trim((isset($_REQUEST['seriennummer']) ? $_REQUEST['seriennummer']:''));
$ort_kurzbz=trim((isset($_REQUEST['ort_kurzbz']) ? $_REQUEST['ort_kurzbz']:''));
$oe_kurzbz=trim((isset($_REQUEST['oe_kurzbz']) ? $_REQUEST['oe_kurzbz']:''));
$beschreibung=trim((isset($_REQUEST['beschreibung']) ? $_REQUEST['beschreibung']:''));
$betriebsmittel_id=trim((isset($_REQUEST['betriebsmittel_id']) ? $_REQUEST['betriebsmittel_id']:''));
$betriebsmitteltyp=trim((isset($_REQUEST['betriebsmitteltyp']) ? $_REQUEST['betriebsmitteltyp']:''));
$betriebsmittelstatus_kurzbz=trim((isset($_REQUEST['betriebsmittelstatus_kurzbz']) ? $_REQUEST['betriebsmittelstatus_kurzbz']:''));
$firma_id=trim(isset($_REQUEST['firma_id'])?$_REQUEST['firma_id']:'');
$bestellnr=trim(isset($_REQUEST['bestellnr'])?$_REQUEST['bestellnr']:'');
$bestellung_id=trim(isset($_REQUEST['bestellung_id'])?$_REQUEST['bestellung_id']:'');
$bestelldetail_id=trim(isset($_REQUEST['bestelldetail_id'])?$_REQUEST['bestelldetail_id']:'');
$hersteller=trim((isset($_REQUEST['hersteller']) ? $_REQUEST['hersteller']:''));
$jahr_monat=trim(isset($_REQUEST['jahr_monat']) ? $_REQUEST['jahr_monat']:'');
$afa=trim(isset($_REQUEST['afa']) ? $_REQUEST['afa']:'');
$inventur_jahr=trim(isset($_REQUEST['inventur_jahr']) ? $_REQUEST['inventur_jahr']:'');
$person_id=trim(isset($_REQUEST['person_id']) ? $_REQUEST['person_id']:'');
if (!empty($person_id) && !is_numeric($person_id))
{
if ($oBenutzer = new benutzer($person_id))
$person_id=$oBenutzer->person_id;
}
$debug=trim(isset($_REQUEST['debug']) ? $_REQUEST['debug']:false);
// Erweiterte Suche On-Off
$extend_search=trim(isset($_REQUEST['extend_search']) ?$_REQUEST['extend_search']:'false');
$check=$betriebsmitteltyp.$bestellung_id.$bestelldetail_id.$bestellnr.$hersteller.$firma_id.$beschreibung.$oe_kurzbz.$person_id;
$extend_search=($check?'true':$extend_search);
// ------------------------------------------------------------------------------------------
// Berechtigung
// ------------------------------------------------------------------------------------------
$oBenutzerberechtigung = new benutzerberechtigung();
$oBenutzerberechtigung->errormsg='';
$oBenutzerberechtigung->berechtigungen=array();
if (!$oBenutzerberechtigung->getBerechtigungen($uid))
die('Sie haben keine Berechtigung ! Zurück');
$recht=false;
if($oBenutzerberechtigung->isBerechtigt($berechtigung_kurzbz,($oe_kurzbz),'s')
|| $oBenutzerberechtigung->isBerechtigt($berechtigung_kurzbz,null,'s'))
$recht=true;
if (!$recht)
die('Sie haben keine Berechtigung für diese Seite ! Zurück');
// Pruefen ob Schreibrechte (Anzeigen der Aenderungsmoeglichkeit)
if($oBenutzerberechtigung->isBerechtigt($berechtigung_kurzbz,null,'su'))
$schreib_recht=true;
// Pruefen ob Schreibrechte (Anzeigen der Aenderungsmoeglichkeit)
if($oBenutzerberechtigung->isBerechtigt($berechtigung_kurzbz,null,'suid'))
$delete_recht=true;
if($oBenutzerberechtigung->isBerechtigt('wawi/inventar', null, 'suid') )
$schreib_recht=$schreib_recht_administration;
// ------------------------------------------------------------------------------------------
// Verarbeitung - Ajax oder Work
// ------------------------------------------------------------------------------------------
$ajax=trim(isset($_REQUEST['ajax']) ?$_REQUEST['ajax']:false);
$work=trim(isset($_REQUEST['work']) ?$_REQUEST['work']:false);
// Statusaenderung
if (($ajax && strtolower($ajax)=='set_status')
|| ($work && strtolower($work)=='set_status') )
{
if($schreib_recht)
{
$oBetriebsmittel = new betriebsmittel($betriebsmittel_id);
$oBetriebsmittel->result=array();
$oBetriebsmittel->debug=$debug;
$oBetriebsmittel->errormsg='';
$oBetriebsmittel->updatevon=$uid;
$oBetriebsmittel->updateamum=date('Y-m-d H:i:s');
if ($oBetriebsmittel->save())
{
$oBetriebsmittel_betriebsmittelstatus = new betriebsmittel_betriebsmittelstatus();
$oBetriebsmittel_betriebsmittelstatus->result=array();
$oBetriebsmittel_betriebsmittelstatus->errormsg='';
$oBetriebsmittel_betriebsmittelstatus->debug=$debug;
$oBetriebsmittel_betriebsmittelstatus->new=true;
$oBetriebsmittel_betriebsmittelstatus->betriebsmittelbetriebsmittelstatus_id=trim(isset($_REQUEST['betriebsmittelbetriebsmittelstatus_id']) ? $_REQUEST['betriebsmittelbetriebsmittelstatus_id']:'');
$oBetriebsmittel_betriebsmittelstatus->betriebsmittel_id=$oBetriebsmittel->betriebsmittel_id;
$oBetriebsmittel_betriebsmittelstatus->datum=date('Ymd');
$oBetriebsmittel_betriebsmittelstatus->updatevon=$uid;
$oBetriebsmittel_betriebsmittelstatus->updateamum=date('Y-m-d H:i:s');
$oBetriebsmittel_betriebsmittelstatus->insertvon=$uid;
$oBetriebsmittel_betriebsmittelstatus->insertamum=date('Y-m-d H:i:s');
$oBetriebsmittel_betriebsmittelstatus->betriebsmittelstatus_kurzbz=trim((isset($_REQUEST['betriebsmittelstatus_kurzbz']) ? $_REQUEST['betriebsmittelstatus_kurzbz']:''));
if ($oBetriebsmittel_betriebsmittelstatus->save())
$errormsg[]='
';
else
$errormsg[]=$oBetriebsmittel_betriebsmittelstatus->errormsg;
}
else
$errormsg[]=$oBetriebsmittel->errormsg;
} // Recht
else
$errormsg[]='Sie haben keine Berechtigung fuer die Datenbearbeitung';
// Fehlerausgabe bzw. Informationen ueber den Status der Verarbeitung
}
// Bestellposition aendern
if (($ajax && strtolower($ajax)=='set_position')
|| ($work && strtolower($work)=='set_position') )
{
if($schreib_recht)
{
$oBetriebsmittel = new betriebsmittel($betriebsmittel_id);
$oBetriebsmittel->result=array();
$oBetriebsmittel->debug=$debug;
$oBetriebsmittel->errormsg='';
if (is_numeric($bestellung_id))
{
$oBetriebsmittel->bestellung_id=$bestellung_id;
$oBetriebsmittel->bestelldetail_id=$bestelldetail_id;
$oBetriebsmittel->updatevon=$uid;
$oBetriebsmittel->updateamum=date('Y-m-d H:i:s');
if (!$oBetriebsmittel->save(false))
$errormsg[]=$oBetriebsmittel->errormsg;
}
else
$errormsg[]='Bestellung ID '.$bestellung_id.' falsch';
}
else
$errormsg[]='Sie haben keine Berechtigung fuer die Datenbearbeitung';
// Fehlerausgabe bzw. Informationen ueber den Status der Verarbeitung
}
// Inventur setzen
if (($ajax && strtolower($ajax)=='set_inventur')
|| ($work && strtolower($work)=='set_inventur') )
{
if($schreib_recht)
{
$oBetriebsmittel = new betriebsmittel();
if($oBetriebsmittel->load($betriebsmittel_id))
{
$oBetriebsmittel->updatevon = $uid;
$oBetriebsmittel->updateamum = date('Y-m-d H:i:s');
$oBetriebsmittel->inventuramum = date('Y-m-d H:i:s');
$oBetriebsmittel->inventurvon = $uid;
if (!$oBetriebsmittel->save())
$errormsg[]=$oBetriebsmittel->errormsg;
}
else
$errormsg[]='BetriebsmittelID ist falsch';
}
else
$errormsg[]='Sie haben keine Berechtigung fuer die Datenbearbeitung';
// Fehlerausgabe bzw. Informationen ueber den Status der Verarbeitung
}
// Betriebsmittel Baum entfernen - Personen,Status,Inventar
if (($ajax && strtolower($ajax)=='set_delete')
|| ($work && strtolower($work)=='set_delete') )
{
if($schreib_recht==$schreib_recht_administration)
{
$oBetriebsmittel = new betriebsmittel($betriebsmittel_id);
$oBetriebsmittel->result=array();
$oBetriebsmittel->debug=$debug;
$oBetriebsmittel->errormsg='';
if (is_numeric($betriebsmittel_id))
{
$oBetriebsmittel_betriebsmittelstatus = new betriebsmittel_betriebsmittelstatus();
$oBetriebsmittel_betriebsmittelstatus->result=array();
$oBetriebsmittel_betriebsmittelstatus->debug=$debug;
$oBetriebsmittel_betriebsmittelstatus->errormsg='';
if ($oBetriebsmittel_betriebsmittelstatus->delete_betriebsmittel($betriebsmittel_id))
{
$oBetriebsmittelperson = new betriebsmittelperson();
$oBetriebsmittelperson->result=array();
$oBetriebsmittelperson->debug=$debug;
$oBetriebsmittelperson->errormsg='';
$person_id=null;
if ($oBetriebsmittelperson->delete_betriebsmittel($betriebsmittel_id))
{
$oBetriebsmittel->errormsg='';
if ($oBetriebsmittel->delete($betriebsmittel_id))
{
$errormsg[]='Betriebsmittel '.($inventarnummer?$inventarnummer.'/ ID '.$betriebsmittel_id:$betriebsmittel_id).' wurde entfernt';
}
else
$errormsg[]=$oBetriebsmittel->errormsg;
}
else
$errormsg[]=$oBetriebsmittelperson->errormsg;
}
else
$errormsg[]=$oBetriebsmittel_betriebsmittelstatus->errormsg;
}
else
$errormsg[]='Betriebsmittel ID '.$betriebsmittel_id.' falsch';
}
else
$errormsg[]='Sie haben keine Berechtigung zum Entfernen der Daten';
}
// Bei einem Ajax Call nun das Script mit der Meldungsausgabe beenden
if (!empty($ajax))
{
if (is_array($errormsg) && count($errormsg)>0)
exit(implode(", ",$errormsg));
elseif (!is_array($errormsg))
exit($errormsg);
else
exit('
');
}
// Wurde die Betriebsmittel ID uebergeben - die inventarnummer dazu ermitteln
if ($betriebsmittel_id && empty($inventarnummer))
{
if ($oBetriebsmittel = new betriebsmittel($betriebsmittel_id))
$inventarnummer=$oBetriebsmittel->inventarnummer;
}
// ------------------------------------------------------------------------------------------
// Datenbankanbindung
// ------------------------------------------------------------------------------------------
$oOrt = new ort();
$oOrt->result=array();
$oOrganisationseinheit = new organisationseinheit();
$oOrganisationseinheit->result=array();
$oBetriebsmittel = new betriebsmittel();
$oBetriebsmittel->result=array();
$oBetriebsmittel->debug=$debug;
$oBetriebsmitteltyp = new betriebsmitteltyp();
$oBetriebsmitteltyp->result=array();
$oBetriebsmittelstatus = new betriebsmittelstatus();
$oBetriebsmittelstatus->result=array();
// ------------------------------------------------------------------------------------------
// Datenlesen
// ------------------------------------------------------------------------------------------
// Organisation - Inventarverwalter
$oes=new organisationseinheit();
if (!$oOrganisationseinheit->loadArray($oBenutzerberechtigung->getOEkurzbz($berechtigung_kurzbz),'oe_kurzbz'))
$errormsg[]=$oOrganisationseinheit->errormsg;
$extend_search=true;
$resultOrganisationseinheit=$oOrganisationseinheit->result;
// Typtable
if (!$oBetriebsmitteltyp->getAll())
$errormsg[]=$oBetriebsmitteltyp->errormsg;
$resultBetriebsmitteltyp=$oBetriebsmitteltyp->result;
// Statustable
if (!$rows=$oBetriebsmittelstatus->getAll())
$errormsg[]=$oBetriebsmittelstatus->errormsg;
$resultBetriebsmittelstatus=$oBetriebsmittelstatus->result;
// ------------------------------------------------------------------------------------------
// HTML Output
// ------------------------------------------------------------------------------------------
?>
';
}
$htmlstring.=''.$resultBetriebsmittel[$pos]->bestellnr.'';
echo '