ASLE#31926 -- implementatie Asito Leisure.

svn path=/Customer/trunk/; revision=25477
This commit is contained in:
Arthur Egberink
2015-06-17 14:26:25 +00:00
parent 22e2561ad9
commit 95ebac93ff

View File

@@ -306,6 +306,7 @@ AS
FROM asle_v_schoonmaak_bron b, mld_statusopdr so, mld_melding m
WHERE b.mld_statusopdr_key = so.mld_statusopdr_key(+)
AND b.mld_melding_key = m.mld_melding_key
AND b.mld_opdr_key IS NOT NULL
AND mld_melding_status IN (2, 3, 4, 7)
AND TRUNC (b.mld_melding_einddatum) =
TRUNC (SYSDATE)) s,
@@ -410,7 +411,8 @@ CREATE OR REPLACE VIEW asle_v_rap_schoonmaak_sched
type_schoonmaak,
start_inzet,
locatie,
groep_naam
groep_naam,
alg_ruimte_key
)
AS
SELECT TO_CHAR (mld_melding_einddatum, 'dd-mm-yyyy') datum,
@@ -424,7 +426,8 @@ AS
(SELECT alg_locatie_omschrijving
FROM alg_locatie l
WHERE l.alg_locatie_key = w.alg_locatie_key),
groep_naam
groep_naam,
s.alg_ruimte_key
FROM asle_v_schoonmaak s, asle_imp_werkschema w, prs_perslid p
WHERE TRUNC (mld_melding_einddatum) > TRUNC (SYSDATE - 7)
AND TRUNC (mld_melding_einddatum) = TRUNC (start_inzet)
@@ -447,7 +450,8 @@ CREATE OR REPLACE VIEW asle_v_rap_supervisor_sched
opmerking_sup,
locatie,
opdr_status,
groep_naam
groep_naam,
alg_ruimte_key
)
AS
SELECT TO_CHAR (einddatum, 'dd-mm-yyyy') datum,
@@ -470,14 +474,15 @@ AS
opmerking_sup,
alg_locatie_omschrijving,
mld_statusopdr_omschrijving status,
groep_naam
groep_naam,
alg_ruimte_key
FROM (SELECT *
FROM (SELECT prs_perslid_naam,
plan_start,
mld_melding_einddatum,
mld_stdmelding_omschrijving,
prs_perslid_key,
alg_ruimte_key,
alg_ruimte_key alg_ruimte_keys,
b.mld_statusopdr_key,
mld_statusopdr_omschrijving,
groep_naam
@@ -493,9 +498,46 @@ AS
FROM asle_v_schoonmaak_bron
WHERE TRUNC (mld_melding_einddatum) >
TRUNC (SYSDATE - 7))) rg
ON rg.alg_ruimte_key = s.alg_ruimte_key
ON rg.alg_ruimte_key = s.alg_ruimte_keys
AND TRUNC (mld_melding_einddatum) = rg.einddatum) s;
-- View wordt gebruikt in rapport voor supervisor om op de iPad de status van de kamers voor vandaag op te vragen.
-- Door op de ruimte te klikken kan de supervisor vervolgens een nieuwe melding 'Check' op de kamer aanmaken.
CREATE OR REPLACE VIEW asle_v_rap_superv_sched_today (
naam,
plan_start,
beschikbaar,
zone,
page,
compartiment,
ruimte,
type_schoonmaak,
start_inzet,
opmerking_sup,
locatie,
opdr_status,
groep_naam,
alg_ruimte_key)
AS
SELECT naam,
plan_start,
beschikbaar,
zone,
page,
compartiment,
ruimte,
type_schoonmaak,
start_inzet,
opmerking_sup,
locatie,
opdr_status,
groep_naam,
alg_ruimte_key
FROM asle_v_rap_supervisor_sched
WHERE TO_DATE (fclt_f_datum, 'dd-mm-yyyy') = TRUNC(SYSDATE);
CREATE OR REPLACE VIEW asle_v_rap_leegloop
(
fclt_f_datum,
@@ -650,15 +692,32 @@ AS
(SELECT ' --> ' || alg_ruimte_nr
FROM asle_v_schoonmaak s
WHERE s.prs_perslid_key = p.prs_perslid_key
AND s.mld_opdr_key = o.mld_opdr_key
AND o.mld_statusopdr_key = 5 -- uitgegeven
AND s.mld_statusopdr_key = 5 -- uitgegeven
AND NOT EXISTS
(SELECT mld_opdr_key
FROM asle_v_schoonmaak s2
WHERE s2.prs_perslid_key = p.prs_perslid_key
AND mld_statusopdr_key = 5 -- uitgegeven
AND coalesce(s.plan_start, trunc(sysdate)) > coalesce(s2.plan_start, trunc(sysdate))
AND COALESCE (s.plan_start, TRUNC (SYSDATE)) >
COALESCE (s2.plan_start,
TRUNC (SYSDATE))
AND s.mld_opdr_key <> s2.mld_opdr_key)))
|| ' ('
|| (SELECT COUNT ( * )
FROM asle_v_schoonmaak s, mld_opdr o2
WHERE TRUNC (mld_melding_einddatum) = TRUNC (SYSDATE)
AND s.prs_perslid_key = p.prs_perslid_key
AND o2.mld_opdr_key = s.mld_opdr_key
AND o.mld_typeopdr_key = 5 -- standaard
AND s.mld_statusopdr_key = 5)
|| '/'
|| (SELECT COUNT ( * )
FROM asle_v_schoonmaak s, mld_opdr o2
WHERE TRUNC (mld_melding_einddatum) = TRUNC (SYSDATE)
AND s.prs_perslid_key = p.prs_perslid_key
AND o2.mld_opdr_key = s.mld_opdr_key
AND o.mld_typeopdr_key = 5)
|| ')'
plaats
FROM ( SELECT prs_perslid_key, MAX (fac_tracking_key) fac_tracking_key
FROM fac_tracking
@@ -2138,92 +2197,97 @@ BEGIN
v_errormsg := 'Controleer of melding al bestaat';
BEGIN
SELECT m.mld_melding_key,
m.mld_stdmelding_key,
std.mld_stdmelding_omschrijving,
m.mld_melding_einddatum,
d.ins_discipline_omschrijving,
sd.ins_srtdiscipline_prefix
INTO v_melding_key,
v_mld_stdmelding_key,
v_mld_stdmelding_omschrijving,
v_melding_eindtijd,
v_discipline_omschrijving,
v_srtdiscipline_prefix
SELECT MIN(m.mld_melding_key)
INTO v_melding_key
FROM mld_melding m,
mld_stdmelding std,
ins_tab_discipline d,
ins_srtdiscipline sd
mld_stdmelding std
WHERE m.mld_stdmelding_key = std.mld_stdmelding_key
AND std.mld_ins_discipline_key = 21 -- schoonmaak
AND std.mld_ins_discipline_key = d.ins_discipline_key
AND d.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
AND mld_alg_onroerendgoed_keys = rec.alg_ruimte_key
AND TRUNC (mld_melding_einddatum) =
TRUNC (COALESCE(rec.verw_start_schoonmaak, SYSDATE+p_offset));
v_log := NULL;
IF v_mld_stdmelding_key <> v_stdmelding_key
THEN
v_log :=
'Melding: '
|| v_mld_stdmelding_omschrijving
|| ' --> '
|| v_stdmelding_omschrijving;
END IF;
IF rec.verw_start_schoonmaak <> v_melding_eindtijd
IF v_melding_key IS NOT NULL
THEN
SELECT m.mld_stdmelding_key,
std.mld_stdmelding_omschrijving,
m.mld_melding_einddatum,
d.ins_discipline_omschrijving,
sd.ins_srtdiscipline_prefix
INTO v_mld_stdmelding_key,
v_mld_stdmelding_omschrijving,
v_melding_eindtijd,
v_discipline_omschrijving,
v_srtdiscipline_prefix
FROM mld_melding m,
mld_stdmelding std,
ins_tab_discipline d,
ins_srtdiscipline sd
WHERE m.mld_stdmelding_key = std.mld_stdmelding_key
AND std.mld_ins_discipline_key = d.ins_discipline_key
AND d.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
AND mld_alg_onroerendgoed_keys = rec.alg_ruimte_key
AND m.mld_melding_key = v_melding_key;
v_log := NULL;
IF v_mld_stdmelding_key <> v_stdmelding_key
THEN
v_log :=
'Melding: '
|| v_mld_stdmelding_omschrijving
|| ' --> '
|| v_stdmelding_omschrijving;
END IF;
IF rec.verw_start_schoonmaak <> v_melding_eindtijd
THEN
IF v_log IS NOT NULL
THEN
v_log := v_log || CHR (10);
END IF;
v_log :=
'Gereed: '
|| TO_CHAR (v_melding_eindtijd, 'dd-mm-yyyy hh24:mi')
|| ' --> '
|| TO_CHAR (rec.verw_start_schoonmaak,
'dd-mm-yyyy hh24:mi');
END IF;
IF v_log IS NOT NULL
THEN
v_log := v_log || CHR (10);
UPDATE mld_melding
SET mld_stdmelding_key = v_stdmelding_key,
mld_melding_einddatum = rec.verw_start_schoonmaak
WHERE mld_melding_key = v_melding_key;
v_log :=
'*Melding '
|| v_srtdiscipline_prefix
|| v_melding_key
|| ' ('
|| v_discipline_omschrijving
|| '/'
|| v_stdmelding_omschrijving
|| ') is gewijzigd'
|| CHR (10)
|| v_log;
INSERT INTO fac_tracking (fac_srtnotificatie_key,
fac_tracking_refkey,
fac_tracking_oms,
prs_perslid_key)
SELECT fac_srtnotificatie_key,
v_melding_key,
v_log,
v_user_key
FROM fac_srtnotificatie
WHERE fac_srtnotificatie_code = 'MLDUPD';
END IF;
v_log :=
'Gereed: '
|| TO_CHAR (v_melding_eindtijd, 'dd-mm-yyyy hh24:mi')
|| ' --> '
|| TO_CHAR (rec.verw_start_schoonmaak,
'dd-mm-yyyy hh24:mi');
END IF;
IF v_log IS NOT NULL
THEN
UPDATE mld_melding
SET mld_stdmelding_key = v_stdmelding_key,
mld_melding_einddatum = rec.verw_start_schoonmaak
WHERE mld_melding_key = v_melding_key;
v_log :=
'*Melding '
|| v_srtdiscipline_prefix
|| v_melding_key
|| ' ('
|| v_discipline_omschrijving
|| '/'
|| v_stdmelding_omschrijving
|| ') is gewijzigd'
|| CHR (10)
|| v_log;
INSERT INTO fac_tracking (fac_srtnotificatie_key,
fac_tracking_refkey,
fac_tracking_oms,
prs_perslid_key)
SELECT fac_srtnotificatie_key,
v_melding_key,
v_log,
v_user_key
FROM fac_srtnotificatie
WHERE fac_srtnotificatie_code = 'MLDUPD';
END IF;
mld.upsertmeldingkenmerk (81, -- groepnaam
v_melding_key,
rec.groep_naam);
EXCEPTION
WHEN NO_DATA_FOUND
THEN
mld.upsertmeldingkenmerk (81, -- groepnaam
v_melding_key,
rec.groep_naam);
ELSE
v_errormsg := 'Aanmaken meldingen';
INSERT INTO mld_melding (mld_melding_omschrijving,
@@ -2255,6 +2319,7 @@ BEGIN
v_melding_key,
rec.groep_naam);
mld.setmeldingstatus (v_melding_key, 2, v_user_key);
END IF;
END;
END;
END LOOP;
@@ -2482,7 +2547,7 @@ BEGIN adm.systrackscriptId('$Id$', 0); END;
/
BEGIN fac.registercustversion('ASLE', 6); END;
BEGIN fac.registercustversion('ASLE', 7); END;
/
COMMIT;