BRED#84141 -- Implementatie Bredenoord B.V. - Inpassing Receptie bij Cateringsverhaal (bestellen + brengen en ophalen)

svn path=/Customer/trunk/; revision=68654
This commit is contained in:
Jos Migo
2025-04-03 18:20:45 +00:00
parent 60d6ebb49c
commit 380d9eb218

View File

@@ -801,6 +801,59 @@ END;
--- DOMEINVIEWS ---------------
-------------------------------
CREATE OR REPLACE VIEW bred_v_personenlijst
(
PRS_PERSLID_KEY,
NAAM,
PERSONEELSNUMMER,
AFDELING,
EMAIL,
PRS_PERSLID_VERWIJDER
)
AS
SELECT
p.prs_perslid_key,
CASE WHEN p.prs_perslid_tussenvoegsel IS NULL
THEN p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam || ' (' || sp.prs_srtperslid_omschrijving || ')'
ELSE p.prs_perslid_voornaam || ' ' || p.prs_perslid_tussenvoegsel || ' ' || p.prs_perslid_naam || ' (' || sp.prs_srtperslid_omschrijving || ')'
END
naam,
p.prs_perslid_nr,
a.prs_afdeling_naam3,
p.prs_perslid_email,
p.prs_perslid_verwijder
FROM
prs_perslid p,
prs_srtperslid sp,
prs_v_afdeling a,
prs_bedrijf b
WHERE
p.prs_afdeling_key = a.prs_afdeling_key
AND a.prs_bedrijf_key = b.prs_bedrijf_key
AND b.prs_bedrijf_key = 8 -- bedrijfs_key BRED
AND p.prs_srtperslid_key = sp.prs_srtperslid_key
ORDER BY sp.prs_srtperslid_omschrijving DESC, p.prs_perslid_voornaam, p.prs_perslid_naam
;
CREATE OR REPLACE VIEW bred_v_ruimtes
(
ALG_RUIMTE_KEY,
ALG_RUIMTE_OMSCHRIJVING,
ALG_SRTRUIMTE_OMSCHRIJVING,
ALG_RUIMTE_VERWIJDER
)
AS
SELECT alg_ruimte_key,
alg_gebouw_naam || ' - ' || alg_ruimte_nr || ' - ' || alg_ruimte_omschrijving
alg_ruimte_omschrijving,
alg_srtruimte_omschrijving,
alg_ruimte_verwijder
FROM alg_v_ruimte_gegevens_all
WHERE instr(alg_ruimte_upper_nr, 'FICTIEF') = 0
ORDER BY alg_gebouw_naam, alg_ruimte_nr
;
-------------------------------
--- NOTI-JOBS ---------------
@@ -1155,6 +1208,195 @@ SELECT mld_uitvoerende_key,
FROM bred_v_rap_opdrachten
ORDER BY geplande_aanvang_b ;
-- Catering: bestellen (receptie) en daarna brengen en halen/opruimen (facilitaire team)
---- via calenderview in beeld houden dagelijks
CREATE OR REPLACE VIEW bred_v_rap_meldingen_cat
(
VAKGROEP_TYPE,
VAKGROEP,
STD_MELDING,
MLD_MELDING_KEY,
MELDING_NUMMER,
MELDING_ONDERWERP,
MELDING_AANVRAGER,
MELDING_PLAATS,
MELDING_RUIMTE,
MELDING_STATUS,
MELDING_BEHANDELAAR,
MELDING_BEHANDELAAR_KEY,
MELDING_BEHANDELTEAM,
MELDING_DATUM,
MELDING_EINDATUM,
MELDING_ACTIEDATUM,
-- kenmerkvelden lunch halen/brengen
TIJDSTIP_VAN,
TIJDSTIP_TOT,
TIJDSTIP_BRENGEN,
GEPLANDE_AANVANG,
GEPLANDE_AANVANG_B,
GEPLANDE_EINDDATUM,
GEPLANDE_EINDDATUM_B,
-- kenmerkvelden status
STATUS_BESTELD,
STATUS_GEBRACHT,
STATUS_OPGEHAALD,
STATUS_KALENDER
)
AS
SELECT sd.ins_srtdiscipline_omschrijving,
d.ins_discipline_omschrijving,
std.mld_stdmelding_omschrijving,
m.mld_melding_key,
sd.ins_srtdiscipline_prefix || TO_CHAR (m.mld_melding_key)
meldingnummer,
m.mld_melding_onderwerp,
p.prs_perslid_naam_full,
l.alg_locatie_plaats,
r.alg_ruimte_omschrijving,
ms.mld_statuses_omschrijving,
COALESCE (ab.prs_perslid_naam_full, '<nog geen actieve behandelaar>')
behandelaar,
ab.prs_perslid_key
melding_behandelaar_key,
COALESCE (abt.ins_discipline_omschrijving, '<nog geen behandelteam>')
behandelteam,
m.mld_melding_datum,
m.mld_melding_einddatum,
m.mld_melding_actiedatum,
-- kenmerkvelden lunch - afspraak
v.tijdstip_van
tijdstip_van,
v.tijdstip_tot
tijdstip_tot,
v.tijdstip_brengen
tijdstip_brengen,
CASE WHEN v.tijdstip_brengen IS NOT NULL
THEN TO_CHAR(v.datum_afspraak,'dd-mm-yyyy') || ' ' || v.tijdstip_brengen || ':00'
ELSE TO_CHAR(v.datum_afspraak,'dd-mm-yyyy') || ' ' || '06:00' || ':00'
END
geplande_aanvang,
CASE WHEN v.tijdstip_brengen IS NOT NULL
THEN fac.safe_to_date(TO_CHAR(v.datum_afspraak,'dd-mm-yyyy') || ' ' || v.tijdstip_brengen || ':00', 'dd-mm-yyyy hh24:mi:ss')
ELSE fac.safe_to_date(TO_CHAR(v.datum_afspraak,'dd-mm-yyyy') || ' ' || '06:00' || ':00', 'dd-mm-yyyy hh24:mi:ss')
END
geplande_aanvang_b,
CASE WHEN v.tijdstip_tot IS NOT NULL
THEN TO_CHAR(v.datum_afspraak,'dd-mm-yyyy') || ' ' || v.tijdstip_tot || ':00'
ELSE TO_CHAR(v.datum_afspraak,'dd-mm-yyyy') || ' ' || '19:00' || ':00'
END
geplande_einddatum,
CASE WHEN v.tijdstip_tot IS NOT NULL
THEN fac.safe_to_date(TO_CHAR(v.datum_afspraak,'dd-mm-yyyy') || ' ' || v.tijdstip_tot || ':00', 'dd-mm-yyyy hh24:mi:ss')
ELSE fac.safe_to_date(TO_CHAR(v.datum_afspraak,'dd-mm-yyyy') || ' ' || '19:00' || ':00', 'dd-mm-yyyy hh24:mi:ss')
END
geplande_einddatum_b,
v.besteld
besteld,
v.gebracht
gebracht,
v.opgehaald
opgehaald,
-- statussen in kalender - rood - oranje - groen
CASE
WHEN v.gebracht IS NULL AND v.opgehaald IS NULL THEN 'Open'
WHEN v.gebracht IS NOT NULL AND v.opgehaald IS NULL THEN 'Gebracht'
WHEN v.gebracht IS NOT NULL AND v.opgehaald IS NOT NULL THEN 'Gereed'
ELSE ''
END status_kalender
FROM mld_melding m,
prs_v_perslid_fullnames p, -- aanvrager
prs_v_perslid_fullnames ab, -- actieve behandelaar
ins_tab_discipline abt, -- actieve behandelteam
ins_tab_discipline d,
ins_srtdiscipline sd,
mld_stdmelding std,
alg_locatie l,
alg_district d,
mld_statuses ms,
bred_v_ruimtes r,
(SELECT
mld_melding_key,
TRUNC(mld_melding_einddatum)
datum_afspraak,
flx.getflex('MLD',363, mld_melding_key)
tijdstip_van,
flx.getflex('MLD',364, mld_melding_key)
tijdstip_tot,
flx.getflex('MLD',404, mld_melding_key)
tijdstip_brengen,
flx.getflex('MLD',484, mld_melding_key)
besteld,
flx.getflex('MLD',461, mld_melding_key)
gebracht,
flx.getflex('MLD',462, mld_melding_key)
opgehaald
FROM mld_melding
WHERE mld_stdmelding_key = 119) v -- kenmerken bij catering
WHERE
m.mld_stdmelding_key = std.mld_stdmelding_key
AND std.mld_stdmelding_key = 119
AND m.mld_alg_onroerendgoed_keys = r.alg_ruimte_key
AND std.mld_ins_discipline_key = d.ins_discipline_key
AND d.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
AND m.prs_perslid_key = p.prs_perslid_key -- aanvrager
AND m.mld_melding_behandelaar2_key = ab.prs_perslid_key(+)
AND m.mld_ins_discipline_key = abt.ins_discipline_key(+)
AND m.mld_alg_locatie_key = l.alg_locatie_key -- alle std-meldingen hebben verplicht-niveau locatie
AND l.alg_district_key = d.alg_district_key
AND m.mld_melding_status = ms.mld_statuses_key
AND m.mld_melding_key = v.mld_melding_key
;
CREATE OR REPLACE VIEW bred_v_cal_meldingen_cat
(
USER_KEY,
TITLE,
VAN,
TOT,
ITEM_KEY,
COLOR,
TEXTCOLOR,
MELDING_BEHANDELTEAM,
MELDING_BEHANDELAAR,
MELDING_RUIMTE,
MELDING_ONDERWERP,
STATUS_KALENDER
)
AS
SELECT melding_behandelaar_key,
' - ' || melding_nummer || ' (' || melding_status || ')' || CHR(10)
|| melding_ruimte || CHR(10)
|| melding_behandelteam || ' / ' || melding_behandelaar || CHR(10)
|| 'Status: ' || status_kalender || CHR(10)
|| '- ' || geplande_aanvang || CHR(10)
|| '- ' || geplande_einddatum
title,
geplande_aanvang_b
van,
geplande_einddatum_b
tot,
mld_melding_key,
DECODE (status_kalender,
'Gereed', '#008000', -- groen
'Open', '#FF4611', -- rood/oranje
'Gebracht', '#FFA500', -- oranje
'#0000FF')
color,
DECODE (status_kalender,
'Gereed', '#000000', -- zwart
'Open', '#FFFFFF', -- wit
'Gebracht', '#FFFFFF', -- wit
'#000000')
textcolor,
melding_behandelteam,
melding_behandelaar,
melding_ruimte,
melding_onderwerp,
status_kalender
FROM bred_v_rap_meldingen_cat
ORDER BY geplande_aanvang_b ;
-- O.a. voor beheer nieuwe medewerkers en inactieve mederwerkers en koppeling object voor registreren van de uitgegeven middelen
CREATE OR REPLACE VIEW bred_v_rap_personenbeheer
(