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' }, }, diff --git a/src/services/finance/invoices.js b/src/services/finance/invoices.js index 6562cad..8d3b460 100644 --- a/src/services/finance/invoices.js +++ b/src/services/finance/invoices.js @@ -142,6 +142,8 @@ export const editInvoiceRouteHandler = async (req, res) => { invoiceShipments: req.body.invoiceShipments, from: req.body.from, to: req.body.to, + fromType: req.body.fromType, + toType: req.body.toType, }; // Create audit log before updating const result = await editObject({ @@ -276,6 +278,8 @@ export const newInvoiceRouteHandler = async (req, res) => { invoiceShipments: invoiceShipments, from: req.body.from, to: req.body.to, + fromType: req.body.fromType, + toType: req.body.toType, }; const result = await newObject({ model: invoiceModel,