module.exports = Self => { Self.remoteMethod('sumAmount', { description: 'Returns the sum of greuge for a client', accessType: 'READ', accepts: [{ arg: 'id', type: 'number', required: true, description: 'clientFk', http: {source: 'path'} }], returns: { arg: 'sumAmount' }, http: { path: `/:id/sumAmount`, verb: 'get' } }); Self.sumAmount = (clientFk, callback) => { let query = `SELECT SUM(amount) AS sumAmount FROM vn.greuge WHERE clientFk = ?`; Self.rawSql(query, [clientFk]) .then(response => { callback(null, response.length ? response[0].sumAmount : 0); }) .catch(err => { callback(err); }); }; };