NYBU#33454: Herziening facturatieproces FACILITOR - VERMAAT.
svn path=/Website/trunk/; revision=26367
This commit is contained in:
@@ -498,18 +498,19 @@ res = {
|
||||
{
|
||||
var params = params || {};
|
||||
// Wat informatie om rechten te kunnen bepalen
|
||||
var sql = "SELECT r.res_ruimte_opstel_key,"
|
||||
+ " r.alg_ruimte_key,"
|
||||
+ " r.res_rsv_ruimte_van,"
|
||||
+ " r.res_rsv_ruimte_tot,"
|
||||
+ " r.res_rsv_ruimte_contact_key,"
|
||||
+ " r.res_rsv_ruimte_host_key,"
|
||||
+ " r.res_status_fo_key,"
|
||||
+ " r.res_status_bo_key,"
|
||||
+ " r.res_reservering_key,"
|
||||
+ " r.res_rsv_ruimte_verwijder,"
|
||||
+ " r.res_activiteit_key"
|
||||
+ " FROM res_rsv_ruimte r "
|
||||
var sql = "SELECT r.res_ruimte_opstel_key"
|
||||
+ " , r.alg_ruimte_key"
|
||||
+ " , r.res_rsv_ruimte_van"
|
||||
+ " , r.res_rsv_ruimte_tot"
|
||||
+ " , r.res_rsv_ruimte_contact_key"
|
||||
+ " , r.res_rsv_ruimte_host_key"
|
||||
+ " , r.res_status_fo_key"
|
||||
+ " , r.res_status_bo_key"
|
||||
+ " , r.res_reservering_key"
|
||||
+ " , r.res_rsv_ruimte_verwijder"
|
||||
+ " , r.res_activiteit_key"
|
||||
+ " , r.res_rsv_ruimte_afgerond"
|
||||
+ " FROM res_rsv_ruimte r"
|
||||
+ " WHERE res_rsv_ruimte_key = " + rsv_ruimte_key;
|
||||
var roRs = Oracle.Execute(sql);
|
||||
|
||||
@@ -523,6 +524,7 @@ res = {
|
||||
var rsv_ruimte_contact_key = roRs("res_rsv_ruimte_contact_key").Value;
|
||||
var rsv_ruimte_host_key = roRs("res_rsv_ruimte_host_key").Value;
|
||||
var res_activiteit_key = roRs("res_activiteit_key").Value;
|
||||
var res_goedgekeurd = roRs("res_rsv_ruimte_afgerond").Value == 1;
|
||||
|
||||
// Bepaal discipline parkeerplaatsen voor reserveringen. Deze moet uitgesloten worden voor de autorisatie controle.
|
||||
// Als de reservering *voor* earliest_expire ligt gaan we moeilijk doen
|
||||
@@ -723,6 +725,9 @@ res = {
|
||||
rresult.canReadNoShow = rresult.canRead("WEB_RESNOS");
|
||||
rresult.canWriteNoShow = rresult.canWrite("WEB_RESNOS");
|
||||
|
||||
// PAS OP!!!: WEB_RESMSU is disciplineloos dus niet in cresult! Daardoor zijn cresult.canWrite("WEB_RESMSU") en cresult.canRead("WEB_RESMSU") altijd false.
|
||||
var haveRESMSUrights = user.checkAutorisation("WEB_RESMSU", true) != null; // Pas op: disciplineloos dus niet in cresult!
|
||||
|
||||
var vandaag = new Date();
|
||||
var flike_days = vandaag.getTime() - rsv_ruimte_tot.getTime();
|
||||
var flike_past = S("facilities_flike_past") * 1000 * 60 * 60 * 24;
|
||||
@@ -765,7 +770,8 @@ res = {
|
||||
(rresult.canWrite("WEB_RESFOF") ||
|
||||
rresult.canWrite("WEB_RESBOF") ||
|
||||
rresult.canWrite("WEB_RESUSE")) &&
|
||||
canWritePresentPrk;
|
||||
canWritePresentPrk &&
|
||||
(!res_goedgekeurd || (res_goedgekeurd && haveRESMSUrights));
|
||||
rresult.canChangeCV = rresult.canChange;
|
||||
|
||||
// als disc_key_arr leeg is hebben we nog 'niets' en zijn we heel soepel
|
||||
@@ -914,6 +920,11 @@ res = {
|
||||
|| (rresult.canWrite("WEB_RESBOF") && (S("res_roompricingtotaal") & 2))
|
||||
);
|
||||
|
||||
// Goedkeuren door aanmaker/besteller (of zijn/haar vervanger) nadat de reservering voorbij is (in het verleden ligt).
|
||||
rresult.canGoedkeur = S("res_approval") == 1 && !res_goedgekeurd &&
|
||||
rresult.canChange && user.isCollega(rsv_ruimte_contact_key) &&
|
||||
rsv_ruimte_tot < new Date();
|
||||
|
||||
if ((status_bo_key && status_bo_key < S("res_bo_status_key")) || // ruimte is af te melden
|
||||
(rresult.min_bo && rresult.min_bo < S("res_bo_status_key"))) // CV is af te melden
|
||||
{
|
||||
|
||||
55
APPL/RES/res_goedkeur.asp
Normal file
55
APPL/RES/res_goedkeur.asp
Normal file
@@ -0,0 +1,55 @@
|
||||
<%@ LANGUAGE = JavaScript %>
|
||||
<% /*
|
||||
$Revision$
|
||||
$Id$
|
||||
|
||||
File: res_goedkeur.asp
|
||||
Description: Keur specifieke deelreserveringen goed
|
||||
Parameters:
|
||||
opdr_key Array van deelreservering keys die moeten worden goedgekeurd
|
||||
Context:
|
||||
Note:
|
||||
|
||||
*/ %>
|
||||
|
||||
<%
|
||||
DOCTYPE_Disable = 1;
|
||||
%>
|
||||
|
||||
<!-- #include file="../Shared/common.inc" -->
|
||||
<!-- #include file="../Shared/json2.js" -->
|
||||
<!-- #include file="res.inc" -->
|
||||
|
||||
<%
|
||||
protectRequest.validateToken();
|
||||
var rsv_ruimte_key_arr = getFParamIntArray("rsv_ruimte_key");
|
||||
var multi = getFParamInt("multi", 0) == 1;
|
||||
|
||||
var tobegoedkeuren = 0;
|
||||
var ingesloten = [];
|
||||
// Bepaal de deelreserveringen in de selectie die ook echt goedgekeurd kunnen of mogen worden.
|
||||
for (var i = 0; i < rsv_ruimte_key_arr.length; i++)
|
||||
{
|
||||
var this_res = res.func_enabled(rsv_ruimte_key_arr[i]); // Wat heb ik zoal aan rechten op deze specifieke deelreservering
|
||||
var res_ruimte = res.res_ruimte_info(rsv_ruimte_key_arr[i]);
|
||||
|
||||
if (this_res.canGoedkeur)
|
||||
{
|
||||
ingesloten.push(rsv_ruimte_key_arr[i]);
|
||||
tobegoedkeuren++;
|
||||
}
|
||||
}
|
||||
user.anything_todo_or_abort(tobegoedkeuren > 0); // We klagen niet over enkele wel en enkele niet
|
||||
|
||||
for (var i = 0; i < ingesloten.length; i++)
|
||||
{ // Zetten van de status en afhandelen van de tracking van het afronden (finish).
|
||||
var sql = "UPDATE res_rsv_ruimte SET res_rsv_ruimte_afgerond = 1 WHERE res_rsv_ruimte_key = " + ingesloten[i];
|
||||
Oracle.Execute(sql);
|
||||
|
||||
// Tracking Reservering XXX is goedgekeurd.
|
||||
shared.trackaction("RESROK", ingesloten[i]);
|
||||
}
|
||||
|
||||
var result = { key: ingesloten.join(","), success: true, multi: multi };
|
||||
Response.Write(JSON.stringify(result));
|
||||
%>
|
||||
@@ -206,6 +206,21 @@ FCLTHeader.Requires({plugins: ["jQuery"]})
|
||||
window.location.href = "res_edit_rsv_ruimte.asp?urole=<%=this_res.canChangeUrole%>&rsv_ruimte_key=<%=rsv_ruimte_key%>"
|
||||
}
|
||||
|
||||
function res_goedkeur()
|
||||
{
|
||||
if (confirm(L("lcl_res_goedkeur").format("<%=safe.jsstring(rrr.resnrtxt)%>")))
|
||||
{ // Goedkeuren reservering
|
||||
var data = { rsv_ruimte_key: <%=rsv_ruimte_key%>
|
||||
};
|
||||
protectRequest.dataToken(data);
|
||||
$.post( "res_goedkeur.asp"
|
||||
, data
|
||||
, FcltCallbackRefresh
|
||||
, "json"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
function res_undelete()
|
||||
{
|
||||
if (FcltMgr.startEdit(window))
|
||||
@@ -323,6 +338,9 @@ FCLTHeader.Requires({plugins: ["jQuery"]})
|
||||
else if (this_res.canWriteNoShow)
|
||||
buttons.push({action: "resNoShow()", title: L("lcl_res_no_show"), icon: "noshow.png"});
|
||||
|
||||
if (this_res.canGoedkeur)
|
||||
buttons.push( {title: L("lcl_goedkeur"), icon: "accept.png", action: "res_goedkeur()"});
|
||||
|
||||
if (this_res.canDelete)
|
||||
buttons.push( {title: L("lcl_delete"), icon: "delete.png", action: "res_delete()"});
|
||||
|
||||
|
||||
@@ -143,6 +143,7 @@ var status = {
|
||||
case "RESNOS" : tekst = L("lcl_res_is_resnos") ; break;
|
||||
case "RESMLT" : tekst = L("lcl_res_is_resmlt") ; break;
|
||||
case "RESCPY" : tekst = L("lcl_res_is_rescpy") ; break;
|
||||
case "RESROK" : tekst = L("lcl_res_is_resrok") ; break;
|
||||
|
||||
case "ORDNEW" : tekst = L("lcl_ord_is_ordnew") ; break;
|
||||
case "ORDUPD" : tekst = L("lcl_ord_is_ordupd") ; break;
|
||||
|
||||
Reference in New Issue
Block a user