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);