UWVA#37534 RES: Geen notificatie versturen bij de 'Reserveringstatus:" geblokkeerd

svn path=/Website/trunk/; revision=31950
This commit is contained in:
Erik Groener
2016-12-13 12:24:12 +00:00
parent bb67cd547e
commit b8498fc623
4 changed files with 139 additions and 87 deletions

View File

@@ -94,14 +94,14 @@ function model_res_ruimte()
"label": L("res_ruimte_begintijd"), "label": L("res_ruimte_begintijd"),
"typ": "float", "typ": "float",
"LOV": api2.getTimetable(), "LOV": api2.getTimetable(),
"emptyoption": "Standaard" "emptyoption": L("lcl_res_standaard").format(toTimeString(S("res_t1"),false))
}, },
"close": { "close": {
"dbs": "res_ruimte_eindtijd", "dbs": "res_ruimte_eindtijd",
"label": L("res_ruimte_eindtijd"), "label": L("res_ruimte_eindtijd"),
"typ": "float", "typ": "float",
"LOV": api2.getTimetable(), "LOV": api2.getTimetable(),
"emptyoption": "Standaard" "emptyoption": L("lcl_res_standaard").format(toTimeString(S("res_t2"),false))
}, },
"blockstart": { "blockstart": {
"dbs": "res_ruimte_begintijdblok", "dbs": "res_ruimte_begintijdblok",

View File

@@ -239,7 +239,9 @@ function forhours(fn)
+ " - GREATEST(COALESCE(rr1.res_ruimte_begintijd, " + S("res_t1") + ")" + " - GREATEST(COALESCE(rr1.res_ruimte_begintijd, " + S("res_t1") + ")"
+ " ," + (rap_t1_overruled? 0 : S("res_rap_t1")) // Als res_rap_t1 overruled is (geen waarde had) dan GREATEST automatisch 1-ste waarde te laten kiezen. + " ," + (rap_t1_overruled? 0 : S("res_rap_t1")) // Als res_rap_t1 overruled is (geen waarde had) dan GREATEST automatisch 1-ste waarde te laten kiezen.
+ " )" + " )"
+ " )") + " - (COALESCE( rr1.res_ruimte_eindtijdblok, 12) - COALESCE( rr1.res_ruimte_begintijdblok,12) )"
+ " )"
)
+ " ) beschikbaar" + " ) beschikbaar"
+ " FROM res_ruimte rr1" + " FROM res_ruimte rr1"
+ " , res_alg_ruimte ra" + " , res_alg_ruimte ra"

View File

@@ -33,7 +33,9 @@ sql = "SELECT rsv.res_rsv_ruimte_van,"
+ " rsv.res_rsv_ruimte_volgnr," + " rsv.res_rsv_ruimte_volgnr,"
+ " rsv.res_reservering_key," + " rsv.res_reservering_key,"
+ " rsv.res_activiteit_key," + " rsv.res_activiteit_key,"
+ " rr.res_discipline_key" + " rr.res_discipline_key,"
+ " rr.res_ruimte_begintijdblok,"
+ " rr.res_ruimte_eindtijdblok"
+ " FROM res_rsv_ruimte rsv" + " FROM res_rsv_ruimte rsv"
+ " , res_ruimte_opstelling rro" + " , res_ruimte_opstelling rro"
+ " , res_ruimte rr" + " , res_ruimte rr"
@@ -48,6 +50,8 @@ var new_tot = (new Date(old_tot)).setFloatHours(old_tot.getFloatHours() + dvan +
var restxt = oRs("res_reservering_key").Value + "/" + oRs("res_rsv_ruimte_volgnr").Value; var restxt = oRs("res_reservering_key").Value + "/" + oRs("res_rsv_ruimte_volgnr").Value;
var act_key = oRs("res_activiteit_key").Value; var act_key = oRs("res_activiteit_key").Value;
var disc_key = oRs("res_discipline_key").Value; var disc_key = oRs("res_discipline_key").Value;
var res_blok_van = oRs("res_ruimte_begintijdblok").Value;
var res_blok_tot = oRs("res_ruimte_eindtijdblok").Value;
oRs.Close(); oRs.Close();
var durationHours = (new_tot - new_van) / 1000/60/60; var durationHours = (new_tot - new_van) / 1000/60/60;
@@ -82,6 +86,25 @@ if (badmsg)
} }
else else
{ {
var blok_van = new Date();
var blok_tot = new Date();
var middag_blok = false;
if (res_blok_van && res_blok_tot) // middag blokkade aanwezig
{
blok_van.setTime(new_van.midnight().getTime()+ res_blok_van*3600*1000);
blok_tot.setTime(new_tot.midnight().getTime()+ res_blok_tot*3600*1000);
var middag_blok = !(new_tot < blok_van || new_van > blok_tot);
}
if (middag_blok)
{
result = {
success: false,
message: L("lcl_res_mid_block")
};
}
else
{
var fields = [ { dbs: "res_rsv_ruimte_van", typ: "time", val: new_van }, var fields = [ { dbs: "res_rsv_ruimte_van", typ: "time", val: new_van },
{ dbs: "res_rsv_ruimte_tot", typ: "time", val: new_tot } { dbs: "res_rsv_ruimte_tot", typ: "time", val: new_tot }
]; ];
@@ -152,7 +175,7 @@ else
addClass: addClass addClass: addClass
}; };
} }
}
} }
Response.Write(JSON.stringify(result)); Response.Write(JSON.stringify(result));
%> %>

