AAIT#28130: Testresultaten Contractworkflow.

svn path=/Website/trunk/; revision=19950
This commit is contained in:
Maykel Geerdink
2013-11-26 13:28:56 +00:00
parent 448b5ee2e1
commit be24a88079
7 changed files with 42 additions and 24 deletions

View File

@@ -56,11 +56,11 @@ cnt = { setcontractstatus:
var functie_code;
if (kosten <= S("cnt_contract_limit1")) // Dit eerst testen i.v.m. Ter goedkeuring. Verder moet sowieso goedgekeurd worden.
return []; // Het bedrag is lager als de eerste limiet. Het contract hoeft niet goed gekeurd te worden, dus een lege fiatteurs array teruggeven.
else if (approved < S("cnt_contract_limit1"))
else if ((S("cnt_contract_all") == 0 && approved < S("cnt_contract_limit1")) || (S("cnt_contract_all") == 1 && kosten <= S("cnt_contract_limit2")))
functie_code = "WEB_CNTGO1";
else if (approved < S("cnt_contract_limit2"))
else if ((S("cnt_contract_all") == 0 && approved < S("cnt_contract_limit2")) || (S("cnt_contract_all") == 1 && kosten <= S("cnt_contract_limit3")))
functie_code = "WEB_CNTGO2";
else if (approved < S("cnt_contract_limit3"))
else if ((S("cnt_contract_all") == 0 && approved < S("cnt_contract_limit3")) || (S("cnt_contract_all") == 1 && kosten > S("cnt_contract_limit3")))
functie_code = "WEB_CNTGO3";
else return []; // Het goedgekeurde bedrag zit al boven de derde limiet. Geen approval meer nodig.
@@ -86,7 +86,7 @@ cnt = { setcontractstatus:
var statustekst = "??";
var s = parseInt(p, 10);
switch (s) {
case 0: { statustekst = L("lcl_cnt_active"); break; }
case 0: { statustekst = (S("cnt_contract_approval") == 1? L("lcl_cnt_active_approval") : L("lcl_cnt_active")); break; }
case 1: { statustekst = L("lcl_cnt_inactive"); break; }
case 2: { statustekst = L("lcl_cnt_new"); break; }
case 3: { statustekst = L("lcl_cnt_forapproval"); break; }
@@ -365,22 +365,25 @@ cnt = { setcontractstatus:
cresult.canReadAny = cresult.canUSEread || cresult.canMANread;
cresult.canGoedkeur1 = cresult.canUSEwrite &&
cresult.canWrite("WEB_CNTGO1") && // Heb ik de rechten om goed te keuren op dit niveau 1?
terGoedkeuring && // Moet het contract gekeurd worden (juiste status)
cnt_info.kosten >= S("cnt_contract_limit1") && // Zijn de kosten hoger als de limiet
cnt_info.approved <= S("cnt_contract_limit1"); // Welke goedkeur? 1, 2 of 3?
cresult.canWrite("WEB_CNTGO1") && // Heb ik de rechten om goed te keuren op dit niveau 1?
terGoedkeuring && // Moet het contract gekeurd worden (juiste status)
((S("cnt_contract_all") == 0 && cnt_info.kosten >= S("cnt_contract_limit1")) || // Zijn de kosten hoger als de limiet
(S("cnt_contract_all") == 1 && cnt_info.kosten <= S("cnt_contract_limit2"))) && // Zijn de kosten onder mijn limiet om volledig goed te keuren
cnt_info.approved <= S("cnt_contract_limit1"); // Welke goedkeur? 1, 2 of 3?
cresult.canGoedkeur2 = cresult.canUSEwrite &&
cresult.canWrite("WEB_CNTGO2") &&
terGoedkeuring &&
cnt_info.kosten >= S("cnt_contract_limit2") &&
((S("cnt_contract_all") == 0 && cnt_info.kosten >= S("cnt_contract_limit2")) ||
(S("cnt_contract_all") == 1 && cnt_info.kosten <= S("cnt_contract_limit3"))) &&
cnt_info.approved <= S("cnt_contract_limit2");
cresult.canGoedkeur3 = cresult.canUSEwrite &&
cresult.canWrite("WEB_CNTGO3") &&
terGoedkeuring &&
cnt_info.kosten >= S("cnt_contract_limit3") &&
((S("cnt_contract_all") == 0 && cnt_info.kosten >= S("cnt_contract_limit3")) ||
(S("cnt_contract_all") == 1 && cnt_info.kosten > S("cnt_contract_limit3"))) &&
cnt_info.approved <= S("cnt_contract_limit3") &&
cnt_info.kosten > cnt_info.approved;
cresult.forApproval = nieuw;
cresult.forApproval = nieuw && cresult.canUSEwrite;
cresult.canReject = cresult.canGoedkeur1 || cresult.canGoedkeur2 || cresult.canGoedkeur3;
// Ik mag in principe alleen de allernieuwste versie splitten of bewerken

View File

@@ -47,9 +47,9 @@ user.anything_todo_or_abort(tobeapproved > 0); // We klagen niet over enkele wel
for (var i = 0; i < ingesloten.length; i++)
{ // Blijkbaar mogen we Approve'n. Maar welke? 1, 2 of 3?
var cnt_key = ingesloten[i].cnt_key;
if (ingesloten[i].canGoedkeur1 && !ingesloten[i].canGoedkeur2) // Kan ik dit contract fiatteren tot de tweede limiet? Als ik ook al tot de derde limiet goed kan keuren dan direct maar tot de derde limiet (volgende if).
if (ingesloten[i].canGoedkeur1 && (S("cnt_contract_all") == 1 || !ingesloten[i].canGoedkeur2)) // Kan ik dit contract fiatteren tot de tweede limiet? Als ik ook al tot de derde limiet goed kan keuren dan direct maar tot de derde limiet (volgende if).
{
var finalapproval = (ingesloten[i].kosten <= S("cnt_contract_limit2") || ingesloten[i].approved > S("cnt_contract_limit2"));
var finalapproval = (S("cnt_contract_all") == 1 || ingesloten[i].kosten <= S("cnt_contract_limit2") || ingesloten[i].approved > S("cnt_contract_limit2"));
sql = "UPDATE cnt_contract"
+ " SET cnt_contract_approved = " + (ingesloten[i].kosten < S("cnt_contract_limit2")? ingesloten[i].kosten : S("cnt_contract_limit2")) // Gefiatteerd tot een bedrag van limiet2 (<=5000 Euro)
+ (finalapproval
@@ -73,9 +73,9 @@ for (var i = 0; i < ingesloten.length; i++)
result.success = true;
}
else if (ingesloten[i].canGoedkeur2 && !ingesloten[i].canGoedkeur3) // Kan ik dit contract fiatteren tot de derde limiet? Als ik ook boven de derde limiet goed kan keuren dan direct maar geheel goedkeuren (volgende if).
else if (ingesloten[i].canGoedkeur2 && (S("cnt_contract_all") == 1 || !ingesloten[i].canGoedkeur3)) // Kan ik dit contract fiatteren tot de derde limiet? Als ik ook boven de derde limiet goed kan keuren dan direct maar geheel goedkeuren (volgende if).
{
var finalapproval = (ingesloten[i].kosten <= S("cnt_contract_limit3") || ingesloten[i].approved > S("cnt_contract_limit3"));
var finalapproval = (S("cnt_contract_all") == 1 || ingesloten[i].kosten <= S("cnt_contract_limit3") || ingesloten[i].approved > S("cnt_contract_limit3"));
sql = "UPDATE cnt_contract"
+ " SET cnt_contract_approved = " + (ingesloten[i].kosten < S("cnt_contract_limit3")? ingesloten[i].kosten : S("cnt_contract_limit3")) // Gefiatteerd tot een bedrag van limiet2 (<=125000 Euro)
+ (finalapproval

View File

@@ -632,7 +632,7 @@ function cnt_list (pautfunction, params)
}
var buttons = [];
if ((authparamsCNTMAN && authparamsCNTMAN.ALGwritelevel < 9 && authparamsCNTMAN.PRSwritelevel < 9) ||
if ((S("cnt_contract_approval") == 0 && authparamsCNTMAN && authparamsCNTMAN.ALGwritelevel < 9 && authparamsCNTMAN.PRSwritelevel < 9) ||
(S("cnt_contract_approval") == 1 && authparamsCNTUSE && authparamsCNTUSE.ALGwritelevel < 9 && authparamsCNTUSE.PRSwritelevel < 9))
{
var addurl = "appl/cnt/cnt_contract.asp?urole=bo";

View File

@@ -13,7 +13,6 @@
FCLTHeader.Requires({ plugins: ["jQuery"] });
var cnt_key_arr = getQParamIntArray("cnt_key");
var submitting = getQParamInt("submit", 0) == 1;
var opmerk = getFParam("opmerk", "");
var result = {};
@@ -62,7 +61,8 @@ user.anything_todo_or_abort(toberejected > 0); // We klagen niet over enkele wel
<body class="modal" id="rejectbody">
<div id="reject">
<form id="rejectform" name="rejectform" action="cnt_reject_save.asp?cnt_key=<%=ingesloten.join(",")%>" method="post">
<form id="rejectform" name="rejectform" action="cnt_reject_save.asp" method="post">
<input type="hidden" name="cnt_key" value="<%=ingesloten.join(",")%>">
<%
BLOCK_START("cntReject", L("lcl_cnt_reject") + ingesloten.join(","));
RWTEXTAREATR("opmerk",

View File

@@ -16,8 +16,7 @@ var JSON_Result = true;
<%
protectRequest.validateToken();
var cnt_key_arr = getQParamIntArray("cnt_key");
var submitting = getQParamInt("submit", 0) == 1;
var cnt_key_arr = getFParamIntArray("cnt_key");
var opmerk = getFParam("opmerk", "");
var result = {};

View File

@@ -343,7 +343,7 @@ var authparams = user.checkAutorisation(autfunction);
<td class="label"><label><%=L("lcl_cnt_status")%>:</label></td>
<td>
<div class="statusboxes">
<input type="checkbox" class="fldcntact" name="cntAct" id="cntAct" value="1" <%=cntAct? "checked" : ""%>><label for="cntAct"><%=L("lcl_cnt_active")%></label>
<input type="checkbox" class="fldcntact" name="cntAct" id="cntAct" value="1" <%=cntAct? "checked" : ""%>><label for="cntAct"><%=(S("cnt_contract_approval") == 1? L("lcl_cnt_active_approval") : L("lcl_cnt_active"))%></label>
<% if (S("cnt_contract_approval") == 1) {%>
<input type="checkbox" class="fldcntnew" name="cntNew" id="cntNew" value="1" <%=cntNew? "checked" : ""%>><label for="cntNew"><%=L("lcl_cnt_new")%></label>
<input type="checkbox" class="fldcnttgoe" name="cntTgoe" id="cntTgoe" value="1" <%=cntTgoe? "checked" : ""%>><label for="cntTgoe"><%=L("lcl_cnt_forapproval")%></label>

View File

@@ -233,6 +233,7 @@ FCLTHeader.Requires({ plugins: ["jQuery"], js: ["jquery-ui.js"] });
var data = { opmerk: json.opmerk }; // Reden ook voor de rest gebruiken.
one_post("opdr_key", data, "../mld/opdr_reject_save.asp", "MLD");
one_post("opdr_key", data, "../mld/opdr_reject_save.asp", "GOED");
one_post("cnt_key", data, "../cnt/cnt_reject_save.asp", "CNT");
}}
);
@@ -241,11 +242,26 @@ FCLTHeader.Requires({ plugins: ["jQuery"], js: ["jquery-ui.js"] });
function opdr_reject(opdr_key_array, module)
{
url = url = "../mld/opdr_reject.asp?opdr_key=" + opdr_key_array.join(",");
FcltMgr.openModalDetail(url, L("lcl_mld_reject"),{ callback: function(json, textStatus)
FcltMgr.openModalDetail(url,
L("lcl_mld_reject"),
{ callback: function(json, textStatus)
{
one_done(module);
var data = { opmerk: json.opmerk }; // Reden ook voor de rest gebruiken.
one_post("opdr_key", data, "../mld/opdr_reject_save.asp", "GOED");
one_post("cnt_key", data, "../cnt/cnt_reject_save.asp", "CNT");
}}
);
}
function cnt_reject(cnt_key_array)
{
url = url = "../cnt/cnt_reject.asp?cnt_key=" + cnt_key_array.join(",");
FcltMgr.openModalDetail(url,
L("lcl_mld_reject"),
{ callback: function(json, textStatus)
{
one_done(module);
}}
);
}
@@ -265,8 +281,6 @@ FCLTHeader.Requires({ plugins: ["jQuery"], js: ["jquery-ui.js"] });
todo_list[module].push(item_key);
}
one_post("cnt_key", {}, "../cnt/cnt_reject_save.asp", "CNT"); // heeft geen dialoog
// De eerste zal een dialoog tonen met vraag om reden.
// De anderen krijgen allemaal dezelfde reden
if (todo_list["BES"].length > 0)
@@ -275,6 +289,8 @@ FCLTHeader.Requires({ plugins: ["jQuery"], js: ["jquery-ui.js"] });
opdr_reject(todo_list["MLD"], "MLD");
else if (todo_list["GOED"].length > 0)
opdr_reject(todo_list["GOED"], "GOED");
else if (todo_list["CNT"].length > 0)
cnt_reject(todo_list["CNT"]);
if (todo_list["OFFERTE"].length > 0)
off_reject(todo_list["OFFERTE"]);