const mongoose = require('mongoose') const timestamp = require('mongoose-timestamp') const requestSchema = new mongoose.Schema({ project: { type: mongoose.Schema.Types.ObjectId, ref: 'Project', required: true }, user: { type: mongoose.Schema.Types.ObjectId, ref: 'User', required: true }, role_id: { type: mongoose.Schema.Types.ObjectId, required: false, default: null }, role_expertise: { type: String, required: false, trim: true, default: null }, time: { type: Number, required: true }, price: { type: Number, required: true }, portfolio: [{ path: { type: String, required: true }, type: { type: String, enum: ['image', 'video'], required: true } }], status: { type: String, enum: ['pending', 'accepted', 'rejected'], default: 'pending' } }) // پشتیبانِ کوئریِ enrichProjectsWithRequests (getProjectController.js) که با // $in روی project سرچ می‌کنه — بدونش هر لیستِ پروژه یه COLLSCAN روی Request می‌زد requestSchema.index({ project: 1 }) requestSchema.plugin(timestamp) const RequestModel = mongoose.model('Request', requestSchema) module.exports = RequestModel