Spaces:
Runtime error
Runtime error
File size: 795 Bytes
8c7b7ca | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | const { mongoose, baseSchemaOptions } = require('./base');
const UserSchema = new mongoose.Schema({
full_name: { type: String, required: true, trim: true },
email: { type: String, required: true, trim: true, lowercase: true },
password_hash: { type: String, required: true },
role: { type: String, enum: ['Admin', 'HR', 'Safety_Officer', 'Vendor'], required: true },
vendor_id: { type: mongoose.Schema.Types.ObjectId, ref: 'Vendor', default: null },
phone: { type: String, default: null },
must_reset_password: { type: Boolean, default: false },
password_changed_at: { type: Date, default: Date.now },
is_active: { type: Boolean, default: true }
}, baseSchemaOptions());
UserSchema.index({ email: 1 }, { unique: true });
module.exports = mongoose.model('User', UserSchema);
|