私有部署自定义打印模板上传附件 word转换成PDF

分享 私有部署word转pdfword模板  收藏
16 / 1322

需求描述:
我们的单据制作的时候,有大量的打印模板需要用 PDF 格式在后续流程使用。 但是私有部署的自定义模板打印之后,只能是.docx 的 word 文档。 这里分享下如何讲生成的 word 文档转换成 pdf 然后储存在附件。

需要第三方 API 接口,我是用的接口:度慧文档转 PDF

实现过程:

  1. 先用自定义模板生成.docx 文件,并存入附件字段。
    image.png
  2. 开始转换。
    1. 先用 webhook 节点,获取该记录的详情。image.png。URL 需要去应用里面查看。image.png再去找到获取行记录的地址和提交格式。image.png然后 header 留空,body 用 raw 填写代码, 行记录 ID 用当前的记录 ID(测试的时候,你可以找个记录再新标签打开,image.png地址 https://xxxx.com/xxxx/xxx/xxx/row/xxxxxxxx, 这个 row 后面这个就是 ID 然后查看 ID)。image.png。然后用获取的 ID 去测试返回结构,image.png
      然后去 API 文档里面找到对应字段,image.png, 比如我的就是image.png。 然后找到返回的数据,image.png
    2. 获取 docx 文件的路径信息。 我们收到的 API 返回的记录详情里面,找到那个字段的 jason 值如上图。 然后用代码去解析出路径信息。 image.png var filepath =JSON.parse(input.filepath); var original_file_full_path = filepath[0].original_file_full_path; output = {original_file_full_path: original_file_full_path}; 获取到路径image.png。注意这里的路径是有验权的,不能直接传入 API 使用,需要先 encode 一下。
    3. 使用 JavaScript 代码块 encode 路径。 image.png var uri = input.url; var encoded = encodeURIComponent(uri); output = {output:encoded};
    4. 接入 API 转换成 PDF.image.png
    5. 用返回的 token 去回去生成的 PDF。image.png
    6. 将获取到的 PDF 更新到附件字段。image.png
      大功告成