/** * Link a child business to a parent * POST: { "ChildBusinessID": 49, "ParentBusinessID": 51 } */ function readJsonBody() { var raw = getHttpRequestData().content; if (isNull(raw) || len(trim(raw)) == 0) return {}; try { return deserializeJSON(raw); } catch (any e) { return {}; } } response = { "OK": false }; try { data = readJsonBody(); childID = val(data.ChildBusinessID ?: 0); parentID = val(data.ParentBusinessID ?: 0); if (childID <= 0) { response["ERROR"] = "ChildBusinessID required"; } else { queryExecute(" UPDATE Businesses SET BusinessParentBusinessID = :parentId WHERE BusinessID = :childId ", { parentId: { value = parentID > 0 ? parentID : javaCast("null", ""), cfsqltype = "cf_sql_integer", null = parentID == 0 }, childId: childID }, { datasource = "payfrit" }); response["OK"] = true; response["MESSAGE"] = "Updated BusinessID " & childID & " parent to " & (parentID > 0 ? parentID : "NULL"); } } catch (any e) { response["ERROR"] = e.message; } writeOutput(serializeJSON(response));