51 lines
1010 B
JavaScript

import mongoose from 'mongoose';
const { Schema } = mongoose;
const subJobSchema = new mongoose.Schema({
printer: {
type: Schema.Types.ObjectId,
ref: 'printer',
required: true,
},
job: {
type: Schema.Types.ObjectId,
ref: 'job',
required: true,
},
subJobId: {
type: String,
required: true,
},
gcodeFile: {
type: Schema.Types.ObjectId,
ref: 'gcodeFile',
required: true,
},
state: {
type: { required: true, type: String },
percent: { required: false, type: Number },
},
number: {
type: Number,
required: true,
},
createdAt: {
type: Date,
default: Date.now,
},
updatedAt: {
type: Date,
default: Date.now,
},
startedAt: { required: false, type: Date },
finishedAt: { required: false, type: Date },
});
subJobSchema.virtual('id').get(function () {
return this._id.toHexString();
});
subJobSchema.set('toJSON', { virtuals: true });
export const subJobModel = mongoose.model('subJob', subJobSchema);