diff --git a/application/controllers/system/infocenter/Rueckstellung.php b/application/controllers/system/infocenter/Rueckstellung.php
index 4d5bdbb81..7872a1112 100644
--- a/application/controllers/system/infocenter/Rueckstellung.php
+++ b/application/controllers/system/infocenter/Rueckstellung.php
@@ -21,7 +21,7 @@ class Rueckstellung extends Auth_Controller
$this->load->model('crm/Rueckstellung_model', 'RueckstellungModel');
$this->load->model('crm/RueckstellungStatus_model', 'RueckstellungStatusModel');
-
+ $this->load->model('person/Person_model', 'PersonModel');
$this->_setAuthUID(); // sets property uid
$this->_ci =& get_instance(); // get code igniter instance
@@ -36,7 +36,17 @@ class Rueckstellung extends Auth_Controller
$this->terminateWithJsonError($this->_ci->p->t('ui', 'fehlerBeimLesen'));
if (hasData($rueckstellung))
- $result = getData($rueckstellung)[0];
+ {
+ $rueckstellung = getData($rueckstellung)[0];
+ $fullName = getData($this->_ci->PersonModel->getFullName($rueckstellung->insertvon));
+
+ $result = array(
+ 'von' => $fullName,
+ 'bezeichnung' => $rueckstellung->bezeichnung,
+ 'bis' => $rueckstellung->datum_bis
+ );
+ }
+
$this->outputJsonSuccess($result);
}
@@ -77,6 +87,7 @@ class Rueckstellung extends Auth_Controller
public function getStatus($aktiv = true)
{
+ $this->_ci->RueckstellungStatusModel->addOrder('sort');
$result = $this->_ci->RueckstellungStatusModel->loadWhere(array('aktiv' => $aktiv));
if (isError($result))
diff --git a/application/views/system/infocenter/infocenterData.php b/application/views/system/infocenter/infocenterData.php
index de4d19bcb..74eec571d 100644
--- a/application/views/system/infocenter/infocenterData.php
+++ b/application/views/system/infocenter/infocenterData.php
@@ -305,7 +305,16 @@
AND person_id = p.person_id
ORDER BY datum_bis DESC
LIMIT 1
- ) AS "OnholdDate"
+ ) AS "OnholdDate",
+ (
+ SELECT array_to_json(bezeichnung_mehrsprachig::varchar[])->>0
+ FROM public.tbl_rueckstellung
+ JOIN public.tbl_rueckstellung_status USING (status_kurzbz)
+ WHERE datum_bis >= NOW()
+ AND person_id = p.person_id
+ ORDER BY datum_bis DESC
+ LIMIT 1
+ ) AS "Rueckstellgrund"
FROM public.tbl_person p
LEFT JOIN (
SELECT tpl.person_id,
@@ -381,7 +390,8 @@
'ZGV Gruppe MA',
'InfoCenter Mitarbeiter',
ucfirst($this->p->t('global', 'parkdatum')),
- ucfirst($this->p->t('global', 'rueckstelldatum'))
+ ucfirst($this->p->t('infocenter', 'rueckstelldatum')),
+ ucfirst($this->p->t('infocenter', 'rueckstellgrund')),
),
'formatRow' => function($datasetRaw) {
@@ -494,6 +504,11 @@
{
$datasetRaw->{'InfoCenterMitarbeiter'} = 'Ja';
}
+
+ if ($datasetRaw->{'Rueckstellgrund'} === null)
+ {
+ $datasetRaw->{'Rueckstellgrund'} = '-';
+ }
return $datasetRaw;
},
diff --git a/public/js/infocenter/rueckstellung.js b/public/js/infocenter/rueckstellung.js
index c9ba32034..a8bf9ca84 100644
--- a/public/js/infocenter/rueckstellung.js
+++ b/public/js/infocenter/rueckstellung.js
@@ -138,11 +138,12 @@ var Rueckstellung = {
_refreshRueckstellung: function(rueckstellungobj)
{
var personid = $("#hiddenpersonid").val();
- var rueckstellungdate = $.datepicker.parseDate("yy-mm-dd", rueckstellungobj.datum_bis);
+ var rueckstellungdate = $.datepicker.parseDate("yy-mm-dd", rueckstellungobj.bis);
var gerrueckstellungdate = $.datepicker.formatDate("dd.mm.yy", rueckstellungdate);
var removetext = FHC_PhrasesLib.t('infocenter', 'statusZuruecksetzen');
- var rueckstellungdtext = FHC_PhrasesLib.t('global', 'status') + ": '" + rueckstellungobj.bezeichnung + "' " + FHC_PhrasesLib.t('global', 'bis') + ": " + gerrueckstellungdate;
+ var rueckstellungdtext = FHC_PhrasesLib.t('global', 'status') + ": '" + rueckstellungobj.bezeichnung + "' " + FHC_PhrasesLib.t('global', 'bis') + ": " + gerrueckstellungdate +
+ " " + FHC_PhrasesLib.t('ui', 'von') + ": " + rueckstellungobj.von;
var currdate = new Date();
@@ -172,14 +173,16 @@ var Rueckstellung = {
var personid = $("#hiddenpersonid").val();
$("#postponing").html(
'
');
Rueckstellung.getStatus();
diff --git a/system/dbupdate_3.4/27949_infocenter_zurueckstellen_mit_grund.php b/system/dbupdate_3.4/27949_infocenter_zurueckstellen_mit_grund.php
index 93c890675..6bd0464db 100644
--- a/system/dbupdate_3.4/27949_infocenter_zurueckstellen_mit_grund.php
+++ b/system/dbupdate_3.4/27949_infocenter_zurueckstellen_mit_grund.php
@@ -10,13 +10,16 @@ if(!$result = @$db->db_query("SELECT 1 FROM public.tbl_rueckstellung_status LIMI
(
status_kurzbz character varying(32),
bezeichnung_mehrsprachig character varying(256)[],
+ sort integer,
aktiv boolean default true
);
ALTER TABLE public.tbl_rueckstellung_status ADD CONSTRAINT pk_tbl_postpone_status_status_kurzbz PRIMARY KEY (status_kurzbz);
- INSERT INTO public.tbl_rueckstellung_status(status_kurzbz, bezeichnung_mehrsprachig) VALUES('parked', '{BewerberIn parken, Park applicant}');
- INSERT INTO public.tbl_rueckstellung_status(status_kurzbz, bezeichnung_mehrsprachig) VALUES('onhold', '{BewerberIn zurückstellen, Put applicant on hold}');
- INSERT INTO public.tbl_rueckstellung_status(status_kurzbz, bezeichnung_mehrsprachig) VALUES('onhold_zgv', '{BewerberIn zurückstellen (ZGV), Put applicant on hold (ZGV)}');
- INSERT INTO public.tbl_rueckstellung_status(status_kurzbz, bezeichnung_mehrsprachig) VALUES('onhold_drittstaat', '{BewerberIn zurückstellen (Drittstaaten), Put applicant on hold (third countries)}');
+ INSERT INTO public.tbl_rueckstellung_status(status_kurzbz, bezeichnung_mehrsprachig, sort) VALUES('parked', '{Parken, Park}', 1);
+ INSERT INTO public.tbl_rueckstellung_status(status_kurzbz, bezeichnung_mehrsprachig, sort) VALUES('onhold_bmi', '{Bundesministerium, Federal Ministry}', 2);
+ INSERT INTO public.tbl_rueckstellung_status(status_kurzbz, bezeichnung_mehrsprachig, sort) VALUES('onhold_zgv', '{ZGV Prüfung, ZGV examination}', 3);
+ INSERT INTO public.tbl_rueckstellung_status(status_kurzbz, bezeichnung_mehrsprachig, sort) VALUES('onhold_drittstaat', '{Drittstaat, Third country}', 4);
+ INSERT INTO public.tbl_rueckstellung_status(status_kurzbz, bezeichnung_mehrsprachig, sort) VALUES('onhold_remone', '{Reminder 1, Reminder 1}', 5);
+ INSERT INTO public.tbl_rueckstellung_status(status_kurzbz, bezeichnung_mehrsprachig, sort) VALUES('onhold_remtwo', '{Reminder 2, Reminder 2}', 6);
GRANT SELECT, INSERT, UPDATE, DELETE ON public.tbl_rueckstellung_status TO vilesci;
GRANT SELECT ON public.tbl_rueckstellung_status TO web;
";
@@ -65,10 +68,15 @@ if(!$result = @$db->db_query("SELECT 1 FROM public.tbl_rueckstellung LIMIT 1;"))
//Übernahme von "zurückgestellten" und "geparkten" Personen
$qry = "
INSERT INTO public.tbl_rueckstellung (person_id, status_kurzbz, datum_bis, insertvon)
- SELECT person_id, lower(l.logdata->>'name'), zeitpunkt, insertvon
+ SELECT person_id,
+ CASE WHEN
+ (lower(l.logdata->>'name') = 'onhold')
+ THEN 'onhold_remone'
+ ELSE lower(l.logdata->>'name')
+ END,
+ zeitpunkt, insertvon
FROM system.tbl_log l
- WHERE (l.logdata->>'name' = 'Onhold' OR l.logdata->>'name' = 'Parked')
- AND zeitpunkt >= NOW()";
+ WHERE (l.logdata->>'name' = 'Onhold' OR l.logdata->>'name' = 'Parked') AND zeitpunkt >= NOW();";
if(!$db->db_query($qry))
echo 'public.tbl_rueckstellung: '.$db->db_last_error().'
';
diff --git a/system/filtersupdate.php b/system/filtersupdate.php
index c9c14d2a1..525dbe715 100644
--- a/system/filtersupdate.php
+++ b/system/filtersupdate.php
@@ -40,7 +40,8 @@ $filters = array(
{"name": "User/Operator"},
{"name": "InfoCenterMitarbeiter"},
{"name": "LockUser"},
- {"name": "OnholdDate"}
+ {"name": "OnholdDate"},
+ {"name": "Rueckstellgrund"}
],
"filters": [
{
diff --git a/system/phrasesupdate.php b/system/phrasesupdate.php
index 91b224db0..354f91faf 100644
--- a/system/phrasesupdate.php
+++ b/system/phrasesupdate.php
@@ -3747,8 +3747,8 @@ $phrases = array(
)
),
array(
- 'app' => 'core',
- 'category' => 'global',
+ 'app' => 'infocenter',
+ 'category' => 'infocenter',
'phrase' => 'rueckstelldatum',
'insertvon' => 'system',
'phrases' => array(
@@ -3766,6 +3766,26 @@ $phrases = array(
)
)
),
+ array(
+ 'app' => 'infocenter',
+ 'category' => 'infocenter',
+ 'phrase' => 'rueckstellgrund',
+ 'insertvon' => 'system',
+ 'phrases' => array(
+ array(
+ 'sprache' => 'German',
+ 'text' => 'Rückstellgrund',
+ 'description' => '',
+ 'insertvon' => 'system'
+ ),
+ array(
+ 'sprache' => 'English',
+ 'text' => 'onHold reason',
+ 'description' => '',
+ 'insertvon' => 'system'
+ )
+ )
+ ),
array(
'app' => 'infocenter',
'category' => 'infocenter',