NYBU#28781: RES: aparte zaalprijzen voor intern en extern.
svn path=/Database/trunk/; revision=23587
This commit is contained in:
@@ -443,7 +443,6 @@ DEFINE_SETTING('RES', 0003, 'res_room_order' , 'number'
|
||||
DEFINE_SETTING('FAC', 0001, 'res_plan_max_bezet' , 'number' , '0' , 'Maximum planbord ''occupied'' fields. AiAi timeout prevention (future use)')
|
||||
DEFINE_SETTING('RES', 0009, 'res_image_path' , 'string' , NULL , 'path to folder storing res_ruimte pictures')
|
||||
DEFINE_SETTING('RES', 0003, 'res_with_mld' , 'number' , '0' , 'Reservering kan meldingen hebben {0=Nee (default) | 1=Ja}')
|
||||
DEFINE_SETTING('RES', 0003, 'res_ruimte_prijsfactor_intern' , 'float' , '1' , 'Default multiplication factor for room prices if for internal use (e.g. 0.8)')
|
||||
DEFINE_SETTING('RES', 0003, 'res_delete_ask_kosten' , 'number' , '1' , 'Aks for recharge costs at delete (0=never ask, 1=ask after, 2=ask only final, 3=ask only final after)')
|
||||
DEFINE_SETTING('RES', 0003, 'res_pool_early' , 'number' , '30' , 'Minutes for early pool-visitors')
|
||||
DEFINE_SETTING('RES', 0003, 'res_pool_late' , 'number' , '30' , 'Minutes for late pool-visitors')
|
||||
|
||||
@@ -1028,8 +1028,6 @@ AS
|
||||
price_allday res_ruimte.res_ruimte_prijs_dag%TYPE;
|
||||
room_price_total res_rsv_ruimte.res_rsv_ruimte_prijs%TYPE;
|
||||
afgesprokentotaal res_rsv_ruimte.res_rsv_ruimte_totaal%TYPE;
|
||||
prs_kostenplaats_extern prs_kostenplaats.prs_kostenplaats_extern%TYPE;
|
||||
ruimte_prijsfactor_intern res_ruimte.res_ruimte_prijsfactor_intern%TYPE;
|
||||
|
||||
res_ruimte_length NUMBER;
|
||||
res_ruimte_begin NUMBER;
|
||||
@@ -1119,19 +1117,37 @@ AS
|
||||
|
||||
-- Wat basisgegevens
|
||||
BEGIN
|
||||
SELECT COALESCE (ru.res_ruimte_prijs, 0),
|
||||
SELECT CASE COALESCE (kp.prs_kostenplaats_extern, 0)
|
||||
WHEN 0
|
||||
THEN COALESCE (ru.res_ruimte_intprijs, 0) -- Intern
|
||||
ELSE COALESCE (ru.res_ruimte_prijs, 0) -- Extern
|
||||
END,
|
||||
ru.res_ruimte_prijs_vast,
|
||||
COALESCE (ru.res_ruimte_prijs_ochtend, 0),
|
||||
COALESCE (ru.res_ruimte_prijs_middag, 0),
|
||||
COALESCE (ru.res_ruimte_prijs_avond, 0),
|
||||
COALESCE (ru.res_ruimte_prijs_dag, 0),
|
||||
CASE COALESCE (kp.prs_kostenplaats_extern, 0)
|
||||
WHEN 0
|
||||
THEN COALESCE (ru.res_ruimte_intprijs_ochtend, 0) -- Intern
|
||||
ELSE COALESCE (ru.res_ruimte_prijs_ochtend, 0) -- Extern
|
||||
END,
|
||||
CASE COALESCE (kp.prs_kostenplaats_extern, 0)
|
||||
WHEN 0
|
||||
THEN COALESCE (ru.res_ruimte_intprijs_middag, 0) -- Intern
|
||||
ELSE COALESCE (ru.res_ruimte_prijs_middag, 0) -- Extern
|
||||
END,
|
||||
CASE COALESCE (kp.prs_kostenplaats_extern, 0)
|
||||
WHEN 0
|
||||
THEN COALESCE (ru.res_ruimte_intprijs_avond, 0) -- Intern
|
||||
ELSE COALESCE (ru.res_ruimte_prijs_avond, 0) -- Extern
|
||||
END,
|
||||
CASE COALESCE (kp.prs_kostenplaats_extern, 0)
|
||||
WHEN 0
|
||||
THEN COALESCE (ru.res_ruimte_intprijs_dag, 0) -- Intern
|
||||
ELSE COALESCE (ru.res_ruimte_prijs_dag, 0) -- Extern
|
||||
END,
|
||||
fac.safe_to_number (TO_CHAR (rr.res_rsv_ruimte_tot - rr.res_rsv_ruimte_van)) * 24,
|
||||
fac.safe_to_number (TO_CHAR (rr.res_rsv_ruimte_van, 'HH24'))
|
||||
+ fac.safe_to_number (TO_CHAR (rr.res_rsv_ruimte_van, 'MI')) / 60,
|
||||
fac.safe_to_number (TO_CHAR (rr.res_rsv_ruimte_tot, 'HH24'))
|
||||
+ fac.safe_to_number (TO_CHAR (rr.res_rsv_ruimte_tot, 'MI')) / 60,
|
||||
COALESCE (kp.prs_kostenplaats_extern, 0),
|
||||
ru.res_ruimte_prijsfactor_intern
|
||||
+ fac.safe_to_number (TO_CHAR (rr.res_rsv_ruimte_tot, 'MI')) / 60
|
||||
INTO room_price,
|
||||
room_price_fixed,
|
||||
price_morning,
|
||||
@@ -1140,9 +1156,7 @@ AS
|
||||
price_allday,
|
||||
res_ruimte_length,
|
||||
res_ruimte_begin,
|
||||
res_ruimte_end,
|
||||
prs_kostenplaats_extern,
|
||||
ruimte_prijsfactor_intern
|
||||
res_ruimte_end
|
||||
FROM res_rsv_ruimte rr, res_ruimte_opstelling ro, res_ruimte ru, prs_kostenplaats kp
|
||||
WHERE rr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key
|
||||
AND rr.prs_kostenplaats_key = kp.prs_kostenplaats_key (+) -- of isdie verplicht?
|
||||
@@ -1377,12 +1391,6 @@ AS
|
||||
thisroomprice := 0;
|
||||
END IF;
|
||||
|
||||
-- Hier rekening houden met intern/extern tarief
|
||||
IF prs_kostenplaats_extern = 0
|
||||
THEN
|
||||
thisroomprice := thisroomprice * COALESCE(ruimte_prijsfactor_intern,fac.safe_to_number (fac.getsetting ('res_ruimte_prijsfactor_intern')));
|
||||
END IF;
|
||||
|
||||
-- Doorbelastingspercentage (bij annuleren) op het laatste moment nog.
|
||||
-- Voor de berekening van de doorbelasting moet gerekend worden met een op twee decimalen afgeronde ruimteprijs.
|
||||
thisroomprice := ROUND(thisroomprice, 2) * doorbelasting / 100;
|
||||
|
||||
Reference in New Issue
Block a user