other
This commit is contained in:
54
backend/models/PromotionUse.model.js
Normal file
54
backend/models/PromotionUse.model.js
Normal file
@@ -0,0 +1,54 @@
|
||||
import mongoose from 'mongoose';
|
||||
|
||||
const PromotionUseSchema = new mongoose.Schema(
|
||||
{
|
||||
promotionId: {
|
||||
type: mongoose.Schema.Types.ObjectId,
|
||||
ref: 'Promotion',
|
||||
required: [true, 'Promotion ID is required']
|
||||
},
|
||||
orderId: {
|
||||
type: mongoose.Schema.Types.ObjectId,
|
||||
ref: 'Order',
|
||||
required: [true, 'Order ID is required']
|
||||
},
|
||||
userId: {
|
||||
type: mongoose.Schema.Types.ObjectId,
|
||||
ref: 'User',
|
||||
required: [true, 'User ID is required']
|
||||
},
|
||||
storeId: {
|
||||
type: mongoose.Schema.Types.ObjectId,
|
||||
ref: 'Store',
|
||||
required: [true, 'Store ID is required']
|
||||
},
|
||||
code: {
|
||||
type: String,
|
||||
required: [true, 'Promotion code is required']
|
||||
},
|
||||
discountType: {
|
||||
type: String,
|
||||
enum: ['percentage', 'fixed'],
|
||||
required: [true, 'Discount type is required']
|
||||
},
|
||||
discountValue: {
|
||||
type: Number,
|
||||
required: [true, 'Discount value is required']
|
||||
},
|
||||
discountAmount: {
|
||||
type: Number,
|
||||
required: [true, 'Discount amount is required']
|
||||
},
|
||||
orderTotal: {
|
||||
type: Number,
|
||||
required: [true, 'Order total is required']
|
||||
}
|
||||
},
|
||||
{
|
||||
timestamps: true
|
||||
}
|
||||
);
|
||||
|
||||
const PromotionUse = mongoose.model('PromotionUse', PromotionUseSchema);
|
||||
|
||||
export default PromotionUse;
|
||||
Reference in New Issue
Block a user