2017-06-17 17:01:50 +02:00
|
|
|
module.exports = {
|
2017-08-29 19:34:34 +02:00
|
|
|
find: async function (params) {
|
|
|
|
return this
|
2017-06-17 17:01:50 +02:00
|
|
|
.find()
|
|
|
|
.limit(Number(params.limit))
|
|
|
|
.sort(params.sort)
|
|
|
|
.skip(Number(params.skip));
|
|
|
|
},
|
|
|
|
|
2017-08-29 19:34:34 +02:00
|
|
|
count: async function (params) {
|
|
|
|
return Number(await this
|
|
|
|
.count());
|
2017-06-17 17:01:50 +02:00
|
|
|
},
|
|
|
|
|
2017-08-29 19:34:34 +02:00
|
|
|
findOne: async function (params) {
|
|
|
|
return await this
|
|
|
|
.findOne({
|
|
|
|
[this.primaryKey]: params.id
|
|
|
|
});
|
2017-06-17 17:01:50 +02:00
|
|
|
},
|
|
|
|
|
2017-08-29 19:34:34 +02:00
|
|
|
create: async function (params) {
|
|
|
|
return await this
|
2017-06-17 17:01:50 +02:00
|
|
|
.create(params.values);
|
|
|
|
},
|
|
|
|
|
2017-08-29 19:34:34 +02:00
|
|
|
update: async function (params) {
|
|
|
|
return await this
|
|
|
|
.update({
|
|
|
|
[this.primaryKey]: params.id
|
|
|
|
}, params.values);
|
2017-06-17 17:01:50 +02:00
|
|
|
},
|
|
|
|
|
2017-08-29 19:34:34 +02:00
|
|
|
delete: async function (params) {
|
|
|
|
return await this
|
2017-08-31 17:26:44 +02:00
|
|
|
.remove({
|
2017-08-29 19:34:34 +02:00
|
|
|
[this.primaryKey]: params.id
|
|
|
|
});
|
2017-06-17 17:01:50 +02:00
|
|
|
}
|
2017-08-29 19:34:34 +02:00
|
|
|
};
|