PNBR#35811 tijd tot in een Reservering

svn path=/Website/trunk/; revision=30963
This commit is contained in:
Erik Groener
2016-10-04 12:05:17 +00:00
parent b8c6c7ed8e
commit ee42792d53
7 changed files with 59 additions and 30 deletions

View File

@@ -74,6 +74,12 @@ function model_res_activiteit()
"where": "res_srtactiviteit_verwijder IS NULL"
},
"filter": "exact"
},
"res_hasvisitors": {
"dbs": "res_activiteit_bezoeker",
"label": "heeft bezoekers",
"typ": "check0",
"defaultvalue": 1
}
};

View File

@@ -384,6 +384,7 @@ bez =
// Bij extern ingevoerde reserveringen mogen we de bezoekers iet veranderen.
if (rsv_ruimte_key > 0)
{
var res_ruimte_extern_id = null;
sql = "SELECT rr.res_ruimte_extern_id"
+ " FROM res_rsv_ruimte rrr"
+ " , res_ruimte_opstelling ro"
@@ -392,7 +393,8 @@ bez =
+ " AND ro.res_ruimte_key = rr.res_ruimte_key"
+ " AND rrr.res_rsv_ruimte_key = " + rsv_ruimte_key;
var oRs = Oracle.Execute(sql);
var res_ruimte_extern_id = oRs("res_ruimte_extern_id").Value;
if (!oRs.eof)
res_ruimte_extern_id = oRs("res_ruimte_extern_id").Value;
oRs.Close();
bresult.canChange = res_ruimte_extern_id == null; // Als extern dan niet te wijzigen.
}

View File

