NYBU#33748 meldingen bij reservering
svn path=/Website/trunk/; revision=28642
This commit is contained in:
@@ -26,6 +26,7 @@ perform=false; // ???? JGL: MLD.INC gebruikt deze illegaal globaal TODO!
|
||||
frontend=false;
|
||||
|
||||
var ruimte_key = getQParamInt("ruimte_key", -1);
|
||||
var res_ruimte_key = getQParamInt("res_ruimte_key", -1);
|
||||
var ins_key = getQParamInt("ins_key", -1);
|
||||
var self = getQParamInt("self", -1);
|
||||
var status = getQParamIntArray("status", []);
|
||||
@@ -38,8 +39,30 @@ var qrc = getQParamInt("qrc", 0) != 0;
|
||||
var grp_sel = getQParam("grp", "");
|
||||
|
||||
var subject = L("lcl_mobile_meldingen");
|
||||
var ruimteKeyArr = [];
|
||||
|
||||
if (ruimte_key > -1)
|
||||
// Reserveerbare ruimte: bepaal de alg_ruimte(s) en omschrijving
|
||||
if (res_ruimte_key > -1 && ruimte_key == -1)
|
||||
{
|
||||
var sql = "SELECT res_ruimte_nr plaats "
|
||||
+ " FROM res_ruimte"
|
||||
+ " WHERE res_ruimte_key = " + res_ruimte_key
|
||||
var oRs = Oracle.Execute(sql);
|
||||
subject += " " + oRs("plaats").Value;
|
||||
|
||||
var sql = "SELECT alg_ruimte_key "
|
||||
+ " FROM res_alg_ruimte rag"
|
||||
+ " WHERE rag.res_ruimte_key = " + res_ruimte_key
|
||||
+ " AND rag.res_alg_ruimte_verwijder IS NULL";
|
||||
var oRs = Oracle.Execute(sql);
|
||||
while (!oRs.eof) {
|
||||
ruimte_key = oRs("alg_ruimte_key").value; // pak er maar eentje, meestal is het er maar een
|
||||
ruimteKeyArr.push(oRs("alg_ruimte_key").value);
|
||||
oRs.MoveNext();
|
||||
}
|
||||
}
|
||||
// Gewone ruimte: bepaal de omschrijving
|
||||
if (ruimte_key > -1 && res_ruimte_key == -1)
|
||||
{
|
||||
var sql = "SELECT aog.alg_gebouw_code || '-' || aog.alg_verdieping_code || '-' || aog.alg_ruimte_nr plaats "
|
||||
+ " FROM alg_v_onroerendgoed_gegevens aog"
|
||||
@@ -48,6 +71,7 @@ if (ruimte_key > -1)
|
||||
|
||||
subject += " " + oRs("plaats").Value;
|
||||
}
|
||||
// Object: bepaal de omschrijving
|
||||
if (ins_key > -1)
|
||||
{
|
||||
var sql = " SELECT ins_deel_omschrijving"
|
||||
@@ -138,9 +162,13 @@ var authparams = user.checkAutorisation(autfunction);
|
||||
|
||||
sqln += " AND mld_melding_parentkey IS NULL"; // child-meldingen hoef ik mobiel niet te zien.
|
||||
|
||||
if (ruimte_key > -1)
|
||||
if (ruimte_key > -1 && ruimteKeyArr.length <= 1)
|
||||
{
|
||||
sqln += " AND (l.alg_locatie_key IS NULL OR v.alg_ruimte_key = " + ruimte_key + ")";
|
||||
sqln += " AND (l.alg_locatie_key IS NULL OR v.alg_ruimte_key = " + ruimte_key + ")"; // PF: ik denk dat plaatsloze meldingen niet getoond hoeven worden als ruimtekey is gegeven, maar het staat er vast niet voor niks
|
||||
}
|
||||
if (ruimteKeyArr.length > 1)
|
||||
{
|
||||
sqln += " AND v.alg_ruimte_key IN (" + ruimteKeyArr.join(',') + ")";
|
||||
}
|
||||
if (ins_key > -1)
|
||||
{
|
||||
@@ -194,24 +222,28 @@ var authparams = user.checkAutorisation(autfunction);
|
||||
|
||||
// Alleen groepering toepassen indien er 3 of meer vakgroepen zijn en meer dan 10 meldingen.
|
||||
// Bepaal aantal vakgroepen en aantal meldingen.
|
||||
var cnt_vakgr = 0; // Aantal vakgroepen.
|
||||
var cnt_mld = 0; // Aantal meldingen.
|
||||
var show_vakgroepen = false;
|
||||
// PF: Dit is wel een hele dure query (net zo als de echte) die je wilt voorkomen wanneer het kan zeg!
|
||||
// Bijvoorbeeld niet als ik specifieke parameters gebruik, maar liever nog minder vaak
|
||||
if (ruimte_key == -1 && ins_key == 1) {
|
||||
var sqln_count = "SELECT COUNT(ins_discipline_omschrijving) nr_vakgr"
|
||||
+ " , ins_discipline_omschrijving vakgroep"
|
||||
+ " FROM (" + sqln + ") rec2"
|
||||
+ " GROUP BY ins_discipline_omschrijving";
|
||||
var oRs = Oracle.Execute(sqln_count);
|
||||
var cnt_vakgr = 0; // Aantal vakgroepen.
|
||||
var cnt_mld = 0; // Aantal meldingen.
|
||||
while (!oRs.eof)
|
||||
{
|
||||
cnt_vakgr++;
|
||||
cnt_mld += oRs("nr_vakgr").Value;
|
||||
oRs.MoveNext();
|
||||
}
|
||||
var show_vakgroepen = false;
|
||||
if (cnt_vakgr > 2 && cnt_mld > 10)
|
||||
show_vakgroepen = true;
|
||||
}
|
||||
|
||||
// @@ PF lijkt me ook niet altijd goed: wat is nou mogelijk zinvol?
|
||||
// PF: lijkt me ook niet altijd goed: wat is nou mogelijk zinvol?
|
||||
sqln = "SELECT * FROM (" + sqln + ") rec2"
|
||||
+ (grp_sel == ""
|
||||
? ""
|
||||
@@ -283,7 +315,6 @@ var authparams = user.checkAutorisation(autfunction);
|
||||
}
|
||||
|
||||
PAGE_START();
|
||||
// TODO Alleen als ik schrijfrechten heb
|
||||
HEADER({title: subject,
|
||||
back: !qrc,
|
||||
addaction: "../pda/melding.asp?mld_key=-1" + (ins_key > -1? "&ins_key=" + ins_key : "") + (ruimte_key > -1? "&ruimte_key=" + ruimte_key : "")});
|
||||
|
||||
@@ -568,7 +568,7 @@ else
|
||||
if (toRs(0).value == 1) { // eentje slechts, dan naar de details; max is vanzelfsprekend die ene
|
||||
BUTTON(L("lcl_mobile_meldingen")+ " (1)", {linkid: "./melding.asp?mld_key="+toRs(1).value , dataicon: "alert", dataajax: 'false'});
|
||||
} else if (toRs(0).value > 0) { // meerdere, dan naar lijst
|
||||
BUTTON(L("lcl_mobile_meldingen")+" ("+toRs(0).value+")", {linkid: "./mld_list.asp?res_rsv_ruimte_key="+rsv_ruimte_key , dataicon: "alert", dataajax: 'false'});
|
||||
BUTTON(L("lcl_mobile_meldingen")+" ("+toRs(0).value+")", {linkid: "./mld_list.asp?res_ruimte_key="+rsv.ruimtekey , dataicon: "alert", dataajax: 'false'});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user