added tanker accounts

master
varun 2 years ago
parent 340def478f
commit 76b3bf9836

@ -432,3 +432,46 @@ exports.supplierAccounts = async (req, reply) => {
}
};
exports.tankerAccounts = async (req, reply) => {
try {
const booking = await Tankerbooking.find({supplierId: req.params.supplierId,customerId:req.body.customerId,tankerName:req.body.tankerName})
//console.log(booking)
let acceptedCount = 0;
let pendingRejectedCount = 0;
let deliveredCount = 0;
let deliveredTotalPrice = 0;
let deliveredTotalAmountPaid = 0;
let deliveredTotalAmountDue = 0;
for (let i = 0; i < booking.length; i++) {
let order = booking[i];
if (order.orderStatus === "accepted") {
acceptedCount++;
} else if (order.orderStatus === "pending" || order.orderStatus === "rejected") {
pendingRejectedCount++;
} else if (order.orderStatus === "delivered") {
deliveredCount++;
deliveredTotalPrice += parseInt(order.price.replace(/,/g, ''), 10)
deliveredTotalAmountPaid += parseInt(order.amount_paid.replace(/,/g, ''), 10)
deliveredTotalAmountDue += parseInt(order.amount_due.replace(/,/g, ''), 10)
}
}
console.log("Accepted orders count:", acceptedCount);
console.log("Pending or rejected orders count:", pendingRejectedCount);
console.log("Delivered orders count:", deliveredCount);
console.log("Delivered orders total price:", deliveredTotalPrice);
console.log("Delivered orders total amount paid:", deliveredTotalAmountPaid);
console.log("Delivered orders total amount due:", deliveredTotalAmountDue);
reply.send({ status_code: 200, count: booking.length, data: booking,acceptedCount:acceptedCount,pendingRejectedCount:pendingRejectedCount,deliveredCount:deliveredCount,deliveredTotalPrice:deliveredTotalPrice,deliveredTotalAmountPaid:deliveredTotalAmountPaid,deliveredTotalAmountDue:deliveredTotalAmountDue });
} catch (err) {
throw boom.boomify(err);
}
};

@ -350,6 +350,47 @@ module.exports = function (fastify, opts, next) {
});
fastify.route({
method: "PUT",
url: "/api/tankerAccounts/:supplierId",
schema: {
tags: ["Supplier"],
summary: "This is for tanker accounts",
params: {
required: ["supplierId"],
type: "object",
properties: {
supplierId: {
type: "string",
description: "supplierId",
},
},
},
body: {
type: "object",
// required: ['phone'],
properties: {
customerId: { type: "string" },
tankerName: { type: "string" },
},
},
security: [
{
basicAuth: [],
},
],
},
// preHandler: [
// fastify.auth([fastify.operatorAuthenticate]),
// validationHandler.validatePhoneFormat,
// ],
preHandler: fastify.auth([fastify.authenticate]),
handler: supplierOrderController.tankerAccounts,
});
next();
}

Loading…
Cancel
Save