const { mongoose, baseSchemaOptions } = require('./base'); const DocumentSchema = new mongoose.Schema({ employee_id: { type: mongoose.Schema.Types.ObjectId, ref: 'Employee', required: true }, type: { type: String, enum: ['Aadhar', 'UAN', 'ESI', 'Compensation_Policy', 'PVC'], required: true }, file_path: { type: String, required: true }, pvc_validity_date: { type: Date, default: null }, verified_by_hr: { type: Boolean, default: false }, verified_at: { type: Date, default: null }, hr_status: { type: String, enum: ['Pending', 'Approved', 'Rejected'], default: 'Pending' }, hr_remarks: { type: String, default: null }, reviewed_at: { type: Date, default: null }, reviewed_by: { type: mongoose.Schema.Types.ObjectId, ref: 'User', default: null }, uploaded_at: { type: Date, default: Date.now } }, baseSchemaOptions()); DocumentSchema.index({ employee_id: 1, type: 1 }, { unique: true }); module.exports = mongoose.model('Document', DocumentSchema);