@@ -603,6 +603,7 @@ res = {
+ " , r.res_activiteit_key"
+ " , r.res_rsv_ruimte_afgerond"
+ " , ra.res_activiteit_notfrontend"
+ " , ra.res_activiteit_bezoeker"
+ " FROM res_rsv_ruimte r,"
+ " res_activiteit ra"
+ " WHERE res_rsv_ruimte_key = " + rsv_ruimte_key
@@ -622,6 +623,7 @@ res = {
var res_goedgekeurd = roRs("res_rsv_ruimte_afgerond").Value == 1;
var res_opstel_key = roRs("res_ruimte_opstel_key").Value;
var notfrontend = roRs("res_activiteit_notfrontend").Value;
var has_visitors = roRs("res_activiteit_bezoeker").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
@@ -832,6 +834,7 @@ res = {
rresult.max_dbkosten = max_dbkosten;
rresult.res_reservering_key = res_reservering_key;
rresult.rsv_ruimte_verwijder = rsv_ruimte_verwijder;
rresult.res_has_visitors = has_visitors;
rresult.canReadNoShow = rresult.canRead("WEB_RESNOS");
rresult.canWriteNoShow = rresult.canWrite("WEB_RESNOS");

View File

@@ -119,12 +119,14 @@ FCLTHeader.Requires({plugins: ["jQuery", "kenmerk"],
if (activiteit_key > 0)
{
sql = "SELECT ac.res_activiteit_aantalverplicht,"
+ " res_activiteit_omsverplicht"
+ " res_activiteit_omsverplicht,"
+ " res_activiteit_bezoeker"
+ " FROM res_activiteit ac"
+ " WHERE res_activiteit_key = " + activiteit_key;
oRs = Oracle.Execute(sql);
aantal_verplicht = oRs("res_activiteit_aantalverplicht").value == 1;
descript_required = oRs("res_activiteit_omsverplicht").value == 1;
has_visitors = oRs("res_activiteit_bezoeker").Value == 1;
}
var rrr = { rsv_ruimte_key : rsv_ruimte_key,
@@ -152,6 +154,7 @@ FCLTHeader.Requires({plugins: ["jQuery", "kenmerk"],
kostenplaats_module : user.afdeling().kpn_module() || "",
descript_required : descript_required,
aantal_verplicht : aantal_verplicht,
has_visitors : has_visitors,
kosten_klant : S("kosten_klant_default") == 1,
resnrtxt : L("lcl_new"),
srtactiviteit_kpnverplicht : srtdisc_kpnverplicht,
@@ -366,6 +369,7 @@ FCLTHeader.Requires({plugins: ["jQuery", "kenmerk"],
+ " rrr.res_activiteit_key, "
+ " ra.res_activiteit_omsverplicht, "
+ " ra.res_activiteit_aantalverplicht, "
+ " ra.res_activiteit_bezoeker, "
+ " sa.res_srtactiviteit_prefix, "
+ " res_rsv_ruimte_noshow, "
+ " res_rsv_ruimte_bezoekers, "
@@ -444,6 +448,7 @@ FCLTHeader.Requires({plugins: ["jQuery", "kenmerk"],
descript : oRs("res_rsv_ruimte_omschrijving").value,
descript_required : oRs("res_activiteit_omsverplicht").value==1,
aantal_verplicht : oRs("res_activiteit_aantalverplicht").value==1,
has_visitors : oRs("res_activiteit_bezoeker").value==1,
res_ordernr : oRs("res_rsv_ruimte_ordernr").value,
ruimte_korting : oRs("res_rsv_ruimte_korting").value,
ruimte_totaal : oRs("res_rsv_ruimte_totaal").value,
@@ -1095,23 +1100,25 @@ FCLTHeader.Requires({plugins: ["jQuery", "kenmerk"],
</script>
<% }
FCLTcalendar( "date_to",
{ label : restype == "CV"? L("lcl_res_endtime_CV") : L("lcl_time"),
datum : rrr.rsv_ruimte_tot,
minFuture: ((urole=="fe")?rrr.fe_expire_dagen:null),
maxFuture: ((urole=="fe"&&S("res_fe_reservering_limiet")>0)?S("res_fe_reservering_limiet"):S("res_reservering_limiet")),
timeField: true,
timeStep : S("res_h")*60,
startTime: S("res_t1"),
endTime : S("res_t2"),
volgnr : 2,
readonly : fe_lastminute || (rsv_copy_key > 0 && rrr.reservering_ispool) || rrr.res_ruimte_extern || readonlyFE,
saveValue: (rsv_copy_key>0 && rrr.reservering_ispool),
hidden : (restype == "R"), // Meerdaags ruimte ondersteunen we nog niet echt
required : true,
onChange : '$("#time_from_date_to").css("color", "auto")'
});
if (rrr.has_visitors)
{
FCLTcalendar( "date_to",
{ label : restype == "CV"? L("lcl_res_endtime_CV") : L("lcl_time"),
datum : rrr.rsv_ruimte_tot,
minFuture: ((urole=="fe")?rrr.fe_expire_dagen:null),
maxFuture: ((urole=="fe"&&S("res_fe_reservering_limiet")>0)?S("res_fe_reservering_limiet"):S("res_reservering_limiet")),
timeField: true,
timeStep : S("res_h")*60,
startTime: S("res_t1"),
endTime : S("res_t2"),
volgnr : 2,
readonly : fe_lastminute || (rsv_copy_key > 0 && rrr.reservering_ispool) || rrr.res_ruimte_extern || readonlyFE,
saveValue: (rsv_copy_key>0 && rrr.reservering_ispool),
hidden : (restype == "R"), // Meerdaags ruimte ondersteunen we nog niet echt
required : true,
onChange : '$("#time_from_date_to").css("color", "auto")'
});
}
//======= FIELD 'Aantal personen/nr visitors' =======
if (rrr.srtactiviteit_metaantal)
{

View File

@@ -120,14 +120,17 @@ if (rsv_ruimte_key == -1)
// Is er een activiteit meegegeven, dan kan de srtactiviteit hieruit gehaald worden.
var act_key = getQParamInt("activiteit_key", -1);
var bezoeker = true;
if (act_key > 0)
{
var sql_a = "SELECT res_srtactiviteit_key"
+ " , res_activiteit_bezoeker"
+ " FROM res_activiteit"
+ " WHERE res_activiteit_key = " + act_key;
var oRs_a = Oracle.Execute(sql_a);
if (!oRs_a.eof)
srtact = oRs_a("res_srtactiviteit_key").value;
bezoeker = oRs_a("res_activiteit_bezoeker").value == 1;
oRs_a.Close();
}
@@ -147,7 +150,8 @@ if (rsv_ruimte_key == -1)
var rrr = { rsv_ruimte_key : -1,
reservering_ispool : getQParamInt("pool",0)==1,
reservering_key : -1
reservering_key : -1,
has_visitors: bezoeker
}
//FCLTHeader.Title(restype=='R'?L("lcl_menu_rooms"):L("lcl_menu_res_fe_objects"));
}
@@ -171,12 +175,15 @@ else // Bestaande reservering
reservering_ispool : oRs("res_reservering_ispool").value == 1,
rsv_ruimte_volgnr : oRs("res_rsv_ruimte_volgnr").value,
rsv_ruimte_verwijder: oRs("res_rsv_ruimte_verwijder").value,
rsv_ruimte_dirtlevel: oRs("res_rsv_ruimte_dirtlevel").value
rsv_ruimte_dirtlevel: oRs("res_rsv_ruimte_dirtlevel").value,
has_visitors : true
};
restype = oRs("alg_ruimte_key").Value? "CV" : "R";
oRs.Close()
FCLTHeader.Title(L("lcl_reservation"));
var this_res = res.func_enabled(rsv_ruimte_key); // Wat heb ik zoal aan rechten op deze specifieke reservering
rrr.has_visitors = this_res.res_has_visitors;
var hasFOBOread = this_res.canReadFO || this_res.canReadBO;
user.auth_required_or_abort(this_res.canReadAny); // Meeste diepere schermen controleren ook zelf wel (UWVA#20446: bez nog niet).
@@ -670,7 +677,7 @@ if (options.length > 1) {
//======================================
if (rrr.rsv_ruimte_verwijder == null && bezauthparams) //TODO Ook nog check op IsBldVisitable();
if (rrr.rsv_ruimte_verwijder == null && bezauthparams && rrr.has_visitors) //TODO Ook nog check op IsBldVisitable();
{
if (rsv_ruimte_key < 0)
var page = "res_save_first.asp?module=BEZ";

View File

@@ -175,11 +175,11 @@ var resdeleted = this_res.rsv_ruimte_verwijder != null;
{
data.eLendOut = oRs("ins_alg_ruimte_key_org").value == null;
data.eReceive = !data.eLendOut;
if (oRs("bewerkbaar").Value == 1)
{
data.eAdapt = data.eReceive;
}
}
}
}
@@ -368,7 +368,8 @@ var resdeleted = this_res.rsv_ruimte_verwijder != null;
rst2.addColumn(new Column({caption: L("lcl_consumable_objects"), content: fnArtikeltekst }));
rst2.addColumn(new Column({caption: L("lcl_count"), content: "res_rsv_artikel_aantal"}));
rst2.addColumn(new Column({caption: L("lcl_time"), content: fnTijd}));
rst2.addColumn(new Column({caption: L("lcl_to"), content: "res_rsv_ruimte_tot", datatype: "time"}));
if (this_res.res_has_visitors)
rst2.addColumn(new Column({caption: L("lcl_to"), content: "res_rsv_ruimte_tot", datatype: "time"}));
rst2.addColumn(new Column({caption: L("lcl_r_price7"), content: "res_rsv_artikel_prijs", datatype: "currency"}));
if (resdeleted)
rst2.addColumn(new Column({caption: L("lcl_deleted"), content: "ddVerwijder", datatype: "datetime"}));

View File

@@ -88,7 +88,8 @@ FCLTHeader.Requires({plugins: ["jQuery"]})
+ " sa.res_srtactiviteit_metopmerk,"
+ " rrr.res_rsv_ruimte_satisfaction,"
+ " rrr.res_rsv_ruimte_satisfaction_op,"
+ " res_rsv_ruimte_afgerond"
+ " res_rsv_ruimte_afgerond,"
+ " ra.res_activiteit_bezoeker"
+ " FROM res_rsv_ruimte rrr, "
+ " res_activiteit ra, "
+ " res_srtactiviteit sa, "
@@ -139,7 +140,8 @@ FCLTHeader.Requires({plugins: ["jQuery"]})
ab_mode : oRs("res_rsv_ruimte_cvab_mode").value,
satisfaction : oRs("res_rsv_ruimte_satisfaction").value,
satisfaction_op : oRs("res_rsv_ruimte_satisfaction_op").value,
afgerond : oRs("res_rsv_ruimte_afgerond").Value == 1
afgerond : oRs("res_rsv_ruimte_afgerond").Value == 1,
has_visitors : oRs("res_activiteit_bezoeker").Value == 1
};
lcl.set_dialect(oRs("res_srtactiviteit_key").Value, "RES_SRTACTIVITEIT_KEY");
@@ -355,9 +357,9 @@ FCLTHeader.Requires({plugins: ["jQuery"]})
buttons.push( {title: L("lcl_change"), icon: "wijzigen.png", action: "res_change()"});
else if (this_res.canWriteNoShow)
buttons.push({action: "resNoShow()", title: L("lcl_res_no_show"), icon: "noshow.png"});
if (this_res.canDelete)
buttons.push( {title: L("lcl_delete"), icon: "delete.png", action: "res_delete()"});
buttons.push( {title: L("lcl_delete"), icon: "delete.png", action: "res_delete()"});
if (this_res.canGoedkeur)
{
@@ -414,7 +416,8 @@ FCLTHeader.Requires({plugins: ["jQuery"]})
if (rrr.rsv_ruimte_tot.midnight().getTime() == rrr.rsv_ruimte_van.midnight().getTime())
{
ROFIELDTR("fldDateTime", L("lcl_date"), toDateString(rrr.rsv_ruimte_van));
ROFIELDTR("fldDateTime", L("lcl_time"), toTimeString(rrr.rsv_ruimte_van)+ " "+ L("lcl_tot") + " " + toTimeString(rrr.rsv_ruimte_tot));
var v_tot = (rrr.has_visitors ? " "+ L("lcl_tot") + " " + toTimeString(rrr.rsv_ruimte_tot) : "");
ROFIELDTR("fldDateTime", L("lcl_time"), toTimeString(rrr.rsv_ruimte_van) + v_tot);
}
else // meerdaags
{