44 lines
878 B
JavaScript
44 lines
878 B
JavaScript
import mongoose from "mongoose";
|
|
|
|
const EscrowSchema = new mongoose.Schema({
|
|
orderId: {
|
|
type: mongoose.Schema.Types.ObjectId,
|
|
ref: "Order",
|
|
required: true,
|
|
},
|
|
buyerId: {
|
|
type: mongoose.Schema.Types.ObjectId,
|
|
ref: "Buyer",
|
|
required: true,
|
|
},
|
|
vendorId: {
|
|
type: mongoose.Schema.Types.ObjectId,
|
|
ref: "Vendor",
|
|
required: true,
|
|
},
|
|
amount: {
|
|
type: Number,
|
|
required: true,
|
|
min: 0.01,
|
|
},
|
|
currency: {
|
|
type: String,
|
|
enum: ["ltc", "btc", "xmr"],
|
|
required: true,
|
|
},
|
|
status: {
|
|
type: String,
|
|
enum: ["held", "released", "disputed"],
|
|
default: "held",
|
|
},
|
|
releaseDate: {
|
|
type: Date,
|
|
required: true,
|
|
default: function () {
|
|
return new Date(Date.now() + 8 * 24 * 60 * 60 * 1000); // Auto set to 8 days from now
|
|
},
|
|
},
|
|
});
|
|
|
|
export default mongoose.model("Escrow", EscrowSchema);
|