57 lines
1.8 KiB
JavaScript
57 lines
1.8 KiB
JavaScript
import mongoose from "mongoose";
|
|
import dotenv from "dotenv";
|
|
import Order from "../models/Order.model.js"; // Adjust path if needed
|
|
import Vendor from "../models/Vendor.model.js"; // Import Vendor model
|
|
|
|
dotenv.config();
|
|
|
|
// ✅ Connect to MongoDB
|
|
const mongoUri = process.env.MONGO_URI || "mongodb://localhost:27017/yourDatabaseName";
|
|
mongoose
|
|
.connect(mongoUri, { useNewUrlParser: true, useUnifiedTopology: true })
|
|
.then(() => console.log("✅ Connected to MongoDB"))
|
|
.catch((err) => console.error("❌ MongoDB Connection Error:", err));
|
|
|
|
// ✅ Insert Fake Order for an Existing Vendor
|
|
async function insertFakeOrder() {
|
|
try {
|
|
// ✅ Find an existing vendor
|
|
const existingVendor = await Vendor.findOne();
|
|
if (!existingVendor) {
|
|
console.log("❌ No vendors found. Create a vendor first.");
|
|
return;
|
|
}
|
|
|
|
console.log(`✅ Using Vendor: ${existingVendor.username} (${existingVendor._id})`);
|
|
|
|
const fakeOrder = new Order({
|
|
buyerId: new mongoose.Types.ObjectId(), // Fake buyer
|
|
vendorId: existingVendor._id, // Assign to existing vendor
|
|
storeId: new mongoose.Types.ObjectId(),
|
|
products: [
|
|
{
|
|
productId: new mongoose.Types.ObjectId(),
|
|
quantity: 2,
|
|
pricePerUnit: 25.99,
|
|
totalItemPrice: 51.98,
|
|
},
|
|
],
|
|
totalPrice: 51.98,
|
|
status: "paid",
|
|
paymentAddress: "ltc1qxyzfakeaddress123456",
|
|
txid: "faketxid1234567890abcdef",
|
|
escrowExpiresAt: new Date(Date.now() + 8 * 24 * 60 * 60 * 1000), // 8 days from now
|
|
});
|
|
|
|
const savedOrder = await fakeOrder.save();
|
|
console.log("✅ Fake Order Inserted:", savedOrder);
|
|
} catch (error) {
|
|
console.error("❌ Error inserting fake order:", error);
|
|
} finally {
|
|
mongoose.connection.close(); // Close DB connection
|
|
}
|
|
}
|
|
|
|
// ✅ Run Script
|
|
insertFakeOrder();
|