From cf979a6db048de158102f7d8ba4870e5bd4869fc Mon Sep 17 00:00:00 2001 From: Tom Butcher Date: Sat, 4 Jul 2026 15:18:25 +0100 Subject: [PATCH] Update invoice schema to support dynamic references for 'from' and 'to' fields by introducing 'fromType' and 'toType' fields, enhancing flexibility in vendor and client associations. --- src/database/schemas/finance/invoice.schema.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/database/schemas/finance/invoice.schema.js b/src/database/schemas/finance/invoice.schema.js index 89cb964..ed7e475 100644 --- a/src/database/schemas/finance/invoice.schema.js +++ b/src/database/schemas/finance/invoice.schema.js @@ -33,8 +33,10 @@ const invoiceSchema = new Schema( shippingAmountWithTax: { type: Number, required: true, default: 0 }, grandTotalAmount: { type: Number, required: true, default: 0 }, totalTaxAmount: { type: Number, required: true, default: 0 }, - from: { type: Schema.Types.ObjectId, ref: 'vendor', required: false }, - to: { type: Schema.Types.ObjectId, ref: 'client', required: false }, + from: { type: Schema.Types.ObjectId, refPath: 'fromType', required: false }, + fromType: { type: String, required: false }, + to: { type: Schema.Types.ObjectId, refPath: 'toType', required: false }, + toType: { type: String, required: false }, state: { type: { type: String, required: true, default: 'draft' }, },