Spaces:
Paused
Paused
| const mongoose = require('mongoose'); | |
| const productSchema = new mongoose.Schema({ | |
| id: { type: Number, required: true, unique: true }, | |
| name: { type: String, required: true }, | |
| price: Number, | |
| originalPrice: { type: Number, default: null }, // For Flash Sales | |
| discountPercent: { type: Number, default: 0 }, // Discount % | |
| quantity: { type: Number, default: 0 }, | |
| condition: { type: String, enum: ['new', 'used'], default: 'new' }, | |
| description: String, | |
| category: String, // Category ID | |
| media: [{ | |
| type: { type: String }, // 'photo' or 'video' | |
| file_id: String | |
| }], | |
| reviews: [{ | |
| userId: String, | |
| userName: String, | |
| rating: Number, // 1-5 | |
| comment: String, | |
| date: { type: Date, default: Date.now } | |
| }], | |
| createdAt: { type: Date, default: Date.now } | |
| }); | |
| module.exports = mongoose.model('Product', productSchema); | |