changes in create quotation

master^2
Varun 8 months ago
parent 9d88725530
commit 4da398fe1b

@ -1485,21 +1485,47 @@ exports.createquotationforSensor = async (req, reply) => {
text: item.text || "",
}));
// Fetch pricing data from Iotprice database
const getPrice = async (name, type) => {
const priceData = await Iotprice.findOne({ name, type });
return priceData ? priceData.cost : 0; // Default to 0 if not found
};
// Calculate price for masters, slaves, sensors, motor switches
const masterPrice = await getPrice("master", "master");
const slavePrice = await getPrice("slave", "slave");
const sensorPrice = await getPrice("sensor", "sensor");
const motorSwitchPrice = await getPrice("motor_switch", "motor_switche");
// Calculate price for electricals
let electricalPrice = 0;
for (const item of formattedElectricals) {
if (item.type === "cable") {
electricalPrice += await getPrice("cable", item.wire); // wire field is type
} else if (item.type === "switch") {
electricalPrice += await getPrice("switch", item.switch); // switch field is type
}
}
// Calculate total estimation price
const totalEstimatedPrice = masterPrice + slavePrice + sensorPrice + motorSwitchPrice + electricalPrice;
// Format current date and time in IST
const formattedDateTime = dayjs().tz("Asia/Kolkata").format('DD-MMM-YYYY - HH:mm');
// Create a new SensorQuotation document
const newQuotation = new SensorQuotation({
quatationId,
customerId: customerId,
installationId: installationId,
customerId,
installationId,
quote_status: "sentfrominstaller",
masters,
slaves,
sensors,
motor_switches,
electricals: formattedElectricals,
datetime: formattedDateTime, // Add the formatted IST date and time
datetime: formattedDateTime,
estimated_price: totalEstimatedPrice, // Store estimated price
});
const savedQuotation = await newQuotation.save();
@ -1520,6 +1546,7 @@ exports.createquotationforSensor = async (req, reply) => {
};
exports.editQuotationForSensor = async (req, reply) => {
try {
const { quatationId } = req.params; // Get the ID of the quotation to edit

Loading…
Cancel
Save