View File

@@ -80,6 +80,8 @@ var new_tot = (old_tot).setFloatHours(parseFloat(hours_new_tot), S("res_h"));
sql = "SELECT " + lcl.xsqla('rr.res_ruimte_nr', 'rr.res_ruimte_key') sql = "SELECT " + lcl.xsqla('rr.res_ruimte_nr', 'rr.res_ruimte_key')
+ " , rdp.res_disc_params_maxduur" + " , rdp.res_disc_params_maxduur"
+ " , rr.res_ruimte_begintijdblok"
+ " , rr.res_ruimte_eindtijdblok"
+ " FROM res_ruimte rr" + " FROM res_ruimte rr"
+ " , res_disc_params rdp" + " , res_disc_params rdp"
+ " WHERE rr.res_discipline_key = rdp.res_ins_discipline_key" + " WHERE rr.res_discipline_key = rdp.res_ins_discipline_key"
@@ -87,6 +89,9 @@ sql = "SELECT " + lcl.xsqla('rr.res_ruimte_nr', 'rr.res_ruimte_key')
var oRs = Oracle.Execute(sql); var oRs = Oracle.Execute(sql);
var new_ruimte_oms = oRs("res_ruimte_nr").value; var new_ruimte_oms = oRs("res_ruimte_nr").value;
var max_hours = oRs("res_disc_params_maxduur").value; var max_hours = oRs("res_disc_params_maxduur").value;
var res_blok_van = oRs("res_ruimte_begintijdblok").Value;
var res_blok_tot = oRs("res_ruimte_eindtijdblok").Value;
oRs.Close();
sql = "SELECT f.fac_functie_key" sql = "SELECT f.fac_functie_key"
+ " FROM fac_functie f " + " FROM fac_functie f "
@@ -98,6 +103,7 @@ while (!oRs.eof)
fac_functie_key_arr.push(oRs("fac_functie_key").value); fac_functie_key_arr.push(oRs("fac_functie_key").value);
oRs.moveNext(); oRs.moveNext();
} }
oRs.Close();
// Ik kan deze nieuwe ruimte reserveren als aan de volgende voorwaarden zijn voldaan: // Ik kan deze nieuwe ruimte reserveren als aan de volgende voorwaarden zijn voldaan:
// 1) Ik heb enige schrijfrechten voor 'WEB_RESUSE', 'WEB_RESFOF', 'WEB_RESBOF' of 'WEB_RESBAC' // 1) Ik heb enige schrijfrechten voor 'WEB_RESUSE', 'WEB_RESFOF', 'WEB_RESBOF' of 'WEB_RESBAC'
@@ -165,6 +171,27 @@ if (!badmsg)
<html> <html>
<head> <head>
<% FCLTHeader.Generate() <% FCLTHeader.Generate()
var blok_van = new Date();
var blok_tot = new Date();
var middag_blok = false;
if (res_blok_van && res_blok_tot) // middag blokkade aanwezig
{
blok_van.setTime(new_van.midnight().getTime()+ res_blok_van*3600*1000);
blok_tot.setTime(new_tot.midnight().getTime()+ res_blok_tot*3600*1000);
var middag_blok = !(new_tot < blok_van || new_van > blok_tot);
}
if (middag_blok)
{
err = { friendlyMsg: L("lcl_res_mid_block") };
%> <script>
FcltMgr.alert("<%=safe.jsstring(err.friendlyMsg)%>");
FcltMgr.closeDetail(window, { refresh: true });
</script>
<% Response.End;
}
if (submitting) if (submitting)
{ {
var opstel = getFParamInt("opstel"); var opstel = getFParamInt("opstel");