FSN#35446 knop contracten vaker tonen ook op basis van contractsoort + scope
svn path=/Website/trunk/; revision=28142
This commit is contained in:
@@ -377,8 +377,39 @@ function cnt_list (pautfunction, params)
|
||||
if (ins_key)
|
||||
{
|
||||
sql += " AND c.cnt_contract_key IN "
|
||||
+ " (SELECT cnt_contract_key FROM cnt_contract_object"
|
||||
+ " WHERE cnt_ins_deel_key = " + ins_key + ")";
|
||||
+ " (SELECT DISTINCT cnt_contract_key"
|
||||
+ " FROM (SELECT cnt_contract_key"
|
||||
+ " FROM cnt_contract_object"
|
||||
+ " WHERE cnt_ins_deel_key =" + ins_key + ""
|
||||
+ " UNION"
|
||||
+ " SELECT co.cnt_contract_key"
|
||||
+ " FROM CNT_V_AANWEZIGCONTRACT_OBJECT co,"
|
||||
+ " ins_deel d,"
|
||||
+ " cnt_v_aanwezigcontract_plaats ccp,"
|
||||
+ " alg_v_allonroerendgoed aao"
|
||||
+ " WHERE cnt_ins_deel_key IS NULL"
|
||||
+ " AND co.cnt_ins_srtdeel_key = d.ins_srtdeel_key"
|
||||
+ " AND d.ins_deel_key =" + ins_key + ""
|
||||
+ " AND ccp.cnt_contract_key = co.cnt_contract_key"
|
||||
+ " AND COALESCE (d.ins_alg_ruimte_type_org,"
|
||||
+ " ins_alg_ruimte_type) = 'R'"
|
||||
+ " AND COALESCE (d.ins_alg_ruimte_key_org,"
|
||||
+ " ins_alg_ruimte_key) = aao.alg_ruimte_key"
|
||||
+ " AND ( (ccp.cnt_alg_plaats_code = 'L'"
|
||||
+ " AND ccp.cnt_alg_plaats_key = aao.alg_locatie_key)"
|
||||
+ " OR (ccp.cnt_alg_plaats_code = 'G'"
|
||||
+ " AND ccp.cnt_alg_plaats_key = aao.alg_gebouw_key))"
|
||||
+ " UNION"
|
||||
+ " SELECT co.cnt_contract_key"
|
||||
+ " FROM CNT_V_AANWEZIGCONTRACT_OBJECT co, ins_deel d"
|
||||
+ " WHERE cnt_ins_deel_key IS NULL"
|
||||
+ " AND co.cnt_ins_srtdeel_key = d.ins_srtdeel_key"
|
||||
+ " AND d.ins_deel_key =" + ins_key + ""
|
||||
+ " AND (co.cnt_contract_key NOT IN"
|
||||
+ " (SELECT cnt_contract_key"
|
||||
+ " FROM cnt_v_aanwezigcontract_plaats)"
|
||||
+ " OR COALESCE (d.ins_alg_ruimte_type_org,"
|
||||
+ " ins_alg_ruimte_type) != 'R')))";
|
||||
}
|
||||
|
||||
if (kp_key)
|
||||
|
||||
@@ -31,6 +31,13 @@ if (this_ins.isSleCil)
|
||||
else
|
||||
var autfunction = getQParam("pautfunction", (urole == "fo"? "WEB_INSFOF" : "WEB_INSMAN"));
|
||||
|
||||
var authparamsCNTUSE = user.checkAutorisation("WEB_CNTUSE", true);
|
||||
var authparamsCNTMAN = user.checkAutorisation("WEB_CNTMAN", true);
|
||||
var curole = "bo";
|
||||
|
||||
if (!authparamsCNTMAN && authparamsCNTUSE)
|
||||
curole = "fe";
|
||||
|
||||
var authparams = user.checkAutorisation(autfunction);
|
||||
var sql, oRs;
|
||||
|
||||
@@ -214,7 +221,7 @@ oRs.Close();
|
||||
}
|
||||
function showHistory()
|
||||
{
|
||||
FcltMgr.openDetail("appl/ins/ins_history_search.asp?ins_key=<%=ins_key%>&urole=<%=urole%>", "<%=L("lcl_history")%>");
|
||||
FcltMgr.openDetail("appl/ins/ins_history_search.asp?ins_key=<%=ins_key%>&urole=<%=curole%>", "<%=L("lcl_history")%>");
|
||||
}
|
||||
function ins_reserveerbaar()
|
||||
{
|
||||
@@ -233,7 +240,7 @@ oRs.Close();
|
||||
|
||||
function ins_contract()
|
||||
{
|
||||
FcltMgr.openDetail("appl/cnt/cnt_search_list.asp?ins_key=<%=ins_key%>&urole=<%=urole%>", "<%=L("lcl_contract")%>");
|
||||
FcltMgr.openDetail("appl/cnt/cnt_search_list.asp?ins_key=<%=ins_key%>&urole=<%=curole%>", "<%=L("lcl_contract")%>");
|
||||
}
|
||||
|
||||
function ins_delete()
|
||||
@@ -276,10 +283,39 @@ oRs.Close();
|
||||
oRs = Oracle.Execute(sql);
|
||||
this_ins.verbruiksmeter = oRs("meetwaarde").Value == 1;
|
||||
|
||||
sql = "SELECT COUNT(*) "
|
||||
+ " FROM cnt_contract_object o "
|
||||
+ " WHERE o.cnt_ins_deel_key = " + ins_key
|
||||
+ " AND o.cnt_contract_object_verwijder IS NULL ";
|
||||
sql = "SELECT COUNT ( * )"
|
||||
+ " FROM (SELECT cnt_contract_key"
|
||||
+ " FROM cnt_v_aanwezigcontract_object"
|
||||
+ " WHERE cnt_ins_deel_key =" + ins_key + ""
|
||||
+ " UNION"
|
||||
+ " SELECT co.cnt_contract_key"
|
||||
+ " FROM CNT_V_AANWEZIGCONTRACT_OBJECT co,"
|
||||
+ " ins_deel d,"
|
||||
+ " cnt_v_aanwezigcontract_plaats ccp,"
|
||||
+ " alg_v_allonroerendgoed aao"
|
||||
+ " WHERE cnt_ins_deel_key IS NULL"
|
||||
+ " AND co.cnt_ins_srtdeel_key = d.ins_srtdeel_key"
|
||||
+ " AND d.ins_deel_key =" + ins_key + ""
|
||||
+ " AND ccp.cnt_contract_key = co.cnt_contract_key"
|
||||
+ " AND COALESCE (d.ins_alg_ruimte_type_org,"
|
||||
+ " ins_alg_ruimte_type) = 'R'"
|
||||
+ " AND COALESCE (d.ins_alg_ruimte_key_org,"
|
||||
+ " ins_alg_ruimte_key) = aao.alg_ruimte_key"
|
||||
+ " AND ( (ccp.cnt_alg_plaats_code = 'L'"
|
||||
+ " AND ccp.cnt_alg_plaats_key = aao.alg_locatie_key)"
|
||||
+ " OR (ccp.cnt_alg_plaats_code = 'G'"
|
||||
+ " AND ccp.cnt_alg_plaats_key = aao.alg_gebouw_key))"
|
||||
+ " UNION"
|
||||
+ " SELECT co.cnt_contract_key"
|
||||
+ " FROM CNT_V_AANWEZIGCONTRACT_OBJECT co, ins_deel d"
|
||||
+ " WHERE cnt_ins_deel_key IS NULL"
|
||||
+ " AND co.cnt_ins_srtdeel_key = d.ins_srtdeel_key"
|
||||
+ " AND d.ins_deel_key ="+ ins_key + ""
|
||||
+ " AND (co.cnt_contract_key NOT IN"
|
||||
+ " (SELECT cnt_contract_key"
|
||||
+ " FROM cnt_v_aanwezigcontract_plaats)"
|
||||
+ " OR COALESCE (d.ins_alg_ruimte_type_org,"
|
||||
+ " ins_alg_ruimte_type) != 'R'))";
|
||||
|
||||
oRs = Oracle.Execute(sql);
|
||||
this_ins.contracts = oRs(0).Value;
|
||||
@@ -306,8 +342,9 @@ oRs.Close();
|
||||
if (this_ins.canDelete)
|
||||
buttons.push({title: L("lcl_delete"), action: "ins_delete()", icon: "delete.png"});
|
||||
|
||||
if (this_ins.contracts > 0)
|
||||
if (this_ins.contracts > 0 && (authparamsCNTMAN || authparamsCNTUSE))
|
||||
buttons.push ({title: L("lcl_contract"), action: "ins_contract()", icon: "contract.png"});
|
||||
|
||||
buttons.push ({title: L("lcl_print"), action: "ins_print()", icon: "print.png" });
|
||||
|
||||
var headertitle = L("lcl_ins_frame_algemeen");
|
||||
|
||||
Reference in New Issue
Block a user