Загрузить файлы в «sk1/src/models»

This commit is contained in:
Yan Kasabutski 2025-05-13 04:06:35 +00:00
parent 568a2779eb
commit 26b3bf1ad7
2 changed files with 36 additions and 0 deletions

17
sk1/src/models/Cart.js Normal file
View File

@ -0,0 +1,17 @@
const mongoose = require('mongoose');
const CartItemSchema = new mongoose.Schema({
productId: { type: String, required: true },
name: { type: String, required: true },
price: { type: Number, required: true },
img: { type: String, required: true },
quantity: { type: Number, default: 1 }
});
const CartSchema = new mongoose.Schema({
userId: { type: mongoose.Schema.Types.ObjectId, ref: 'User', required: true },
items: [CartItemSchema],
updatedAt: { type: Date, default: Date.now }
});
module.exports = mongoose.model('Cart', CartSchema);

19
sk1/src/models/User.js Normal file
View File

@ -0,0 +1,19 @@
const mongoose = require('mongoose');
const bcrypt = require('bcryptjs');
const UserSchema = new mongoose.Schema({
firstName: { type: String, required: true },
lastName: { type: String, required: true },
email: { type: String, required: true, unique: true },
password: { type: String, required: true },
createdAt: { type: Date, default: Date.now }
});
UserSchema.pre('save', async function(next) {
if (this.isModified('password')) {
this.password = await bcrypt.hash(this.password, 10);
}
next();
});
module.exports = mongoose.model('User', UserSchema);