const mongoose = require('mongoose') const mongoosePaginate = require('mongoose-paginate-v2'); function image(img) { if (img) return '/uploads/images/food/' + img } const RateSchema = mongoose.Schema({ user_id: {type: mongoose.ObjectId, ref: 'User'}, rate: { type: Number, enum: [0, 1, 2, 3, 4, 5], default: 0 }, comment: String, order_id : String, replay: String, replied_by: {type: mongoose.ObjectId, ref: 'User'}, confirmed: {type: Boolean, default: false}, confirmed_by: {type: mongoose.ObjectId, ref: 'User'}, }) const FoodSchema = mongoose.Schema({ branchId: {type: mongoose.ObjectId, ref: 'StoreInfo'}, club : {type : Boolean , default : false}, clubQuantity : {type : Number , default : 1}, point: {type : Number , default : 0}, sale : {type : Boolean , default : true}, name: String, image: {type: String, get: image}, price: {type: Number, default: 0}, special : {type : Boolean , default : false}, description: String, short_description: String, estimated_time: Number, stock: {type: Number, default: 0}, category: {type: mongoose.ObjectId, ref: 'FoodCategory'}, static_discount: {type: Number, default: 0}, rate: {type: Number, default: 0}, ratings: [RateSchema], index: Number, havePoint : {type: Boolean ,default : true}, canReview : {type :Array , default: []}, menuType_id: {type: mongoose.ObjectId, ref: 'MenuType'} // deleted : {type: Boolean , default : false} }) FoodSchema.plugin(mongoosePaginate); module.exports = mongoose.model('Food', FoodSchema)