Files
Facilitor/APPL/CAD/get_wp_info_ajax.asp
Peter Feij 7ffa83b54c FSN#26947 perslidwerkplek_verwijder en werkplek_verwijder vervallen
svn path=/Website/trunk/; revision=19017
2013-09-06 16:06:54 +00:00

127 lines
4.2 KiB
Plaintext

<%@ language = "JavaScript" %>
<%
/*
$Revision$
$Id$
File: get_wp_info_ajax.asp
Description: Ophalen van werkplek info voor 3D inkleuring
Ook: ophalen van alle ruimtekeys die een muur moeten krijgen
Parameters: vKey
Context:
Note: TODO: thema kan ook een werkplekthema (zelfs objectthema?) zijn, geeft nu error
*/ %>
<%
JSON_Result = true;
%>
<!-- #include file="../Shared/common.inc"-->
<!-- #include file="../Shared/json2.js" -->
<%
var vKey = getQParamInt("vKey");
var thema_key = getQParamInt("thema"); // deze bepaalt welke ruimtes we gaan highlight
var label_key = getQParamInt("bordlabel",-1); // deze bepaalt welke infoborden we gaan plaatsen
result = { muren: [],
borden: [],
werkplekken: []
}
// Thema info
if (thema_key > 0) // Alle(en) ruimtes in het thema gaan we highlighten
{
// Haal de schema definitie op
sql = "SELECT cad_thema_view, l.cad_legenda_key, l.cad_legenda_discreet "
+ " FROM cad_thema t, cad_legenda l "
+ " WHERE t.cad_thema_key=" + thema_key
+ " AND t.cad_legenda_key = l.cad_legenda_key";
oRs = Oracle.Execute(sql)
viewName = oRs("cad_thema_view").value;
schKey = oRs("cad_legenda_key").value;
discreet=oRs("cad_legenda_discreet").value;
oRs.Close();
// Doorloop alle ruimtes van onze verdieping en zoek de schema-kleur er bij
var sql = "SELECT r.alg_ruimte_key, alg_ruimte_nr, waarde"
+ " FROM alg_ruimte r," + viewName + " thema"
+ " WHERE thema.alg_ruimte_key = r.alg_ruimte_key"
+ " AND r.alg_verdieping_key = " + vKey;
var oRs = Oracle.Execute(sql);
while (!oRs.Eof)
{
var waarde = String(oRs("waarde").Value);
if (waarde.length && waarde.substr(0,1) != '*')
{
var muur = { key: oRs("alg_ruimte_key").Value,
rnr: oRs("alg_ruimte_nr").Value,
waarde: "X" + waarde };
result.muren.push(muur);
}
oRs.MoveNext();
}
}
// Label info
if (label_key > 0) // Voor plaatsing infoborden
{
// Haal de schema definitie op
sql = "SELECT cad_label_view, cad_label_size "
+ " FROM cad_label "
+ " WHERE cad_label_key =" + label_key;
oRs = Oracle.Execute(sql)
viewName = oRs("cad_label_view").value;
viewSize = oRs("cad_label_size").value;
oRs.Close();
// Doorloop alle ruimtes van onze verdieping en zoek de schema-kleur er bij
var sql = "SELECT r.alg_ruimte_key, alg_ruimte_nr, waarde"
+ " FROM alg_ruimte r," + viewName + " lbl"
+ " WHERE lbl.alg_ruimte_key = r.alg_ruimte_key"
+ " AND r.alg_verdieping_key = " + vKey;
var oRs = Oracle.Execute(sql);
while (!oRs.Eof)
{
var bord = { key: oRs("alg_ruimte_key").Value,
tekst: oRs("waarde").Value,
rnr: oRs("alg_ruimte_nr").value,
waarde: waarde };
result.borden.push(bord);
oRs.MoveNext();
}
}
// Werkplek info
// Alleen werkplekken met X en Y
var sql = "SELECT 'W:'||prs_werkplek_key key, prs_werkplek_omschrijving oms,"
+ " prs_werkplek_dwgx dwgx, prs_werkplek_dwgy dwgy, "
+ " prs_werkplek_dwgrotatie rot, prs_werkplek_dwgschaal scl,"
+ " cadlabel, '"+S("fg_werkpleksymbool")+"' symbolname"
+ " FROM prs_werkplek wp, "+S("fg_syncruimteview")+" SYNC"
+ " WHERE wp.prs_alg_ruimte_key = sync.alg_ruimte_key"
+ " AND prs_werkplek_dwgx IS NOT NULL"
+ " AND alg_verdieping_key = " + vKey;
var oRs = Oracle.Execute(sql);
while (!oRs.Eof)
{
var werkplek = { key: oRs("key").Value,
oms: oRs("oms").Value,
rot: oRs("rot").Value,
dwgX: oRs("dwgx").Value,
dwgY: oRs("dwgy").Value,
symbolname: oRs("symbolname").Value
}
result.werkplekken.push(werkplek);
oRs.MoveNext();
}
Response.Write(JSON.stringify(result));
%>