This commit is contained in:
2026-03-05 15:40:16 -05:00
parent fd81f1eaf7
commit 6cd24aba7f
18 changed files with 489 additions and 37 deletions

View File

@@ -230,6 +230,7 @@ exports.createPDFFromDocTemplateName = (req, res) => {
console.log('what', __dirname.replace('/controllers', ''));
var inputData = JSON.parse(req.query.inputData);
var docTemplateName = req.query.docTemplateName;
const site = splitSite.findSiteNumber(req);
const eventIds =inputData?.eventIds;
Event.find({ '_id': { $in: eventIds } }).then((events) => {
const docData = {
@@ -263,10 +264,13 @@ exports.createPDFFromDocTemplateName = (req, res) => {
});
// var transportationId = req.body.transportationId;d
// var transportationName = req.body.transportationName;
DocTemplate.find({name: docTemplateName}).then((data) => {
DocTemplate.findOne({
name: docTemplateName,
site,
"file.0": { $exists: true }
}).sort({ edit_date: -1, updatedAt: -1, createdAt: -1 }).then((docTemplate) => {
try {
if (data && data.length > 0) {
var docTemplate = data[0] || {};
if (docTemplate) {
var templateDoc = `${__dirname.replace('/controllers', '')}${docTemplate?.file[0]?.url}`;
var outputFileRandom = Math.ceil(Math.random() * 100000000);
var outputFile = `/tmp/${docTemplate.name}_${outputFileRandom}.docx`;
@@ -329,6 +333,10 @@ exports.createPDFFromDocTemplateName = (req, res) => {
libre.convert(infile, extend, undefined, (err, done) => {
if (err) {
console.log('Error converting file:', err);
return res.status(500).send({
success: false,
message: "Error converting doc file to PDF"
});
}
// Here in done you have pdf file which you can save or transfer in another stream
fs.writeFileSync(outputPdfPath, done);
@@ -336,21 +344,33 @@ exports.createPDFFromDocTemplateName = (req, res) => {
res.download(outputPdfPath, function(error) {
if (error) {
console.log('Error in sending download file ${outputPdfPath}');
return res.status(500).send({
success: false,
message: "Error downloading generated PDF"
});
}
});
});
} catch (e) {
console.log(e);
return res.status(500).send({
success: false,
message: "Error generating PDF from doc template"
});
}
} else {
res.status(404).send({
success: false,
message: "Docs Template doesn't exist"
message: "Docs Template doesn't exist for this site, or file not uploaded yet"
})
}
} catch(e) {
console.log(e);
return res.status(500).send({
success: false,
message: "Error processing doc template"
});
}
}).catch(err => {
res.status(500).send({
@@ -366,6 +386,7 @@ exports.createDocFromDocTemplateName = (req, res) => {
var inputData = JSON.parse(req.query.inputData);
const eventIds = inputData?.eventIds;
var docTemplateName = req.query.docTemplateName;
const site = splitSite.findSiteNumber(req);
Event.find({ '_id': { $in: eventIds } }).then((events) => {
const docData = {
events: []
@@ -397,10 +418,13 @@ exports.createDocFromDocTemplateName = (req, res) => {
});
});
DocTemplate.find({name: docTemplateName}).then((data) => {
DocTemplate.findOne({
name: docTemplateName,
site,
"file.0": { $exists: true }
}).sort({ edit_date: -1, updatedAt: -1, createdAt: -1 }).then((docTemplate) => {
try {
if (data && data.length > 0) {
var docTemplate = data[0] || {};
if (docTemplate) {
var templateDoc = `${__dirname.replace('/controllers', '')}${docTemplate?.file[0]?.url}`;
var outputFileRandom = Math.ceil(Math.random() * 100000000);
var outputFile = `/tmp/${docTemplate.name}_${outputFileRandom}.docx`;
@@ -445,6 +469,10 @@ exports.createDocFromDocTemplateName = (req, res) => {
res.download(outputFilename, (error) => {
if (error) {
console.log('Error in downloading excel')
return res.status(500).send({
success: false,
message: "Error downloading generated doc file"
});
}
});
@@ -453,11 +481,15 @@ exports.createDocFromDocTemplateName = (req, res) => {
} else {
res.status(404).send({
success: false,
message: "Docs Template doesn't exist"
message: "Docs Template doesn't exist for this site, or file not uploaded yet"
})
}
} catch(e) {
console.log(e);
return res.status(500).send({
success: false,
message: "Error processing doc template"
});
}
}).catch(err => {
res.status(500).send({