diff --git a/src/database/schemas/inventory/orderitem.schema.js b/src/database/schemas/inventory/orderitem.schema.js index e50292f..b5d0e9b 100644 --- a/src/database/schemas/inventory/orderitem.schema.js +++ b/src/database/schemas/inventory/orderitem.schema.js @@ -62,7 +62,9 @@ orderItemSchema.statics.recalculate = async function (orderItem, user) { model: purchaseOrderModel, id: orderId, updateData: { - cost: { net: totalAmount, gross: totalAmountWithTax }, + totalAmount: parseFloat(totalAmount), + totalAmountWithTax: parseFloat(totalAmountWithTax), + totalTaxAmount: parseFloat(totalAmountWithTax - totalAmount), }, user, }); diff --git a/src/database/schemas/inventory/purchaseorder.schema.js b/src/database/schemas/inventory/purchaseorder.schema.js index 4d08762..e4d8d5d 100644 --- a/src/database/schemas/inventory/purchaseorder.schema.js +++ b/src/database/schemas/inventory/purchaseorder.schema.js @@ -2,21 +2,12 @@ import mongoose from 'mongoose'; import { generateId } from '../../utils.js'; const { Schema } = mongoose; -const itemSchema = new Schema({ - itemType: { type: String, required: true }, - item: { type: Schema.Types.ObjectId, refPath: 'items.itemType', required: true }, - quantity: { type: Number, required: true }, - itemCost: { type: Number, required: true }, - totalCost: { type: Number, required: true }, - totalCostWithTax: { type: Number, required: true }, - taxRate: { type: Schema.Types.ObjectId, ref: 'taxRate', required: false }, -}); - const purchaseOrderSchema = new Schema( { _reference: { type: String, default: () => generateId()() }, - cost: { net: { type: Number, required: true }, gross: { type: Number, required: true } }, - items: [itemSchema], + totalAmount: { type: Number, required: true }, + totalAmountWithTax: { type: Number, required: true }, + totalTaxAmount: { type: Number, required: true }, timestamp: { type: Date, default: Date.now }, vendor: { type: Schema.Types.ObjectId, ref: 'vendor', required: true }, state: {