UWVA#53986 sleutel innemen lukt niet: 'ruimte bestaat niet'

svn path=/Website/trunk/; revision=40572
This commit is contained in:
Alex Tiehuis
2019-01-17 08:51:17 +00:00
parent e68dd09101
commit a3814a6e4a

View File

@@ -45,12 +45,15 @@ var flr_key = getFParamInt("verdiepingkey", -1); // Verdieping
var room_key = getFParamInt("ruimtekey", -1); // Ruimte
var sql = "SELECT d.ins_alg_ruimte_key_org"
+ " , d.ins_alg_ruimte_type_org"
+ " , d.ins_deel_omschrijving"
+ " FROM ins_deel d"
+ " WHERE ins_deel_key = " + obj_key;
var oRs = Oracle.Execute(sql);
var isLendOut = oRs("ins_alg_ruimte_key_org").value != null;
var lInsOmschrijving = oRs("ins_deel_omschrijving").value;
var lInsKeyOrg = oRs("ins_alg_ruimte_key_org").value;
var lInsTypeOrg = oRs("ins_alg_ruimte_type_org").value;
oRs.Close();
var is_reservering = (lent_out_rsv_deel_key > -1);
@@ -102,9 +105,27 @@ if (!adapt)
}
else
{ // Innemen: Maak reset de eigenaar/plaats en sla de kenmerken op
var alg_r_key = "ins_alg_ruimte_key_org";
update_string = "";
// Check whether ins_alg_ruimte_key_org of object still exists
if (lInsTypeOrg == "R")
{
var sql_r = "SELECT alg_ruimte_key"
+ " FROM alg_ruimte"
+ " WHERE alg_ruimte_key = " + lInsKeyOrg
+ " AND alg_ruimte_verwijder IS NULL";
var oRs_r = Oracle.Execute(sql_r);
// Override alg_ruimte_key to user-alg_ruimte_key when ins_alg_ruimte_type_org no longer exists
if (oRs_r.eof)
{
var alg_r_key = user.alg_ruimte_key();
update_string = L("lcl_obj_to_user_room") + "\n";
result.toaster = L("lcl_obj_to_user_room");
}
}
// Alleen uitgegeven objecten kunnen ingenomen worden (ins_alg_ruimte_key_org en ins_alg_ruimte_type_org zijn niet NULL)
sql = "UPDATE ins_deel"
+ " SET ins_alg_ruimte_key = ins_alg_ruimte_key_org"
+ " SET ins_alg_ruimte_key = " + alg_r_key
+ ", ins_alg_ruimte_type = ins_alg_ruimte_type_org"
+ ", ins_alg_ruimte_key_org = NULL"
+ ", ins_alg_ruimte_type_org = NULL"
@@ -112,7 +133,7 @@ if (!adapt)
+ " WHERE ins_deel_key = " + obj_key
+ " AND ins_alg_ruimte_key_org IS NOT NULL"
+ " AND ins_alg_ruimte_type_org IS NOT NULL";
update_string = L("lcl_obj_is_ingenomen");
update_string += L("lcl_obj_is_ingenomen");
// De sql is nu nog niet uitgevoerd, dus de lener is nog bekend. Zet alvast het bericht klaar dat het object ingenomen is.
shared.trackaction("INSIN2", obj_key, L("lcl_obj_is_ingenomen2").format(lInsOmschrijving));