SROZ#77241 RES filter op afgemeld

svn path=/Website/trunk/; revision=61980
This commit is contained in:
Peter Feij
2023-09-29 14:04:25 +00:00
parent cfc15ad148
commit ecd782e770
6 changed files with 36 additions and 22 deletions

View File

@@ -1439,8 +1439,8 @@ res = {
rresult.canReadAny &&
(user.isCollega(rsv_ruimte_contact_key) || user.isCollega(rsv_ruimte_host_key));
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
if ((status_bo_key && status_bo_key < 5) || // ruimte is af te melden
(rresult.min_bo && rresult.min_bo < 5)) // CV is af te melden
{
rresult.canClose = rresult.canWrite("WEB_RESBOF"); // je moet wel rechten ervoor hebben
}

View File

@@ -138,7 +138,7 @@ for (var i = 0; i < partres_key_arr.length; i++)
+ " WHERE rrr.res_ruimte_opstel_key = rro.res_ruimte_opstel_key "
+ " AND rro.res_ruimte_key = rr.res_ruimte_key "
+ " AND rrr.res_rsv_ruimte_key = " + partreskey
+ " AND rrr.res_status_bo_key < " + S("res_bo_status_key")
+ " AND rrr.res_status_bo_key < 5"
+ " GROUP BY rrr.res_rsv_ruimte_key"
+ " , rrr.res_status_bo_key"
+ " , res_discipline_key";
@@ -153,7 +153,7 @@ for (var i = 0; i < partres_key_arr.length; i++)
+ " , res_deel d"
+ " WHERE rr.res_rsv_ruimte_key = rd.res_rsv_ruimte_key"
+ " AND rd.res_deel_key = d.res_deel_key"
+ " AND rd.res_status_bo_key < " + S("res_bo_status_key")
+ " AND rd.res_status_bo_key < 5"
+ " AND rd.res_rsv_deel_key = " + partreskey;
}
if (parttype == "C")
@@ -166,7 +166,7 @@ for (var i = 0; i < partres_key_arr.length; i++)
+ " , res_artikel a"
+ " WHERE rr.res_rsv_ruimte_key = ra.res_rsv_ruimte_key"
+ " AND ra.res_artikel_key = a.res_artikel_key"
+ " AND ra.res_status_bo_key < " + S("res_bo_status_key")
+ " AND ra.res_status_bo_key < 5"
+ " AND ra.res_rsv_artikel_key = " + partreskey;
}
//

View File

