sent pdf to stream not a file

This commit is contained in:
2024-04-30 11:27:09 +01:00
parent 3fb9a7fbfb
commit 5a411dc290
4 changed files with 58 additions and 16 deletions
+37
View File
@@ -303,6 +303,43 @@ export const createRepBlob = async (formContent, containerName, caseref) => {
return formContent.pinswg_name; return formContent.pinswg_name;
}; };
export const createAppealPDFBlob = async (
formContent,
containerName,
caseref
) => {
const containerToken = await createContainerSas(containerName);
const sasUrl = `${STORAGE_PATH}/${containerName}?${containerToken}`;
const containerClient = new ContainerClient(sasUrl);
formContent = formContent;
let caseID = "";
caseID = caseref;
const content = formContent;
//console.log(content);
const blobName = caseID + "/files/" + caseID + ".pdf";
console.log("blobName:", blobName);
const blockBlobClient = containerClient.getBlockBlobClient(blobName);
const uploadBlobResponse = await blockBlobClient.uploadStream(content);
const tags = {
containerid: containerName,
caseID: caseID,
blobType: "Appeal PDF",
};
//console.log("the tags:", tags);
const withTags = await blockBlobClient.setTags(tags);
const withMeta = await blockBlobClient.setMetadata(tags);
return formContent.pinswg_name;
};
export const deleteBlob = async (containerName, blobName) => { export const deleteBlob = async (containerName, blobName) => {
const creds = new DefaultAzureCredential(); const creds = new DefaultAzureCredential();
+1 -1
View File
@@ -111,7 +111,7 @@ export default function BuildRow(props) {
// mandatoryFieldsData // mandatoryFieldsData
// ); // );
console.log("build row datafieldname[0]", datafieldname[0]); //console.log("build row datafieldname[0]", datafieldname[0]);
if (datafieldname[0].value == "pinswg_fileUpload") { if (datafieldname[0].value == "pinswg_fileUpload") {
return ( return (
+1 -1
View File
@@ -86,7 +86,7 @@
"devDependencies": { "devDependencies": {
"eslint": "^8.6.0", "eslint": "^8.6.0",
"eslint-config-next": "^14.0.1", "eslint-config-next": "^14.0.1",
"eslint-plugin-jsdoc": "^40.0.1", "eslint-plugin-jsdoc": "^48.2.3",
"next-translate-plugin": "^2.6.2", "next-translate-plugin": "^2.6.2",
"prisma": "^5.0.0" "prisma": "^5.0.0"
} }
+19 -14
View File
@@ -82,6 +82,7 @@ import {
downloadProgressFile, downloadProgressFile,
getProgressBlobs, getProgressBlobs,
getTempCaseBlob, getTempCaseBlob,
createAppealPDFBlob,
} from "../../../actions/azurestorage"; } from "../../../actions/azurestorage";
import { hashAPIPath } from "../../../actions"; import { hashAPIPath } from "../../../actions";
@@ -168,26 +169,30 @@ export default async function handler(req, res) {
const pickListData = await getPickLists(appealType); const pickListData = await getPickLists(appealType);
ReactPDF.render( // ReactPDF.render(
<MyDocument docProps={blobProgress} pickListData={pickListData} />, // <MyDocument docProps={blobProgress} pickListData={pickListData} />,
`./tmp/${blobProgress.pinswg_name}.pdf` // process.cwd() + `/tmp/${blobProgress.pinswg_name}.pdf`
// );
// ReactPDF.renderToStream();
const renderedPDF = await ReactPDF.renderToStream(
<MyDocument docProps={blobProgress} pickListData={pickListData} />
); );
createAppealPDFBlob(renderedPDF, containerID, blobProgress.pinswg_name);
console.log( console.log(
"///////////////////////////////////\nfile created: " + "///////////////////////////////////\nfile created: " +
`./tmp/${blobProgress.pinswg_name}.pdf` + `/files/${blobProgress.pinswg_name}.pdf`,
"\n folder:" +
path.dirname(fs.realpathSync(__filename)) +
"\n" +
__dirname,
"\n/////////////////////////" "\n/////////////////////////"
); );
uploadPDFAppealFiles( // uploadPDFAppealFiles(
`./tmp/${appealBodyObj.pinswg_name}.pdf`, // process.cwd() + `/tmp/${appealBodyObj.pinswg_name}.pdf`,
containerID, // containerID,
appealBodyObj.pinswg_name // appealBodyObj.pinswg_name
); // );
// then remove from local folder // then remove from local folder
@@ -195,7 +200,7 @@ export default async function handler(req, res) {
return res.status(200).json({ return res.status(200).json({
data: "success", data: "success",
path: `./tmp/${blobProgress.pinswg_name}.pdf`, path: process.cwd() + `/tmp/${blobProgress.pinswg_name}.pdf`,
}); });
// } else { // } else {
// return res.status(400).json(); // return res.status(400).json();