mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 20:29:29 +00:00
added GUI for managing Issues Zuständigkeiten
This commit is contained in:
@@ -6,7 +6,7 @@ class Issues extends Auth_Controller
|
||||
{
|
||||
private $_uid;
|
||||
|
||||
const FUNKTION_KURZBZ = 'ass'; // // user having this funktion can see issues for oes assigned with this funktion
|
||||
const FUNKTION_KURZBZ = 'ass'; // user having this funktion can see issues for oes assigned with this funktion
|
||||
const BERECHTIGUNG_KURZBZ = 'system/issues_verwalten'; // user having this permission can see issues for oes assigned with this permission
|
||||
|
||||
public function __construct()
|
||||
|
||||
@@ -0,0 +1,192 @@
|
||||
<?php
|
||||
|
||||
if (! defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
class IssuesZustaendigkeiten extends Auth_Controller
|
||||
{
|
||||
private $_uid;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct(
|
||||
array(
|
||||
'index' => 'admin:r',
|
||||
'getApps' => 'admin:r',
|
||||
'getFehlercodes' => 'admin:r',
|
||||
'getNonAssignedZustaendigkeiten' => 'admin:r',
|
||||
'addZustaendigkeit' => 'admin:rw',
|
||||
'deleteZustaendigkeit' => 'admin:rw'
|
||||
)
|
||||
);
|
||||
|
||||
// Load libraries
|
||||
$this->load->library('IssuesLib');
|
||||
$this->load->library('WidgetLib');
|
||||
|
||||
// Load models
|
||||
$this->load->model('system/Fehler_model', 'FehlerModel');
|
||||
$this->load->model('system/Fehlerzustaendigkeiten_model', 'FehlerzustaendigkeitenModel');
|
||||
|
||||
$this->loadPhrases(
|
||||
array(
|
||||
'global',
|
||||
'ui',
|
||||
'filter',
|
||||
'lehre',
|
||||
'person',
|
||||
'fehlermonitoring'
|
||||
)
|
||||
);
|
||||
|
||||
$this->_setAuthUID(); // sets property uid
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$this->load->view("system/issues/issuesZustaendigkeiten.php");
|
||||
}
|
||||
|
||||
/**
|
||||
* Loads all Apps to which Fehler exist.
|
||||
*/
|
||||
public function getApps()
|
||||
{
|
||||
$this->FehlerModel->addDistinct();
|
||||
$this->FehlerModel->addSelect('app');
|
||||
$this->FehlerModel->addOrder('app');
|
||||
|
||||
$appRes = $this->FehlerModel->load();
|
||||
|
||||
$this->outputJson($appRes);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all fehlercodes, optionally by app.
|
||||
*/
|
||||
public function getFehlercodes()
|
||||
{
|
||||
$app = $this->input->get('app');
|
||||
|
||||
//$this->FehlerModel->addSelect('fehlercode, fehler_kurzbz, fehlertext, fehlertyp_kurzbz');
|
||||
$this->FehlerModel->addOrder('fehlercode');
|
||||
|
||||
$fehlerRes = isset($app) ? $this->FehlerModel->loadWhere(array('app' => $app)) : $this->FehlerModel->load();
|
||||
|
||||
$this->outputJson($fehlerRes);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all Mitarbeiter, Organisationseinheiten, Funktionen not assigned to a Fehler yet.
|
||||
*/
|
||||
public function getNonAssignedZustaendigkeiten()
|
||||
{
|
||||
$fehlercode = $this->input->get('fehlercode');
|
||||
|
||||
$mitarbeiterRes = $this->FehlerzustaendigkeitenModel->getNonAssignedMitarbeiter($fehlercode);
|
||||
|
||||
if (isError($mitarbeiterRes))
|
||||
{
|
||||
$this->outputJsonError(getError($mitarbeiterRes));
|
||||
return;
|
||||
}
|
||||
|
||||
$oeRes = $this->FehlerzustaendigkeitenModel->getNonAssignedOes($fehlercode);
|
||||
|
||||
if (isError($oeRes))
|
||||
{
|
||||
$this->outputJsonError(getError($oeRes));
|
||||
return;
|
||||
}
|
||||
|
||||
$funktionRes = $this->FehlerzustaendigkeitenModel->getNonAssignedFunktionen($fehlercode);
|
||||
|
||||
if (isError($funktionRes))
|
||||
{
|
||||
$this->outputJsonError(getError($funktionRes));
|
||||
return;
|
||||
}
|
||||
|
||||
$result = array(
|
||||
'mitarbeiter' => getData($mitarbeiterRes),
|
||||
'oe_kurzbz' => getData($oeRes),
|
||||
'funktion' => getData($funktionRes),
|
||||
);
|
||||
|
||||
$this->outputJsonSuccess($result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds a Zuständigkeit after performing error checks.
|
||||
*/
|
||||
public function addZustaendigkeit()
|
||||
{
|
||||
$fehlercode = $this->input->post('fehlercode');
|
||||
$mitarbeiter_person_id = $this->input->post('mitarbeiter_person_id');
|
||||
$oe_kurzbz = $this->input->post('oe_kurzbz');
|
||||
$funktion_kurzbz = $this->input->post('funktion_kurzbz');
|
||||
|
||||
if (isEmptyString($fehlercode))
|
||||
$this->outputJsonError($this->p->t('fehlermonitoring', 'fehlercodeFehlt'));
|
||||
elseif (isEmptyString($mitarbeiter_person_id) && isEmptyString($oe_kurzbz))
|
||||
$this->outputJsonError($this->p->t('fehlermonitoring', 'mitarbeiterUndOeFehlt'));
|
||||
elseif (!isEmptyString($mitarbeiter_person_id) && !isEmptyString($oe_kurzbz))
|
||||
$this->outputJsonError($this->p->t('fehlermonitoring', 'nurOeOderMitarbeiterSetzen'));
|
||||
elseif (isset($mitarbeiter_person_id) && !is_numeric($mitarbeiter_person_id))
|
||||
$this->outputJsonError($this->p->t('fehlermonitoring', 'ungueltigeMitarbeiterId'));
|
||||
else
|
||||
{
|
||||
$data = array(
|
||||
'fehlercode' => $fehlercode
|
||||
);
|
||||
|
||||
if (!isEmptyString($mitarbeiter_person_id))
|
||||
$data['person_id'] = $mitarbeiter_person_id;
|
||||
|
||||
if (!isEmptyString($oe_kurzbz))
|
||||
$data['oe_kurzbz'] = $oe_kurzbz;
|
||||
|
||||
if (!isEmptyString($funktion_kurzbz))
|
||||
$data['funktion_kurzbz'] = $funktion_kurzbz;
|
||||
|
||||
$zustaendigkeitExistsRes = $this->FehlerzustaendigkeitenModel->loadWhere($data);
|
||||
|
||||
if (isError($zustaendigkeitExistsRes))
|
||||
$this->outputJsonError(getError($zustaendigkeitExistsRes));
|
||||
elseif (hasData($zustaendigkeitExistsRes))
|
||||
$this->outputJsonError($this->p->t('fehlermonitoring', 'zustaendigkeitExistiert'));
|
||||
else
|
||||
{
|
||||
$data['insertvon'] = $this->_uid;
|
||||
|
||||
$this->outputJson($this->FehlerzustaendigkeitenModel->insert($data));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes a Zuständigkeit.
|
||||
*/
|
||||
public function deleteZustaendigkeit()
|
||||
{
|
||||
$fehlerzustaendigkeiten_id = $this->input->post('fehlerzustaendigkeiten_id');
|
||||
|
||||
// check if Id correctly passed
|
||||
if (!isset($fehlerzustaendigkeiten_id) || !is_numeric($fehlerzustaendigkeiten_id))
|
||||
{
|
||||
$this->outputJsonError($this->p->t('fehlermonitoring', 'ungueltigeZustaendigkeitenId'));
|
||||
return;
|
||||
}
|
||||
|
||||
$this->outputJson($this->FehlerzustaendigkeitenModel->delete($fehlerzustaendigkeiten_id));
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve the UID of the logged user and checks if it is valid
|
||||
*/
|
||||
private function _setAuthUID()
|
||||
{
|
||||
$this->_uid = getAuthUID();
|
||||
|
||||
if (!$this->_uid) show_error('User authentification failed');
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
<?php
|
||||
class Fehlerzustaendigkeiten_model extends DB_Model
|
||||
{
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
$this->dbTable = 'system.tbl_fehler_zustaendigkeiten';
|
||||
$this->pk = 'fehlerzustaendigkeiten_id';
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets active Mitarbeiter not assigned to a Fehler.
|
||||
* @param $fehlercode
|
||||
* @return object
|
||||
*/
|
||||
public function getNonAssignedMitarbeiter($fehlercode)
|
||||
{
|
||||
$query = "SELECT person_id, ben.uid, vorname, nachname, titelpre, titelpost, personalnummer
|
||||
FROM public.tbl_mitarbeiter
|
||||
JOIN public.tbl_benutzer ben ON tbl_mitarbeiter.mitarbeiter_uid = ben.uid
|
||||
JOIN public.tbl_person pers USING (person_id)
|
||||
WHERE ben.aktiv
|
||||
AND NOT EXISTS (
|
||||
SELECT 1 FROM system.tbl_fehler_zustaendigkeiten
|
||||
WHERE person_id = pers.person_id
|
||||
AND fehlercode = ?
|
||||
)
|
||||
ORDER BY nachname, vorname, uid";
|
||||
|
||||
return $this->execReadOnlyQuery($query, array($fehlercode));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Organisationseinheiten not assigned to a Fehler.
|
||||
* @param $fehlercode
|
||||
* @return object
|
||||
*/
|
||||
public function getNonAssignedOes($fehlercode)
|
||||
{
|
||||
$query = "SELECT oe_kurzbz, bezeichnung
|
||||
FROM public.tbl_organisationseinheit oe
|
||||
WHERE aktiv
|
||||
AND NOT EXISTS (
|
||||
SELECT 1 FROM system.tbl_fehler_zustaendigkeiten
|
||||
WHERE oe_kurzbz = oe.oe_kurzbz
|
||||
AND fehlercode = ?
|
||||
)
|
||||
ORDER BY bezeichnung";
|
||||
|
||||
return $this->execReadOnlyQuery($query, array($fehlercode));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Funktionen not assigned to a Fehler.
|
||||
* @param $fehlercode
|
||||
* @return object
|
||||
*/
|
||||
public function getNonAssignedFunktionen($fehlercode)
|
||||
{
|
||||
$query = "SELECT funktion_kurzbz, beschreibung
|
||||
FROM public.tbl_funktion funk
|
||||
WHERE aktiv
|
||||
AND NOT EXISTS (
|
||||
SELECT 1 FROM system.tbl_fehler_zustaendigkeiten
|
||||
WHERE funktion_kurzbz = funk.funktion_kurzbz
|
||||
AND fehlercode = ?
|
||||
)
|
||||
ORDER BY funktion_kurzbz";
|
||||
|
||||
return $this->execReadOnlyQuery($query, array($fehlercode));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,176 @@
|
||||
<?php
|
||||
$this->load->view(
|
||||
'templates/FHC-Header',
|
||||
array(
|
||||
'title' => 'Fehler Zuständigkeiten',
|
||||
'jquery' => true,
|
||||
'jqueryui' => true,
|
||||
'jquerycheckboxes' => true,
|
||||
'bootstrap' => true,
|
||||
'fontawesome' => true,
|
||||
'sbadmintemplate' => true,
|
||||
'tablesorter' => true,
|
||||
'ajaxlib' => true,
|
||||
'filterwidget' => true,
|
||||
'navigationwidget' => true,
|
||||
'dialoglib' => true,
|
||||
'phrases' => array(
|
||||
'ui',
|
||||
'fehlermonitoring'
|
||||
),
|
||||
'customCSSs' => array('public/css/issues/issuesZustaendigkeiten.css', 'public/css/sbadmin2/tablesort_bootstrap.css'),
|
||||
'customJSs' => array('public/js/issues/issuesZustaendigkeiten.js', 'public/js/bootstrapper.js')
|
||||
)
|
||||
);
|
||||
?>
|
||||
|
||||
<body>
|
||||
<div id="wrapper">
|
||||
|
||||
<?php echo $this->widgetlib->widget('NavigationWidget'); ?>
|
||||
|
||||
<div id="page-wrapper">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h3 class="page-header">
|
||||
<?php echo $this->p->t('fehlermonitoring', 'fehlerZustaendigkeiten') ?>
|
||||
</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-4">
|
||||
<div class="panel panel-default">
|
||||
<table class="table table-bordered" id="fehlercodeSelectTable">
|
||||
<tr>
|
||||
<td class="tableCellNoRightBorder">
|
||||
<label for="fehlerappSelect">App</label>
|
||||
<select class="form-control" name="fehlerappSelect" id="fehlerappSelect">
|
||||
</select>
|
||||
</td>
|
||||
<td class="tableCellNoLeftBorder tableCellNoRightBorder">
|
||||
<label for="fehlercodeSelect"><?php echo $this->p->t('fehlermonitoring', 'fehlercode') ?></label>
|
||||
<select class="form-control" name="fehlercodeSelect" id="fehlercodeSelect">
|
||||
</select>
|
||||
</td>
|
||||
<td class="tableCellNoLeftBorder" id="fehlercodeInfoCell"><i class="fa fa-info-circle"></i></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-8">
|
||||
<div class="panel panel-default">
|
||||
<table class="table table-bordered">
|
||||
<tr>
|
||||
<td>
|
||||
<label for="mitarbeiterSelect"><?php echo $this->p->t('fehlermonitoring', 'zustaendigerMitarbeiter') ?></label>
|
||||
<input type="text" class="form-control" name="mitarbeiterSelect" id="mitarbeiterSelect">
|
||||
<input type="hidden" name="mitarbeiter_person_id" id="mitarbeiter_person_id">
|
||||
</td>
|
||||
<td align="center">
|
||||
<?php echo $this->p->t('fehlermonitoring', 'oder') ?>
|
||||
<br>
|
||||
<i class="fa fa-arrows-h"></i>
|
||||
</td>
|
||||
<td class="tableCellNoRightBorder">
|
||||
<label for="oeSelect"><?php echo $this->p->t('fehlermonitoring', 'organisationseinheit') ?></label>
|
||||
<select class="form-control" name="oeSelect" id="oeSelect">
|
||||
</select>
|
||||
</td>
|
||||
<td class="tableCellNoLeftBorder">
|
||||
<label for="funktionSelect"><?php echo $this->p->t('fehlermonitoring', 'funktion') ?></label>
|
||||
<select class="form-control" name="funktionSelect" id="funktionSelect">
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-offset-3 col-lg-9">
|
||||
<button class="btn btn-default" id="assignZustaendigkeit">
|
||||
<i class="fa fa-angle-double-right"></i>
|
||||
<?php echo $this->p->t('fehlermonitoring', 'zustaendigkeitZuweisen') ?>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<?php $this->load->view('system/issues/issuesZustaendigkeitenData.php'); ?>
|
||||
</div>
|
||||
<div class="modal fade" id="fehlerInfo" tabindex="-1"
|
||||
role="dialog"
|
||||
aria-labelledby="fehlerInfoLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close"
|
||||
data-dismiss="modal"
|
||||
aria-hidden="true">×
|
||||
</button>
|
||||
<h4 class="modal-title" id="fehlerInfoLabel">
|
||||
</h4>
|
||||
</div>
|
||||
<div class="modal-body" id="fehlerInfoContent">
|
||||
<table class="table table-condensed table-bordered">
|
||||
<tr>
|
||||
<td>
|
||||
<b><?php echo ucfirst($this->p->t('fehlermonitoring', 'fehlercode')) ?></b>
|
||||
</td>
|
||||
<td>
|
||||
<span id="fehlercodeInfo"></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<b><?php echo ucfirst($this->p->t('fehlermonitoring', 'fehlerkurzbz')) ?></b>
|
||||
</td>
|
||||
<td>
|
||||
<span id="fehlerkurzbzInfo"></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<b><?php echo ucfirst($this->p->t('fehlermonitoring', 'fehlertyp')) ?></b>
|
||||
</td>
|
||||
<td>
|
||||
<span id="fehlertypInfo"></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<b><?php echo ucfirst($this->p->t('fehlermonitoring', 'fehlertyp')) ?></b>
|
||||
</td>
|
||||
<td>
|
||||
<span id="fehlertypInfo"></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<b><?php echo ucfirst($this->p->t('fehlermonitoring', 'fehlercodeExtern')) ?></b>
|
||||
</td>
|
||||
<td>
|
||||
<span id="fehlercodeExternInfo"></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<b><?php echo ucfirst($this->p->t('fehlermonitoring', 'fehlertext')) ?></b>
|
||||
</td>
|
||||
<td>
|
||||
<span id="fehlertextInfo"></span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div><!-- /.modal-content -->
|
||||
</div><!-- /.modal-dialog -->
|
||||
</div><!-- /.modal-fade -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
|
||||
<?php $this->load->view('templates/FHC-Footer'); ?>
|
||||
@@ -0,0 +1,84 @@
|
||||
<?php
|
||||
|
||||
// get assigned Zustaendigkeiten
|
||||
$query = "SELECT fehlerzustaendigkeiten_id, fe.fehlercode, fe.fehlercode_extern, fehler_kurzbz, fehlertext, fehlertyp_kurzbz, fe.app,
|
||||
pers.person_id, pers.vorname, pers.nachname,
|
||||
oe.oe_kurzbz, oe.bezeichnung AS oe_bezeichnung, funk.funktion_kurzbz, funk.beschreibung AS funktion_beschreibung
|
||||
FROM system.tbl_fehler_zustaendigkeiten zst
|
||||
JOIN system.tbl_fehler fe USING (fehlercode)
|
||||
LEFT JOIN public.tbl_person pers USING (person_id)
|
||||
LEFT JOIN public.tbl_organisationseinheit oe USING (oe_kurzbz)
|
||||
LEFT JOIN public.tbl_funktion funk USING (funktion_kurzbz)
|
||||
ORDER BY fe.fehlercode, pers.nachname, oe.bezeichnung, funk.beschreibung";
|
||||
|
||||
$filterWidgetArray = array(
|
||||
'query' => $query,
|
||||
'app' => 'core',
|
||||
'datasetName' => 'fehlerZustaendigkeiten',
|
||||
'filter_id' => $this->input->get('filter_id'),
|
||||
'tableUniqueId' => 'issuesZustaendigkeiten',
|
||||
'requiredPermissions' => 'admin',
|
||||
'datasetRepresentation' => 'tablesorter',
|
||||
'additionalColumns' => array(ucfirst($this->p->t('ui', 'loeschen'))),
|
||||
'columnsAliases' => array(
|
||||
'ID',
|
||||
ucfirst($this->p->t('fehlermonitoring', 'fehlercode')),
|
||||
ucfirst($this->p->t('fehlermonitoring', 'fehlercodeExtern')),
|
||||
ucfirst($this->p->t('fehlermonitoring', 'fehlerkurzbz')),
|
||||
ucfirst($this->p->t('fehlermonitoring', 'fehlertext')),
|
||||
ucfirst($this->p->t('fehlermonitoring', 'fehlertyp')),
|
||||
'app',
|
||||
'PersonId',
|
||||
ucfirst($this->p->t('person', 'vorname')),
|
||||
ucfirst($this->p->t('person', 'nachname')),
|
||||
ucfirst($this->p->t('fehlermonitoring', 'oeKurzbz')),
|
||||
ucfirst($this->p->t('fehlermonitoring', 'oeBezeichnung')),
|
||||
ucfirst($this->p->t('fehlermonitoring', 'funktionKurzbz')),
|
||||
ucfirst($this->p->t('fehlermonitoring', 'funktionBeschreibung'))
|
||||
),
|
||||
'formatRow' => function($datasetRaw) {
|
||||
|
||||
$datasetRaw->{ucfirst($this->p->t('ui', 'loeschen'))} =
|
||||
"<button id='".$datasetRaw->{'fehlerzustaendigkeiten_id'}."' class='btn btn-default deleteBtn'>"
|
||||
.ucfirst($this->p->t('ui', 'loeschen'))."</button>";
|
||||
|
||||
if ($datasetRaw->{'person_id'} == null)
|
||||
{
|
||||
$datasetRaw->{'person_id'} = '-';
|
||||
}
|
||||
|
||||
if ($datasetRaw->{'vorname'} == null)
|
||||
{
|
||||
$datasetRaw->{'vorname'} = '-';
|
||||
}
|
||||
|
||||
if ($datasetRaw->{'nachname'} == null)
|
||||
{
|
||||
$datasetRaw->{'nachname'} = '-';
|
||||
}
|
||||
|
||||
if ($datasetRaw->{'oe_kurzbz'} == null)
|
||||
{
|
||||
$datasetRaw->{'oe_kurzbz'} = '-';
|
||||
}
|
||||
|
||||
if ($datasetRaw->{'oe_bezeichnung'} == null)
|
||||
{
|
||||
$datasetRaw->{'oe_bezeichnung'} = '-';
|
||||
}
|
||||
|
||||
if ($datasetRaw->{'funktion_kurzbz'} == null)
|
||||
{
|
||||
$datasetRaw->{'funktion_kurzbz'} = '-';
|
||||
}
|
||||
|
||||
if ($datasetRaw->{'funktion_beschreibung'} == null)
|
||||
{
|
||||
$datasetRaw->{'funktion_beschreibung'} = '-';
|
||||
}
|
||||
|
||||
return $datasetRaw;
|
||||
}
|
||||
);
|
||||
|
||||
echo $this->widgetlib->widget('FilterWidget', $filterWidgetArray);
|
||||
@@ -0,0 +1,13 @@
|
||||
td.tableCellNoRightBorder {
|
||||
border-right: 0 !important;
|
||||
}
|
||||
|
||||
td.tableCellNoLeftBorder {
|
||||
border-left: 0 !important;
|
||||
}
|
||||
|
||||
#fehlercodeInfoCell {
|
||||
vertical-align: middle;
|
||||
font-size: 1.2em;
|
||||
cursor: pointer;
|
||||
}
|
||||
@@ -0,0 +1,374 @@
|
||||
/**
|
||||
* Javascript file for issues Zuständigkeiten page
|
||||
*/
|
||||
|
||||
const FEHLERAPP_DROPDOWN_ID = "fehlerappSelect";
|
||||
const FEHLERCODE_DROPDOWN_ID = "fehlercodeSelect";
|
||||
const MITARBEITER_AUTOCOMPLETE_ID = "mitarbeiterSelect";
|
||||
const MITARBEITER_HIDENFIELD_ID = "mitarbeiter_person_id";
|
||||
const ORGANISATIONSEINHEIT_DROPDOWN_ID = "oeSelect";
|
||||
const FUNKTION_DROPDOWN_ID = "funktionSelect";
|
||||
|
||||
var IssuesZustaendigkeiten = {
|
||||
|
||||
mitarbeiterArr: [],
|
||||
fehlercodesArr: [],
|
||||
|
||||
getApps: function()
|
||||
{
|
||||
FHC_AjaxClient.ajaxCallGet(
|
||||
'system/issues/IssuesZustaendigkeiten/getApps',
|
||||
null,
|
||||
{
|
||||
successCallback: function(data, textStatus, jqXHR) {
|
||||
if (FHC_AjaxClient.hasData(data))
|
||||
{
|
||||
// save loaded apps
|
||||
let apps = FHC_AjaxClient.getData(data);
|
||||
|
||||
// fill dropdown with apps
|
||||
IssuesZustaendigkeiten._fillDropdown(
|
||||
FEHLERAPP_DROPDOWN_ID,
|
||||
"app",
|
||||
apps,
|
||||
null,
|
||||
false,
|
||||
"core"
|
||||
);
|
||||
|
||||
// Initiate getting of fehlercodes with apps
|
||||
IssuesZustaendigkeiten.getFehlercodes($("#"+FEHLERAPP_DROPDOWN_ID).val());
|
||||
}
|
||||
},
|
||||
errorCallback: function(jqXHR, textStatus, errorThrown) {
|
||||
FHC_DialogLib.alertError(textStatus);
|
||||
}
|
||||
}
|
||||
);
|
||||
},
|
||||
getFehlercodes: function(app)
|
||||
{
|
||||
FHC_AjaxClient.ajaxCallGet(
|
||||
'system/issues/IssuesZustaendigkeiten/getFehlercodes',
|
||||
{
|
||||
app: app
|
||||
},
|
||||
{
|
||||
successCallback: function(data, textStatus, jqXHR) {
|
||||
if (FHC_AjaxClient.hasData(data))
|
||||
{
|
||||
let fehlerCodesData = FHC_AjaxClient.getData(data);
|
||||
|
||||
// save fehlercodes data for displaying info later
|
||||
IssuesZustaendigkeiten.fehlercodesArr = fehlerCodesData;
|
||||
|
||||
|
||||
// display fehlercodes in dropdown
|
||||
let fehlerCodes = [];
|
||||
|
||||
for (let i = 0; i < fehlerCodesData.length; i++)
|
||||
{
|
||||
let code = fehlerCodesData[i];
|
||||
|
||||
fehlerCodes.push(
|
||||
{
|
||||
fehlercode: code.fehlercode,
|
||||
fullFehlerBezeichnung: code.fehlercode + ' - ' + code.fehler_kurzbz
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
IssuesZustaendigkeiten._fillDropdown(
|
||||
FEHLERCODE_DROPDOWN_ID,
|
||||
"fehlercode",
|
||||
fehlerCodes,
|
||||
"fullFehlerBezeichnung"
|
||||
);
|
||||
|
||||
// initiate call for getting Zuständigkeiten
|
||||
IssuesZustaendigkeiten.getNonAssignedZustaendigkeiten($("#"+FEHLERCODE_DROPDOWN_ID).val());
|
||||
}
|
||||
},
|
||||
errorCallback: function(jqXHR, textStatus, errorThrown) {
|
||||
FHC_DialogLib.alertError(textStatus);
|
||||
}
|
||||
}
|
||||
);
|
||||
},
|
||||
getNonAssignedZustaendigkeiten: function(fehlercode)
|
||||
{
|
||||
FHC_AjaxClient.ajaxCallGet(
|
||||
'system/issues/IssuesZustaendigkeiten/getNonAssignedZustaendigkeiten',
|
||||
{
|
||||
fehlercode: fehlercode
|
||||
},
|
||||
{
|
||||
successCallback: function(data, textStatus, jqXHR) {
|
||||
if (FHC_AjaxClient.hasData(data))
|
||||
{
|
||||
// save loaded data
|
||||
let zustaendigkeitenData = FHC_AjaxClient.getData(data);
|
||||
|
||||
// fill dropdowns with data
|
||||
IssuesZustaendigkeiten._fillDropdown(
|
||||
"oeSelect",
|
||||
"oe_kurzbz",
|
||||
zustaendigkeitenData.oe_kurzbz,
|
||||
"bezeichnung",
|
||||
true
|
||||
);
|
||||
IssuesZustaendigkeiten._fillDropdown("funktionSelect", "funktion_kurzbz", zustaendigkeitenData.funktion, "beschreibung", true);
|
||||
|
||||
// save Mitarbeiter in array
|
||||
IssuesZustaendigkeiten.mitarbeiterArr = [];
|
||||
|
||||
for (let i = 0; i < zustaendigkeitenData.mitarbeiter.length; i++)
|
||||
{
|
||||
let ma = zustaendigkeitenData.mitarbeiter[i];
|
||||
|
||||
IssuesZustaendigkeiten.mitarbeiterArr.push(
|
||||
{
|
||||
label: ma.nachname + " " + ma.vorname + " (" + ma.uid + ")",
|
||||
id: ma.person_id
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
// fill autocomplete field with mitarbeiter data
|
||||
IssuesZustaendigkeiten._fillAutocomplete(
|
||||
MITARBEITER_AUTOCOMPLETE_ID,
|
||||
MITARBEITER_HIDENFIELD_ID,
|
||||
IssuesZustaendigkeiten.mitarbeiterArr
|
||||
);
|
||||
|
||||
// set events to delete buttons
|
||||
$(".deleteBtn").click(
|
||||
function()
|
||||
{
|
||||
IssuesZustaendigkeiten.deleteZustaendigkeit($(this).prop("id"));
|
||||
}
|
||||
)
|
||||
}
|
||||
},
|
||||
errorCallback: function(jqXHR, textStatus, errorThrown) {
|
||||
FHC_DialogLib.alertError(textStatus);
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
},
|
||||
addZustaendigkeit: function(data)
|
||||
{
|
||||
FHC_AjaxClient.ajaxCallPost(
|
||||
'system/issues/IssuesZustaendigkeiten/addZustaendigkeit',
|
||||
data,
|
||||
{
|
||||
successCallback: function(data, textStatus, jqXHR) {
|
||||
if (FHC_AjaxClient.hasData(data))
|
||||
{
|
||||
// show message, reset input fields and reload data after Zuständigkeit added
|
||||
FHC_DialogLib.alertSuccess(FHC_PhrasesLib.t('fehlermonitoring', 'zustaendigkeitGespeichert'))
|
||||
IssuesZustaendigkeiten._emptyInputFields();
|
||||
FHC_FilterWidget.reloadDataset();
|
||||
}
|
||||
else
|
||||
{
|
||||
// show error if no data
|
||||
let errorMsg = FHC_PhrasesLib.t('fehlermonitoring', 'zustaendigkeitGespeichertFehler');
|
||||
if (FHC_AjaxClient.isError(data))
|
||||
errorMsg += ": "+FHC_AjaxClient.getError(data);
|
||||
FHC_DialogLib.alertError(errorMsg);
|
||||
}
|
||||
},
|
||||
errorCallback: function(jqXHR, textStatus, errorThrown) {
|
||||
FHC_DialogLib.alertError(textStatus);
|
||||
}
|
||||
}
|
||||
);
|
||||
},
|
||||
deleteZustaendigkeit: function(fehlerzustaendigkeiten_id)
|
||||
{
|
||||
FHC_AjaxClient.ajaxCallPost(
|
||||
'system/issues/IssuesZustaendigkeiten/deleteZustaendigkeit',
|
||||
{
|
||||
fehlerzustaendigkeiten_id: fehlerzustaendigkeiten_id
|
||||
},
|
||||
{
|
||||
successCallback: function(data, textStatus, jqXHR) {
|
||||
if (FHC_AjaxClient.hasData(data))
|
||||
{
|
||||
FHC_DialogLib.alertSuccess(FHC_PhrasesLib.t('fehlermonitoring', 'zustaendigkeitGeloescht'))
|
||||
// reload dataset to see change
|
||||
FHC_FilterWidget.reloadDataset();
|
||||
}
|
||||
else
|
||||
{
|
||||
FHC_DialogLib.alertError(FHC_PhrasesLib.t('fehlermonitoring', 'zustaendigkeitGeloeschtFehler'));
|
||||
}
|
||||
},
|
||||
errorCallback: function(jqXHR, textStatus, errorThrown) {
|
||||
FHC_DialogLib.alertError(textStatus);
|
||||
}
|
||||
}
|
||||
);
|
||||
},
|
||||
_fillDropdown: function(dropdownId, valueName, data, textName, includeNoSelectionOption, defaultValue)
|
||||
{
|
||||
// by default, displayed text in dropdown is the value
|
||||
if (!textName)
|
||||
textName = valueName;
|
||||
|
||||
// clear dropdown
|
||||
$("#"+dropdownId).empty();
|
||||
|
||||
// optionally include default "no selection" value
|
||||
if (includeNoSelectionOption === true)
|
||||
$("#"+dropdownId).append("<option value=''> -- "+FHC_PhrasesLib.t('fehlermonitoring', 'keineAuswahl')+" -- </option>");
|
||||
|
||||
// fill dropdown with values
|
||||
for (let i = 0; i < data.length; i++)
|
||||
{
|
||||
let val = data[i];
|
||||
// value selected by default
|
||||
let selected = val === defaultValue ? " selected" : "";
|
||||
|
||||
// append option
|
||||
$("#"+dropdownId).append("<option value='"+val[valueName]+"'"+selected+">"+val[textName]+"</option>");
|
||||
}
|
||||
},
|
||||
_fillAutocomplete: function(autocompleteId, idFieldId, source)
|
||||
{
|
||||
// jQuery ui autocomplete for employees
|
||||
$("#"+autocompleteId).autocomplete(
|
||||
{
|
||||
source: source,
|
||||
autoFocus: true,
|
||||
select: function( event, ui ) {
|
||||
// when autocmplete entry selected, display label text in autocomplete, fill hidden value field
|
||||
$("#"+autocompleteId).val(ui.item.label);
|
||||
$("#"+idFieldId).val(ui.item.id);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
);
|
||||
},
|
||||
_toggleFieldDisability: function()
|
||||
{
|
||||
let oeDropdownEl = $("#"+ORGANISATIONSEINHEIT_DROPDOWN_ID);
|
||||
let funktionDropdownEl = $("#"+FUNKTION_DROPDOWN_ID);
|
||||
let maAutocompleteEl = $("#"+MITARBEITER_AUTOCOMPLETE_ID);
|
||||
|
||||
// if Mitarbeiter is entered
|
||||
if (maAutocompleteEl.val().length > 0)
|
||||
{
|
||||
// disable oe and funktion input
|
||||
oeDropdownEl.prop('disabled', true);
|
||||
oeDropdownEl.val('');
|
||||
funktionDropdownEl.prop('disabled', true);
|
||||
}
|
||||
else
|
||||
{
|
||||
// enable oe and funktion input if Mitarbeiter input empty
|
||||
oeDropdownEl.prop('disabled', false);
|
||||
funktionDropdownEl.prop('disabled', false);
|
||||
}
|
||||
|
||||
// if oe or funktion is entered
|
||||
if (oeDropdownEl.val().length > 0 || funktionDropdownEl.val().length > 0)
|
||||
{
|
||||
// disable Mitarbeiter input
|
||||
maAutocompleteEl.prop('disabled', true);
|
||||
maAutocompleteEl.val('');
|
||||
}
|
||||
else
|
||||
{
|
||||
// enable mitarbeiter input
|
||||
maAutocompleteEl.prop('disabled', false);
|
||||
}
|
||||
},
|
||||
_emptyInputFields: function()
|
||||
{
|
||||
// clear all input fields
|
||||
$("#"+MITARBEITER_AUTOCOMPLETE_ID).val('');
|
||||
$("#"+MITARBEITER_HIDENFIELD_ID).val('');
|
||||
$("#"+ORGANISATIONSEINHEIT_DROPDOWN_ID).val('');
|
||||
$("#"+FUNKTION_DROPDOWN_ID).val('');
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* When JQuery is up
|
||||
*/
|
||||
$(document).ready(function() {
|
||||
|
||||
// initiate cascade of getting data, first apps
|
||||
IssuesZustaendigkeiten.getApps();
|
||||
|
||||
// get new fehlercodes each time app is changed
|
||||
$("#"+FEHLERAPP_DROPDOWN_ID).change(
|
||||
function()
|
||||
{
|
||||
IssuesZustaendigkeiten.getFehlercodes($("#"+FEHLERAPP_DROPDOWN_ID).val());
|
||||
}
|
||||
);
|
||||
|
||||
// set events for disabling input fields
|
||||
$("#"+MITARBEITER_AUTOCOMPLETE_ID).keyup(IssuesZustaendigkeiten._toggleFieldDisability);
|
||||
$("#"+ORGANISATIONSEINHEIT_DROPDOWN_ID+", #"+FUNKTION_DROPDOWN_ID).change(IssuesZustaendigkeiten._toggleFieldDisability);
|
||||
|
||||
// set event for adding a new Zuständigkeit
|
||||
$("#assignZustaendigkeit").click(
|
||||
function()
|
||||
{
|
||||
let data = {
|
||||
fehlercode: $("#"+FEHLERCODE_DROPDOWN_ID).val()
|
||||
}
|
||||
|
||||
let mitarbeiter_person_id = $("#"+MITARBEITER_HIDENFIELD_ID).val();
|
||||
let oe_kurzbz = $("#"+ORGANISATIONSEINHEIT_DROPDOWN_ID).val();
|
||||
|
||||
// if person id set, send it, otherwise oe_kurzbz
|
||||
if (mitarbeiter_person_id.length > 0)
|
||||
data.mitarbeiter_person_id = mitarbeiter_person_id;
|
||||
else if (oe_kurzbz.length > 0)
|
||||
{
|
||||
data.oe_kurzbz = oe_kurzbz
|
||||
data.funktion_kurzbz = $("#"+FUNKTION_DROPDOWN_ID).val();
|
||||
}
|
||||
|
||||
IssuesZustaendigkeiten.addZustaendigkeit(data);
|
||||
}
|
||||
)
|
||||
|
||||
// set event for showing info modal
|
||||
$("#fehlercodeInfoCell").click(
|
||||
function()
|
||||
{
|
||||
let fehlercode = $("#"+FEHLERCODE_DROPDOWN_ID).val();
|
||||
let fehlercodeData = {};
|
||||
|
||||
for (let i = 0; i < IssuesZustaendigkeiten.fehlercodesArr.length; i++)
|
||||
{
|
||||
let fc = IssuesZustaendigkeiten.fehlercodesArr[i];
|
||||
|
||||
if (fc.fehlercode === fehlercode)
|
||||
{
|
||||
fehlercodeData = fc;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!fehlercodeData)
|
||||
return;
|
||||
|
||||
$("#fehlerInfoLabel").text(fehlercodeData.fehlercode + " - " + fehlercodeData.fehler_kurzbz);
|
||||
$("#fehlercodeInfo").text(fehlercodeData.fehlercode);
|
||||
$("#fehlerkurzbzInfo").text(fehlercodeData.fehler_kurzbz);
|
||||
$("#fehlertypInfo").text(fehlercodeData.fehlertyp_kurzbz);
|
||||
$("#fehlercodeExternInfo").text(fehlercodeData.fehlercode_extern ? fehlercodeData.fehlercode_extern : '-');
|
||||
$("#fehlertextInfo").text(fehlercodeData.fehlertext);
|
||||
|
||||
$("#fehlerInfo").modal("show");
|
||||
}
|
||||
)
|
||||
});
|
||||
@@ -5979,6 +5979,28 @@ if ($result = $db->db_query("SELECT * FROM pg_class WHERE relname='idx_webservic
|
||||
}
|
||||
}
|
||||
|
||||
// ADD COLUMN insertamum to system.tbl_fehler_zustaendigkeiten
|
||||
if(!@$db->db_query("SELECT insertamum FROM system.tbl_fehler_zustaendigkeiten LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE system.tbl_fehler_zustaendigkeiten ADD COLUMN insertamum timestamp DEFAULT now();";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>system.tbl_fehler_zustaendigkeiten '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Spalte insertamum in system.tbl_fehler_zustaendigkeiten hinzugefügt';
|
||||
}
|
||||
|
||||
// ADD COLUMN insertvon to system.tbl_fehler_zustaendigkeiten
|
||||
if(!@$db->db_query("SELECT insertvon FROM system.tbl_fehler_zustaendigkeiten LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE system.tbl_fehler_zustaendigkeiten ADD COLUMN insertvon varchar(32);";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>system.tbl_fehler_zustaendigkeiten '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Spalte insertvon in system.tbl_fehler_zustaendigkeiten hinzugefügt';
|
||||
}
|
||||
|
||||
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
|
||||
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
|
||||
|
||||
|
||||
@@ -1055,6 +1055,29 @@ $filters = array(
|
||||
}
|
||||
',
|
||||
'oe_kurzbz' => null,
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'dataset_name' => 'fehlerZustaendigkeiten',
|
||||
'filter_kurzbz' => 'fehlerZustaendigkeiten',
|
||||
'description' => '{Fehler Zustaendigkeiten}',
|
||||
'sort' => 1,
|
||||
'default_filter' => true,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "Fehler Zuständigkeiten",
|
||||
"columns": [
|
||||
{"name": "fehlercode"},
|
||||
{"name": "person_id"},
|
||||
{"name": "vorname"},
|
||||
{"name": "nachname"},
|
||||
{"name": "oe_bezeichnung"},
|
||||
{"name": "funktion_beschreibung"}
|
||||
],
|
||||
"filters": []
|
||||
}
|
||||
',
|
||||
'oe_kurzbz' => null
|
||||
)
|
||||
);
|
||||
|
||||
|
||||
@@ -13715,6 +13715,466 @@ array(
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'fehlerZustaendigkeiten',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Fehler Zuständigkeiten",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Error Responsibilities",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'zustaendigerMitarbeiter',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Mitarbeiter",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Employee",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'oder',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "oder",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "or",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'organisationseinheit',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Organisationseinheit",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Organisational Unit",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'funktion',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Funktion",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Function",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'zustaendigkeitZuweisen',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Zuständigkeit zuweisen",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "assign",
|
||||
'description' => '',
|
||||
'insertvon' => 'Assign Responsibility'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'fehlerkurzbz',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Fehler Kurzbezeichnung",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Error short name",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'fehlertext',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Fehlertext",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Error text",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'oeKurzbz',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Organisationseinheit Kurzbezeichung",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Organisational Unit Short Name",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'oeBezeichnung',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Organisationseinheit",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Organisational Unit",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'funktionKurzbz',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Funktion Kurzbezeichnung",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Function Short Name",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'funktionBeschreibung',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Funktion Beschreibung",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Function Description",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'fehlercodeFehlt',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Fehlercode fehlt",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Error code missing",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'mitarbeiterUndOeFehlt',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Mitarbeiter oder Organisationseinheit müssen gesetzt sein",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Employee or organisational unit must be set",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'nurOeOderMitarbeiterSetzen',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Mitarbeiter und Organisationseinheit dürfen nicht gleichzeitig gesetzt sein",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Employee and organisational unit cannot be both set",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'ungueltigeMitarbeiterId',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Mitarbeiter person Id ist ungültig",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Employee Id is invalid",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'zustaendigkeitExistiert',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Zuständigkeit existiert bereits",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Assignment already exists",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'ungueltigeZustaendigkeitenId',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Ungültige Zuständigkeiten Id",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Invalid assignement id",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'zustaendigkeitGespeichert',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Zuständigkeit gespeichert",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Assignment saved",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'zustaendigkeitGespeichertFehler',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Fehler beim Speichern der Zuständigkeit",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Error when saving assignment",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'zustaendigkeitGeloescht',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Zuständigkeit gelöscht",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Assignment deleted",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'zustaendigkeitGeloeschtFehler',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "Fehler beim Löschen der Zuständigkeit",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "Assignment deleted",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'fehlermonitoring',
|
||||
'phrase' => 'keineAuswahl',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => "keine Auswahl",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => "no selection",
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'ui',
|
||||
|
||||
Reference in New Issue
Block a user