@@ -37,8 +37,9 @@
artcat search for article reservations
res_actual search for actual reservations
res_deleted search for res_deleted reservations
res_open search for reservations which are open
res_closed search for reservations which are closed
res_open search for reservations which are open (2)
res_finished search for reservations which are finished (5)
res_closed search for reservations which are closed (6)
res_approved search for reservations which are approved
res_notapproved search for reservations which are not approved
res_tobeapproved search for reservations which heave to be approved
@@ -105,7 +106,7 @@ function res_list (pautfunction, params)
// params.res_actual : boolean (true | false)
// params.res_deleted : boolean (true | false)
// params.res_open : boolean (true | false)
// params.res_closed : boolean (true | false)
// params.res_finished : boolean (true | false)
// params.res_closed : boolean (true | false)
// params.res_approved : boolean (true | false)
// params.res_notapproved : boolean (true | false)
@@ -160,6 +161,7 @@ function res_list (pautfunction, params)
var res_actual = "res_actual" in params ? params.res_actual : true;
var res_deleted = "res_deleted" in params ? params.res_deleted : false;
var res_open = params.res_open;
var res_finished = params.res_finished;
var res_closed = params.res_closed;
var res_approved = params.res_approved;
var res_notapproved = params.res_notapproved;
@@ -583,15 +585,20 @@ function res_list (pautfunction, params)
if (article_arr.length)
sql_article = " AND rra.res_artikel_key IN (" + article_arr.join(",") + ")";
if (!(frontend || fronto))
// deze controle hoeft echt niet, als de parameter er is moet je die gebruiken. if (!(frontend || fronto))
if (!(res_open && res_finished && res_closed))
{
// als alles aangevinkt is, hoef je er niet op te filteren
var bostatussen = [];
if (res_open)
{
if (!res_closed)
status_sql += " AND res_geg.res_status_bo_key < " + S("res_bo_status_key");
}
else
status_sql += " AND res_geg.res_status_bo_key >= " + S("res_bo_status_key");
bostatussen.push(2);
if (res_finished)
bostatussen.push(5);
if (res_closed)
bostatussen.push(6);
if (bostatussen.length > 0)
status_sql += " AND res_geg.res_status_bo_key IN (" + bostatussen.join(",")+ ")";
}
var approve_sql = [];
@@ -2353,7 +2360,7 @@ function res_list (pautfunction, params)
}
var besStatusBO = oRs("res_status_bo_key").value;
if (oRs("res_status_bo_key").value < S("res_bo_status_key"))
if (oRs("res_status_bo_key").value < 5)
{ // Als de catering nog niet is goedgekeurd of afgewezen kan de reservering nog niet worden afgemeld.
var res_type = oRs("categorie").Value;
var res_rsv_ruimte_cat_appr = oRs("res_rsv_ruimte_cat_appr").Value;

View File

@@ -131,10 +131,11 @@ var res_deleted = getQParamInt("res_deleted", 0) == 1; // Standaard niet aangevi
if (!res_actual && !res_deleted)
res_actual = true;
var res_open = (getQParamInt("res_open", 1) == 1); // Standaard aangevinkt indien niet meegegeven
var res_closed = (getQParamInt("res_closed", (minfo? 1 : 0)) == 1); // Standaard niet aangevinkt indien niet meegegeven, behalve voor minfo
// minimaal <20><>n van beiden moet aangekruist zijn
if (!res_open && !res_closed)
var res_open = (getQParamInt("res_open", 1) == 1); // Standaard aangevinkt indien niet meegegeven
var res_finished = (getQParamInt("res_finished", (minfo? 1 : 0)) == 1); // Standaard niet aangevinkt indien niet meegegeven, behalve voor minfo
var res_closed = (getQParamInt("res_closed", (minfo? 1 : 0)) == 1); // Standaard niet aangevinkt indien niet meegegeven, behalve voor minfo
// minimaal <20><>n van beiden moet aangekruist zijn (dit wordt op veel te veel plekken gecheckt)
if (!res_open && !res_finished && !res_closed)
res_open = true;
var res_approved = (getQParamInt("res_approved", (frontend?0:1)) == 1); // Standaard aangevinkt (frontend uit).
@@ -697,6 +698,8 @@ oRs.Close();
<td align="left">
<input type="checkbox" class="fldresopen" name="res_open" id="res_open" onClick="checkCheckboxes();" value="1" <%=res_open? "checked" : ""%>>
<label for="res_open"><%=L("lcl_open_reservations")%></label>
<input type="checkbox" class="fldresfinished" name="res_finished" id="res_finished" onClick="checkCheckboxes();" value="1" <%=res_finished? "checked" : ""%>>
<label for="res_finished"><%=L("lcl_finished_reservations")%></label>
<input type="checkbox" class="fldresclosed" name="res_closed" id="res_closed" onClick="checkCheckboxes();" value="1" <%=res_closed? "checked" : ""%>>
<label for="res_closed"><%=L("lcl_closed_reservations")%></label>
</td>

View File

@@ -7,7 +7,7 @@
function checkCheckboxes()
{
if (!document.getElementById("res_open").checked && !document.getElementById("res_closed").checked )
if (!document.getElementById("res_open").checked && !document.getElementById("res_finished").checked && !document.getElementById("res_closed").checked )
{
document.getElementById("res_open").checked = true;
}

View File

@@ -101,9 +101,10 @@ else
// Parameters res_open en res_closed worden alleen doorgegeven indien backo of minfo
var res_open = (getFParamInt("res_open", 0) == 1);
var res_finished = (getFParamInt("res_finished", 0) == 1);
var res_closed = (getFParamInt("res_closed", 0) == 1);
// minimaal <20><>n van beiden moet aangekruist zijn
if (!res_open && !res_closed)
if (!res_open && !res_finished && !res_closed)
res_open = true;
// Parameters res_approved en res_notapproved worden doorgegeven indien backo of minfo
@@ -145,12 +146,15 @@ else
params.article_arr = article_arr;
params.artgroup = (artgroup != "-1"? artgroup : null);
params.resstatus = (resstatus != -1? resstatus : null);
// die condities hieronder moeten eens opgeruimd worden,
// als je een parameter krijgt moet je die gebruiken en anders een defaultgedrag.
params.roomcat = (backo || minfo? roomcat : null); // Wordt alleen gebruikt bij bo en mi
params.objcat = (backo || minfo? objcat : null); // Wordt alleen gebruikt bij bo en mi
params.artcat = (backo || minfo? artcat : null); // Wordt alleen gebruikt bij bo en mi
params.res_actual = (fronto? res_actual : true); // Wordt alleen gebruikt bij fo
params.res_deleted = (fronto? res_deleted : false); // Wordt alleen gebruikt bij fo
params.res_open = (backo || minfo? res_open : null); // Wordt alleen gebruikt bij bo en mi
params.res_finished = (backo || minfo? res_finished : null); // Wordt alleen gebruikt bij bo en mi
params.res_closed = (backo || minfo? res_closed : null); // Wordt alleen gebruikt bij bo en mi
params.res_approved = (backo || minfo || frontend? res_approved : null); // Wordt alleen gebruikt bij bo en mi
params.res_notapproved = (backo || minfo || frontend? res_notapproved : null); // Wordt alleen gebruikt bij bo en mi