Address #448 - Tripartite agreement and addons.
git-svn-id: http://locode01.ad.dom/svn/WEBMIP/trunk@4713 248e525c-4dfb-0310-94bc-949c084e9493
This commit is contained in:
@@ -43,6 +43,20 @@ CREATE OR REPLACE PACKAGE mip_tripartite IS
|
||||
,p_tab_messages IN OUT t_tab_messages)
|
||||
RETURN BOOLEAN;
|
||||
|
||||
/** Are the addons restricted under the under Tripartite arrangements?
|
||||
%param p_amr_required YES/NO
|
||||
%param p_ems_required YES/NO
|
||||
%param p_bypass_required YES/NO
|
||||
%param p_regi_code potential tripartite region
|
||||
%return TRUE if the enquiry is allowed
|
||||
*/
|
||||
FUNCTION addons_allowed(p_amr_required IN enquiries.amr_required%TYPE
|
||||
,p_ems_required IN enquiries.ems_required%TYPE
|
||||
,p_bypass_required IN enquiries.bypass_required%TYPE
|
||||
,p_regi_code IN regions.code%TYPE
|
||||
,p_tab_messages IN OUT t_tab_messages)
|
||||
RETURN BOOLEAN;
|
||||
|
||||
/** Is the given addon allowed to non-Tripartite members
|
||||
%param p_addit_code the addon to be checked
|
||||
%param p_regi_code the region to be checked against
|
||||
@@ -221,9 +235,12 @@ CREATE OR REPLACE PACKAGE BODY mip_tripartite IS
|
||||
,p_regi_code IN regions.code%TYPE
|
||||
,p_tab_messages IN OUT t_tab_messages)
|
||||
RETURN BOOLEAN IS
|
||||
l_bypass_required VARCHAR2(3) := CASE nvl(p_bypass_required
|
||||
,'Not required') WHEN 'Not required' THEN 'NO' ELSE 'YES' END;
|
||||
l_valid BOOLEAN DEFAULT TRUE;
|
||||
BEGIN
|
||||
|
||||
pl('addons_allowed:entry:' || p_amr_required || ':' || p_ems_required || ':' ||
|
||||
p_bypass_required || ':' || p_regi_code);
|
||||
IF p_amr_required = 'YES'
|
||||
AND NOT addon_allowed(p_adit_code => 'AMR'
|
||||
,p_regi_code => p_regi_code) THEN
|
||||
@@ -238,7 +255,7 @@ CREATE OR REPLACE PACKAGE BODY mip_tripartite IS
|
||||
al('Tripartite Agreement prevents EMS being requested. '
|
||||
,p_tab_messages);
|
||||
END IF;
|
||||
IF p_bypass_required = 'YES'
|
||||
IF l_bypass_required = 'YES'
|
||||
AND NOT addon_allowed(p_adit_code => 'BYPASS'
|
||||
,p_regi_code => p_regi_code) THEN
|
||||
l_valid := FALSE;
|
||||
@@ -246,6 +263,8 @@ CREATE OR REPLACE PACKAGE BODY mip_tripartite IS
|
||||
,p_tab_messages);
|
||||
END IF;
|
||||
|
||||
pl('addons_allowed:exit:' || CASE l_valid WHEN TRUE THEN 'TRUE' ELSE
|
||||
'FALSE' END);
|
||||
RETURN l_valid;
|
||||
END addons_allowed;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user