angular.module('GreenhouseUIApp').service('QueryService', function ($http){
return{
discoverGreenhouseEndpoint : discoverGreenhouseEndpoint,
getGreenhouses : getGreenhouses,
getLanesForGreenhouse : getLanesForGreenhouse,
getZonesForLane : getZonesForLane
}
function discoverGreenhouseEndpoint(){
var findProjectQuery = "<query><find><project><projName eq='Greenhouse'/></project></find></query>";
return $http.post(TQLEngineManagerURL, findProjectQuery).then(function(response) {
var x2js = new X2JS();
var jsonObj = x2js.xml_str2json(response.data);
var findProjectEndpointsQuery = "<GetProjectEndPoints><ProjectSysId>"+jsonObj.Find.Result.Project.SysId+"</ProjectSysId></GetProjectEndPoints>";
return $http.post(TQLEngineManagerURL, findProjectEndpointsQuery).then(function(response) {
var x2js = new X2JS();
var endpointsJson = x2js.xml_str2json(response.data);
return endpointsJson;
});
});
}
function getGreenhouses(endpointURL){
var query = "<Query><Find><Greenhouse><GreenhouseID ne=''/></Greenhouse></Find></Query>";
return $http.post(endpointURL, query).then(function(response) {
var x2js = new X2JS();
var jsonObj = x2js.xml_str2json(response.data);
return jsonObj;
});
}
function getLanesForGreenhouse(GreenhouseID){
var query = "<Query><Find><Lane><GreenhouseID eq="+ GreenhouseID +"/></Lane></Find></Query>";
return $http.post(url, query).then(function(response) {
var x2js = new X2JS();
var jsonObj = x2js.xml_str2json(response.data);
return jsonObj;
});
}
function getZonesForLane(LaneID){
var query = "<Query><Find><Zone><LaneID eq="+LaneID+" /></Zone></Find></Query>";
return $http.post(url, query).then(function(response) {
var x2js = new X2JS();
var jsonObj = x2js.xml_str2json(response.data);
return jsonObj;
});
}
}); |