28 lines
748 B
JavaScript
28 lines
748 B
JavaScript
module.exports = Self => {
|
|
Self.remoteMethod('sorted', {
|
|
description: 'Sort the vehicles by warehouse',
|
|
accessType: 'WRITE',
|
|
accepts: [{
|
|
arg: 'warehouseFk',
|
|
type: 'number'
|
|
}],
|
|
returns: {
|
|
type: ['object'],
|
|
root: true
|
|
},
|
|
http: {
|
|
path: `/sorted`,
|
|
verb: `POST`
|
|
}
|
|
});
|
|
|
|
Self.sorted = async warehouseFk => {
|
|
return Self.rawSql(`
|
|
SELECT v.id, v.warehouseFk, v.numberPlate, w.name
|
|
FROM vehicle v
|
|
JOIN warehouse w ON w.id = v.warehouseFk
|
|
ORDER BY v.warehouseFk = ? DESC, w.id, v.numberPlate ASC;
|
|
`, [warehouseFk]);
|
|
};
|
|
};
|