2013-05-06 03:38:29 -04:00
|
|
|
var mongoose = require('mongoose')
|
|
|
|
Schema = mongoose.Schema,
|
|
|
|
ObjectId = Schema.ObjectId;
|
|
|
|
|
|
|
|
var workorderSchema = new Schema({
|
|
|
|
biomedId: Number,
|
|
|
|
client: { type: ObjectId, ref: 'Client' },
|
2014-07-25 03:00:29 -04:00
|
|
|
emails: [String],
|
2013-05-06 03:38:29 -04:00
|
|
|
createdOn: Date,
|
|
|
|
createdBy: { type: ObjectId, ref: 'User' },
|
2014-02-18 01:30:05 -05:00
|
|
|
modifiedBy: { type: ObjectId, ref: 'User' },
|
2013-05-06 03:38:29 -04:00
|
|
|
reason: String,
|
2013-09-04 03:05:47 -04:00
|
|
|
maintenanceType: String,
|
2013-05-06 03:38:29 -04:00
|
|
|
remarks: String,
|
|
|
|
status: String,
|
|
|
|
scheduling: {
|
|
|
|
start: Date,
|
|
|
|
end: Date
|
|
|
|
},
|
|
|
|
calendarId: String,
|
|
|
|
techs: [{ type: ObjectId, ref: 'User' }],
|
|
|
|
history: [{
|
|
|
|
oldValues: {},
|
|
|
|
newValues: {},
|
|
|
|
modifiedBy: { type: ObjectId, ref: 'User' }
|
|
|
|
}],
|
2015-04-06 06:36:17 -04:00
|
|
|
deleted: { type: Boolean, default: false },
|
|
|
|
invoiceNumber: String,
|
|
|
|
invoicedOn: Date,
|
|
|
|
checkNumber: String,
|
|
|
|
paidOn: Date,
|
2015-07-26 03:46:43 -04:00
|
|
|
alternativeContact: String,
|
2015-08-05 06:03:02 -07:00
|
|
|
trackingNumber: String,
|
|
|
|
devices: [{ type: ObjectId, ref: 'Device' }]
|
2013-05-06 03:38:29 -04:00
|
|
|
});
|
|
|
|
|
2013-09-04 03:05:47 -04:00
|
|
|
module.exports = mongoose.model('Workorder', workorderSchema);
|