ee-soa-service
Advanced tools
Comparing version 0.2.11 to 0.2.12
@@ -192,2 +192,7 @@ | ||
// APPLY FIELD FUNCTIONS | ||
if(queryData.getFields().length && typeof this.ormObject.select === 'function') { | ||
this._addFieldFunctions(queryData); | ||
} | ||
// ADD PRIMARY KEYS | ||
@@ -263,2 +268,24 @@ if(this.specs.primaryKeys.length) { | ||
, _addFieldFunctions: function(queryData) { | ||
var fields = queryData.getFields(); | ||
// collect Related-ORM functions | ||
fields.forEach(function(field) { | ||
if(field.isAlias) { | ||
var fieldSelect = this.ormObject.select(field.alias); | ||
if(typeof fieldSelect[field.functionName] === 'function') { | ||
var fieldFunction = fieldSelect[field.functionName]; | ||
queryData.getFields().push(fieldFunction.apply(fieldSelect, field.functionParameters)); | ||
} | ||
var index = queryData.getFields().indexOf(field); | ||
if(index >= 0) { | ||
queryData.getFields().splice(index,1); | ||
} | ||
} | ||
}.bind(this)); | ||
return; | ||
} | ||
, _applySubOrder: function(query, field, order) { | ||
@@ -265,0 +292,0 @@ var subQuery = query.get(field); |
@@ -5,3 +5,3 @@ { | ||
, "keywords" : ["ee", "soa", "service"] | ||
, "version" : "0.2.11" | ||
, "version" : "0.2.12" | ||
, "author": { | ||
@@ -8,0 +8,0 @@ "name" : "Tobias Kneubuehler" |
72739
1248