Refactor invoice schema to improve clarity and add acknowledgment date

- Renamed 'vendor' and 'client' fields to 'from' and 'to' for better semantic understanding.
- Added 'acknowledgedAt' field to track acknowledgment date of invoices.
This commit is contained in:
Tom Butcher 2025-12-28 02:10:55 +00:00
parent 8126574186
commit 858041b8e9

View File

@ -33,8 +33,8 @@ 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 },
vendor: { type: Schema.Types.ObjectId, ref: 'vendor', required: false },
client: { type: Schema.Types.ObjectId, ref: 'client', required: false },
from: { type: Schema.Types.ObjectId, ref: 'vendor', required: false },
to: { type: Schema.Types.ObjectId, ref: 'client', required: false },
state: {
type: { type: String, required: true, default: 'draft' },
},
@ -43,6 +43,7 @@ const invoiceSchema = new Schema(
issuedAt: { type: Date, required: false },
dueAt: { type: Date, required: false },
postedAt: { type: Date, required: false },
acknowledgedAt: { type: Date, required: false },
paidAt: { type: Date, required: false },
cancelledAt: { type: Date, required: false },
invoiceOrderItems: [invoiceOrderItemSchema],