Files
Facilitor/APPL/MLD/mld_stdmsrtruimte.asp
Erik Groener 75691bfda6 FSN#36280 Behandeling 2.0 loopt vast in IE8 mode
svn path=/Website/trunk/; revision=29287
2016-05-04 07:47:59 +00:00

274 lines
12 KiB
Plaintext
Raw Blame History

<%@language = "javascript" %>
<% /*
$Revision$
$Id$
File: mld_stdmsrtruimte.asp
Description: Overrulen per stdmelding of srtruimte van SLA-parameters
Parameters:
Context:
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/disciplineselector.inc" -->
<!-- #include file="../Shared/stdmeldingselector.inc" -->
<%
FCLTHeader.Requires({js: ["jquery-ui.js"]});
var stdmsrtruimte_key = getQParamInt("mld_stdmsrtruimte_key", -1); // default is nieuwe
var stdmelding_key = getQParamInt("stdmelding_key", -1);
var srtruimte_key = getQParamInt("srtruimte_key", -1);
var authparams = user.checkAutorisation("WEB_MLDMGT");
var ssr_info = {};
if (stdmsrtruimte_key > 0)
{ // bestaande ruimtesoort
var sql = "SELECT ssr.mld_stdmsrtruimte_key"
+ " , ssr.mld_stdmelding_key"
+ " , sm.mld_ins_discipline_key"
+ " , ssr.alg_srtruimte_key"
+ " , ssr.mld_stdmsrtruimte_t_accepttijd.tijdsduur acceptatietijd_tijdsduur"
+ " , ssr.mld_stdmsrtruimte_t_accepttijd.eenheid acceptatietijd_eenheid"
+ " , ssr.mld_stdmsrtruimte_t_uitvtijd.tijdsduur uitvoertijd_tijdsduur"
+ " , ssr.mld_stdmsrtruimte_t_uitvtijd.eenheid uitvoertijd_eenheid"
+ " , ssr.mld_stdmsrtruimte_malusbasis"
+ " , ssr.mld_stdmsrtruimte_malus"
+ " FROM mld_stdmsrtruimte ssr"
+ " , mld_stdmelding sm"
+ " WHERE ssr.mld_stdmelding_key = sm.mld_stdmelding_key"
+ " AND ssr.mld_stdmsrtruimte_key = " + stdmsrtruimte_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
var ssr_info = { stdmelding_key: oRs("mld_stdmelding_key").Value,
disc_key: oRs("mld_ins_discipline_key").Value,
srtruimte_key: oRs("alg_srtruimte_key").Value,
acceptatietijd_tijdsduur: oRs("acceptatietijd_tijdsduur").Value,
acceptatietijd_eenheid: oRs("acceptatietijd_eenheid").Value,
uitvoertijd_tijdsduur: oRs("uitvoertijd_tijdsduur").Value,
uitvoertijd_eenheid: oRs("uitvoertijd_eenheid").Value,
malusbasis: oRs("mld_stdmsrtruimte_malusbasis").Value,
malus: oRs("mld_stdmsrtruimte_malus").Value
};
}
oRs.close();
}
else
{ // Nieuwe overrule.
// Als melding is meegegeven dan staat de vakgroep (discipline) vast.
var disc_key = -1;
if (stdmelding_key > 0)
{
var sql = "SELECT sm.mld_ins_discipline_key"
+ " FROM mld_stdmelding sm"
+ " WHERE sm.mld_stdmelding_key = " + stdmelding_key;
oRs = Oracle.Execute(sql);
disc_key = oRs("mld_ins_discipline_key").Value;
}
var ssr_info = { stdmelding_key: stdmelding_key,
disc_key: disc_key,
srtruimte_key: srtruimte_key,
acceptatietijd_tijdsduur: null,
acceptatietijd_eenheid: null,
uitvoertijd_tijdsduur: null,
uitvoertijd_eenheid: null
};
}
%>
<html>
<head>
<% FCLTHeader.Generate();
%>
<script type="text/javascript" >
function mld_submit()
{
if (!validateForm("u2"))
return false;
// Is <20><>n van de parameters wel ingevuld.
if ($.trim($("#accepttijd").val()) == "" && $.trim($("#uitvoertijd").val()) == "")
{
alert(L("lcl_mld_no_overrule"));
return false;
}
var data = $("[name=submitform]").serialize();
<% protectRequest.dataToken("data"); %>
$.post($("form[name=submitform]")[0].action,
data,
FcltCallbackClose,
"json");
return true; // disable button
}
function mld_delete()
{
if (confirm("<%=safe.jsstring(L("lcl_R_U_sure"))%>"))
{
var data = {stdmsrtruimte_key: <%=stdmsrtruimte_key%>};
<% protectRequest.dataToken("data"); %>
$.post("mld_stdmsrtruimte_delete.asp",
data,
FcltCallbackClose,
"json");
}
}
function mld_cancel()
{
FcltMgr.closeDetail(window, { cancel: true });
}
function onChangeAccepttijd()
{
if (isNaN(parseFloat($("#accepttijd").val())))
$("#dayshourse").prop("disabled", true);
else
$("#dayshourse").prop("disabled", false);
}
function onChangeUitvoertijd()
{
if (isNaN(parseFloat($("#uitvoertijd").val())))
$("#dayshours").prop("disabled", true);
else
$("#dayshours").prop("disabled", false);
}
function onChangeVakgroep(vakgroep_key)
{
//sgStdm.setValue($("#stdm").val(), $("#stdm_show").val(), true, true, null, true);
// Regel hierboven werkt niet goed omdat CheckExist een get call veroorzaakt om te kijken of waarde bestaat.
// In de tussentijd verstoort CheckJustOne dit process met een $.getJSON()
// Dus gewoon Melding leegmaken
sgStdm.setValue(-1, "", true, false, null, true);
sgStdm.CheckJustOne();
}
function process_stdm_info(data, textStatus)
{ // Zet de discipline indien niet ingevuld
if ($("#disc_key").val() <= 0)
sgDisc.setValue(data.ins_discipline_key, (data.ins_srtdiscipline_prefix != null ? data.ins_srtdiscipline_prefix + "-" : "") + data.discipline_omschrijving, false /*doonChange*/, true /*checkExist*/);
}
function onChangeStdMelding(stdmelding_key)
{
if (stdmelding_key > 0)
{
$.getJSON("./get_mld_info_ajax.asp",
{ req_info: "mld_stdmelding",
mld_stdmelding_key: stdmelding_key,
caller_key: <%=user_key%> },
process_stdm_info);
}
}
</script>
</head>
<body class="modal" id="mod_mldstdmsrtruimte">
<%
var buttons = [];
buttons.push( {title: L("lcl_submit"), action:"mld_submit()", icon: "opslaan.png" } );
buttons.push( {title: L("lcl_cancel"), action:"mld_cancel()", icon: "undo.png" } );
IFRAMER_HEADER(L("lcl_mld_overrule_details"), buttons, {nocollaps: true});
%>
<div id="submitdiv">
<form id="submitform"
name="submitform"
action="mld_stdmsrtruimte_save.asp"
method="post">
<input type="hidden" id="stdmsrtruimte_key" name="stdmsrtruimte_key" value="<%=stdmsrtruimte_key%>">
<% if (stdmsrtruimte_key > 0 || ssr_info.srtruimte_key > 0)
{ %>
<input type="hidden" id="srtruimte_key" name="srtruimte_key" value="<%=ssr_info.srtruimte_key%>">
<% } %>
<%
BLOCK_START("mldMelding", safe.html(L("lcl_mld_overrule_properties")));
// Vakgroep (discipline)
FCLTdisciplineselector("disc_key",
"sgDisc",
{ label: L("lcl_mld_vakgroep"),
disc_key: ssr_info.disc_key,
module: "MLDA", // Module MLD en daarnaast ook de vakgroepen tonen zonder stdmeldingen zodat nieuwe stdmeldingen eraan toegevoegd kunnen worden (MLDA).
perslidKey: user_key,
autfunctionKey: -1, // alles is toegestaan! authparams.autfunctionkey,
onChange: "onChangeVakgroep",
required: true,
readonly: stdmsrtruimte_key > 0 || ssr_info.stdmelding_key > 0
});
// Melding
FCLTstdmeldingselector("stdmelding_key",
"sgStdm",
{ stdmelding_key: ssr_info.stdmelding_key,
label: L("lcl_complain"),
perslidKey: user_key,
autfunctionKey: -1, // alles is toegestaan! authparams.autfunctionkey,
urlAdd: [{urlParam: "disc_key", field: "disc_key"}],
onChange: "onChangeStdMelding",
required: true,
suppressEmpty: true,
readonly: stdmsrtruimte_key > 0 || ssr_info.stdmelding_key > 0
});
sql = "SELECT sr.alg_srtruimte_key"
+ " , " + lcl.xsqla("sr.alg_srtruimte_omschrijving", "sr.alg_srtruimte_key")
+ " FROM alg_srtruimte sr"
+ " WHERE sr.alg_srtruimte_verwijder IS NULL"
+ " ORDER BY sr.alg_srtruimte_omschrijving";
FCLTselector("srtruimte_key",
sql,
{ initKey: ssr_info.srtruimte_key,
label: L("lcl_estate_ruimte_man_sort"),
emptyOption: "",
readonly: stdmsrtruimte_key > 0 || ssr_info.srtruimte_key > 0,
required: true,
suppressEmpty: true
});
sql = "SELECT 'U', " + safe.quoted_sql(L("lcl_mld_hours")) + " FROM DUAL"
+ " UNION "
+ "SELECT 'D', " + safe.quoted_sql(L("lcl_mld_days")) + " FROM DUAL"
+ " ORDER BY 2";
var selectparams = { fieldName: "dayshourse",
sql: sql,
params: { id: "dayshourse",
initKey: ssr_info.acceptatietijd_eenheid,
readonly: false,
disable: !ssr_info.acceptatietijd_tijdsduur
}
}
RWFIELDTR("accepttijd", "fldmld_accpettijd", L("lcl_mld_timetoaccept"), ssr_info.acceptatietijd_tijdsduur? Math.round(ssr_info.acceptatietijd_tijdsduur * 100) / 100 : ""
, {maxlength: 4, datatype: "float", html: "onChange='onChangeAccepttijd();'", suppressEmpty: true, selector: selectparams});
var selectparams = { fieldName: "dayshours",
sql: sql,
params: { id: "dayshours",
initKey: ssr_info.uitvoertijd_eenheid,
readonly: false,
disable: !ssr_info.uitvoertijd_tijdsduur
}
}
RWFIELDTR("uitvoertijd", "fldmld_uitvtijd", L("lcl_mld_stduitvoertijd"), ssr_info.uitvoertijd_tijdsduur? Math.round(ssr_info.uitvoertijd_tijdsduur * 100) / 100 : ""
, {maxlength: 4, datatype: "float", html: "onChange='onChangeUitvoertijd();'", suppressEmpty: true, selector: selectparams});
RWFIELDTR("malusbasis", "fldshort", L("lcl_mld_malusbasis"), ssr_info.malusbasis, {maxlength: 9, datatype: "float", suppressEmpty: true});
RWFIELDTR("malus", "fldshort", L("lcl_mld_malus"), ssr_info.malus, {maxlength: 9, datatype: "float", suppressEmpty: true});
BLOCK_END();
IFACE.FORM_END();
%>
</form>
</div>
</body>
</html>