MNNL#44867 Afsluiten foutief aangemaakte of niet meer relevante workflw
svn path=/Website/trunk/; revision=36979
This commit is contained in:
@@ -2017,6 +2017,8 @@ mld = {setmeldingstatus:
|
||||
res_key: oRs("res_reservering_key").Value
|
||||
};
|
||||
|
||||
result.workflowRoot = (!result.noWorkflow && result.Startkey == mld_key);
|
||||
|
||||
if (result.locked_user_key)
|
||||
{
|
||||
var expire = new Date;
|
||||
|
||||
70
APPL/MLD/mld_cancelworkflow.asp
Normal file
70
APPL/MLD/mld_cancelworkflow.asp
Normal file
@@ -0,0 +1,70 @@
|
||||
<%@language = "javascript" %>
|
||||
<% /*
|
||||
$Revision$
|
||||
$Id$
|
||||
|
||||
Status: 100%
|
||||
*/
|
||||
%>
|
||||
<!-- #include file="../Shared/common.inc" -->
|
||||
<!-- #include file="../Shared/iface.inc" -->
|
||||
<!-- #include file="mld.inc" -->
|
||||
<%
|
||||
FCLTHeader.Requires({ plugins: ["suggest", "jQuery"] });
|
||||
var mld_key = getQParamInt("mld_key");
|
||||
var autfunction = "WEB_MLDMSU";
|
||||
|
||||
var this_mld = mld.func_enabled_melding(mld_key);
|
||||
var mld_info = mld.mld_melding_info(mld_key);
|
||||
|
||||
lcl.set_dialect(mld_info.srtdisc, "MLD_SRTDISCIPLINE_KEY");
|
||||
user.anything_todo_or_abort(mld_info.workflowRoot && user.has(autfunction));
|
||||
%>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<% FCLTHeader.Generate(); %>
|
||||
|
||||
<script type="text/javascript">
|
||||
function mld_cont()
|
||||
{
|
||||
document.activeElement.blur(); // trigger laatste onChanges
|
||||
|
||||
// Standaard checks op verplichte velden, datum formaat, numeriek en float formaat, currency formaat.
|
||||
if (!validateForm("cancelworkflowform"))
|
||||
return false;
|
||||
|
||||
$.post( $("form[name=cancelworkflowform]")[0].action
|
||||
, $("[name=cancelworkflowform]").serialize()
|
||||
, function(json) {
|
||||
if (json.success)
|
||||
FcltMgr.closeDetail(window, { cancel: true } );
|
||||
else
|
||||
iface.button.enable("btn_cont_submit");
|
||||
}
|
||||
, "json");
|
||||
return true; // disable button
|
||||
}
|
||||
|
||||
function mld_cancel()
|
||||
{
|
||||
FcltMgr.closeDetail(window, { cancel: true } );
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body class="modal" id="mod_mldcancelworkflow">
|
||||
<form id="cancelworkflowform" name="cancelworkflowform" action="mld_cancelworkflow_save.asp?mld_key=<%=mld_key%>" method="post">
|
||||
<%
|
||||
BLOCK_START("mldCancelworkflow");
|
||||
RWTEXTAREATR("descr", "fldremark required", L("lcl_mld_cancelworkflow_remark"), "", {html: "rows='8'"});
|
||||
BLOCK_END();
|
||||
|
||||
var buttons = [ {title: L("lcl_mld_cancel_workflow"), icon: "opslaan.png", action: "mld_cont()", singlepress: true, id: "btn_cont_submit" },
|
||||
{title: L("lcl_cancel"), icon: "undo.png", action: "mld_cancel()" } ];
|
||||
CreateButtons(buttons);
|
||||
IFACE.FORM_END();
|
||||
%>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
79
APPL/MLD/mld_cancelworkflow_save.asp
Normal file
79
APPL/MLD/mld_cancelworkflow_save.asp
Normal file
@@ -0,0 +1,79 @@
|
||||
<%@language = "javascript" %>
|
||||
<% /*
|
||||
$Revision$
|
||||
$Id$
|
||||
|
||||
File: mld_cancelworkflow_save.asp
|
||||
Description: Zet alle nog actieve meldingen in een workflow op afgewezen
|
||||
Parameters: mld_key key van de root melding
|
||||
mld_oms reden van afsluiten vervolgmeldingen
|
||||
|
||||
*/ %>
|
||||
<%
|
||||
var JSON_Result = true;
|
||||
%>
|
||||
<!-- #include file="../Shared/common.inc" -->
|
||||
<!-- #include file="../Shared/json2.js" -->
|
||||
<!-- #include file="mld.inc" -->
|
||||
<%
|
||||
function workflow_tree(mld_key)
|
||||
{
|
||||
var sql = "SELECT mld_melding_key"
|
||||
+ " , mld_melding_status"
|
||||
+ " FROM mld_melding"
|
||||
+ " WHERE mld_workflowstep_key IS NOT NULL"
|
||||
+ " AND mld_melding_start_key = " + mld_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
|
||||
while (!oRs.eof)
|
||||
{
|
||||
var next_mld_key = oRs("mld_melding_key").Value;
|
||||
var statusopdr = oRs("mld_melding_status").Value;
|
||||
if (inArray(statusopdr, [0,2,3,4,7]))
|
||||
{
|
||||
// Sluit deze actieve melding
|
||||
cancel_workflowstep(mld_key);
|
||||
}
|
||||
// Als niet zichzelf dan volgend niveau
|
||||
if (next_mld_key != mld_key)
|
||||
{
|
||||
workflow_tree(next_mld_key);
|
||||
}
|
||||
oRs.MoveNext();
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
function cancel_workflowstep(mld_key)
|
||||
{
|
||||
var sql_u = "UPDATE mld_melding"
|
||||
+ " SET mld_statusopdr_key = 1"
|
||||
+ " WHERE mld_melding_key = " + mld_key;
|
||||
Oracle.Execute(sql_u);
|
||||
var sql_i = "INSERT INTO mld_melding_note"
|
||||
+ "( mld_melding_key"
|
||||
+ ", prs_perslid_key"
|
||||
+ ", mld_melding_note_omschrijving"
|
||||
+ ") VALUES"
|
||||
+ "(" + mld_key
|
||||
+ "," + user_key
|
||||
+ "," + safe.quoted_sql(mld_opmerking)
|
||||
+ ")";
|
||||
Oracle.Execute(sql_i);
|
||||
}
|
||||
|
||||
protectRequest.validateToken();
|
||||
var mld_root_key = getQParamInt("mld_key");
|
||||
var mld_opmerking = getFParam("descr");
|
||||
var autfunction = "WEB_MLDMSU";
|
||||
var mld_info = mld.mld_melding_info(mld_root_key);
|
||||
|
||||
lcl.set_dialect(mld_info.srtdisc, "MLD_SRTDISCIPLINE_KEY");
|
||||
user.anything_todo_or_abort(mld_info.workflowRoot && user.has(autfunction));
|
||||
|
||||
workflow_tree(mld_root_key);
|
||||
|
||||
var result = { key: mld_root_key, success: true };
|
||||
Response.Write(JSON.stringify(result));
|
||||
Response.End;
|
||||
%>
|
||||
@@ -196,6 +196,9 @@ if (this_mld.canForward)
|
||||
if (this_mld.canContinue)
|
||||
buttons.push({title: L("lcl_mld_continuation"), icon: "plus.png", action:"mld_continue()", autoshow: false, tooltip: L("lcl_continue_hint") });
|
||||
|
||||
if (mld_melding.workflowRoot && user.has("WEB_MLDMSU"))
|
||||
buttons.push({ icon: "fa-stop-circle", title: L("lcl_mld_cancel_workflow"), action:"mld_cancelworkflow()" });
|
||||
|
||||
if (this_mld.canCopy)
|
||||
buttons.push({ title: L("lcl_mld_copy"), icon: "copy.png", action: "mld_copy()" });
|
||||
if (this_mld.canAfrond && !mld_melding.mld_afgerond)
|
||||
|
||||
@@ -373,4 +373,19 @@ function mld_show_kennisbank(data)
|
||||
$tbl.empty(); // Redundant ?
|
||||
$("#mldFaq").hide();
|
||||
}
|
||||
}
|
||||
|
||||
function mld_cancelworkflow()
|
||||
{
|
||||
var url = "../mld/mld_cancelworkflow.asp?mld_key="+ mld_key;
|
||||
FcltMgr.openModalDetail(url,
|
||||
L("lcl_mld_cancel_workflow"),
|
||||
{
|
||||
callback: function()
|
||||
{
|
||||
FcltMgr.closeDetail(window, {close: true});
|
||||
mld_melding_reload(mld_key);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
@@ -3201,6 +3201,7 @@ body.likemodal {
|
||||
#besrejectbody {min-width:500px;}
|
||||
#localebody {min-width:800px;}
|
||||
#mod_mldcontinue {min-width:600px;}
|
||||
#mod_mldcancelworkflow {min-width:600px;}
|
||||
#mod_mlddouble {min-width:800px;}
|
||||
#mod_mldclose {min-width:600px;}
|
||||
#mod_mldaccept {min-width:500px;}
|
||||
|
||||
Reference in New Issue
Block a user