/
payroll_employees.js
32 lines (30 loc) · 1.2 KB
/
payroll_employees.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
var _ = require('lodash'),
logger = require('../logger'),
EntityHelper = require('./entity_helper'),
Employee = require('../entities/payroll_employee'),
util = require('util')
var Employees = EntityHelper.extend({
constructor: function(application, options) {
EntityHelper.call(this, application, _.extend({ entityName: 'Employee', entityPlural: 'Employees' }, options));
},
newEmployee: function(data, options) {
return new Employee(this.application, data, options)
},
getEmployee: function(id, modifiedAfter, where, order) {
return this.getEmployees({ id: id, modifiedAfter: modifiedAfter, where: where, order: order })
.then(function(employees) {
return _.first(employees);
})
},
saveEmployees: function(employees, options) {
// TO-DO
// return this.saveEntities(employees, options)
},
getEmployees: function(options) {
var self = this;
var clonedOptions = _.extend({}, options, { api: 'payroll' });
clonedOptions.entityConstructor = function(data) { return self.newEmployee(data) };
return this.getEntities(clonedOptions)
}
})
module.exports = Employees;