Guys, hello everyone!!!!
Firstly, I'm not a programmer, sometimes when I have a project, I try to "program" a little, in the end, I really like it. But my area is networks, anyway. Come on.
Everything I created so far was with the help of this forum, I researched practically everything here to be able to do this project.
So I will explain it now.
I want to fill out a form and host the images via dropzone, then send this data to pdf..
The system is already doing almost everything, I fill out the form, host the images via dropzone, I can save them all inside a folder and I can create a pdf file with the data, so I can't send the images inside the PDF... .. I wanted an idea of how I can do this, could someone give me the way????
Inside the template there is an html form, the data is being received by {{{payload}}}... I would like to send the images into the "visit information in images" form.. how would that be?? I already thank everyone on the forum for making me get here with my project!! Thank you very much, below I will send my code. Thanks!!!
[
{
"id": "7e86bbcb4d2deeb3",
"type": "tab",
"label": "Flow 19",
"disabled": false,
"info": "",
"env": []
},
{
"id": "cf3c5eef33930225",
"type": "ui_template",
"z": "7e86bbcb4d2deeb3",
"group": "a4f1b6144f9c6973",
"name": "Pagina",
"order": 1,
"width": 6,
"height": 15,
"format": "<script src=\"https://unpkg.com/dropzone@5/dist/min/dropzone.min.js\"></script>\n<link rel=\"stylesheet\" href=\"https://unpkg.com/dropzone@5/dist/min/dropzone.min.css\" type=\"text/css\" />\n\n\n<script src=\"https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js\">\n</script>\n\n<script src=\"//cdnjs.cloudflare.com/ajax/libs/angular-material-icons/0.7.1/angular-material-icons.min.js\"></script>\n\n\n<script>\n function auto_height(elem) { /* javascript */\nelem.style.height = \"1px\";\nelem.style.height = (elem.scrollHeight)+\"px\";\n}\n\n</script>\n\n\n\n<script>\n //dropzone config\n\nvar adPhotosDropzone = new Dropzone(\"#enviadropzone\", {\n autoProcessQueue: false,\n maxFilesize: 8,\n addRemoveLinks: true,\n //previewsContainer: null,\n //clickable: false,\n parallelUploads: 50,\n dictDefaultMessage: \"<h1>Adicione as fotos aqui</h1>\"\n\n});\n\n</script>\n\n\n\n\n<! Css para text >\n\n\n<style>\n.auto_height {\n/* CSS */\nwidth: 65%;\n\n\n}\n/*css para input text*/\n.w3-input{padding:8px;display:block;border:none;border-bottom:1px solid #ccc;width:50%}\n\n/* css para o dropdown */\n.w3-input2{padding:8px;display:block;border:none;border-bottom:1px solid #ccc;width:70%}\n\n.w3-container,.w3-panel{padding:0.01em 16px}.w3-panel{margin-top:16px;margin-bottom:16px}\n\n\n/*css para text e textarea*/\n\ntextarea:focus, input[type=text]:focus, select:focus, datetime:focus {\nbackground-color: lightblue;\n}\n\n\n/*css para select */\n\n/* select {\nwidth: 70%;\npadding: 16px 20px;\nborder: none;\nborder-radius: 4px;\nbackground-color: #f1f1f1;\n\n\n\n}\n*/\n\n</style>\n\n\n\n \n\n<script type=\"text/javascript\">\n theScope = scope;\n (function(scope) {\n \n } );\n \n (scope);\n\n\n // if (adPhotosDropzone.getAcceptedFiles().length > 0) {\n\n $(document).ready(function() {\n \n //$(\"#form1\").on(\"submit\", function(){ \n $(\"#form1\").on(\"submit\", function(event) {\n\t\t//$('form').on('submit', function(event) {\n if (adPhotosDropzone.getAcceptedFiles().length > 0) {\n\n\t\t\tevent.preventDefault();\n\t\t\t\n\t\t\t// It returns a array of object\n\t\t\tlet userinfo = $(this).serializeArray();\n\t\t\tlet user = {};\n\t\t\tuserinfo.forEach((value) => {\n\t\t\t\t\n\t\t\t\t// Dynamically create an object\n user[value.name] = value.value;\n\t\t\t});\n\t\t\tlet url = \"envia_tudo\";\n\t\t\t$.ajax({\n\t\t\t\tmethod: \"POST\",\n\t\t\t\turl: url,\n\t\t\t\tdata: user\n\t\t\t}).done(function(msg) {\n //dropzone//\n \n // enable auto process queue after uploading started\n adPhotosDropzone.options.autoProcessQueue = true;\n // queue processing\n adPhotosDropzone.processQueue();\n \n adPhotosDropzone.on(\"queuecomplete\", function() {\n adPhotosDropzone.options.autoProcessQueue = false;\n //alert(\"Eu sou um alert!\");\n adPhotosDropzone.removeAllFiles();\n })\n\t\t\t\t\n \n //apaga dados digitados;\n document.getElementById(\"form1\").reset();\n\n\n\t\t\t\t// When the request is successful\n theScope.send({payload: 'Fotos e dados enviado com sucesso!'});\n \n\n \n\n\n\t\t\t}).fail(function(err, textstatus, error) {\n theScope.send({payload: 'ERRO, REFAÇA POR FAVOR!'});\t\t\t});\n }\n\n\n else{\n theScope.send({payload: 'Por favor, adicione foto!'});\n }\n \n\t\t});\n\n \n\t});\n\n \n\n // else{\n\n // alert(\"Eu sou um alert!\");\n\n\n </script>\n\n\n <form id=\"form1\" name=\"form1\" class=\"form1\"> \n \n <p>\n <label>Cliente*</label> <br>\n <select class=\"w3-input2\" id=\"cliente\" name=\"cliente\" required>\n <option value=\"\">--Por favor, selecione cliente--</option>\n <option value=\"clientecristal\">Cristal Tower</option>\n <option value=\"clientebritannia\">Condominio Britannia</option>\n <option value=\"clientemillennium\">Millennium</option>\n </select>\n \n </p>\n\n<br>\n \n <p>\n <label>Nome cliente*</label>\n <input required=\"required\" class=\"w3-input\" type=\"text\" name=\"nomecliente\" id=\"nomecliente\">\n </p>\n <br>\n <p>\n <label>Data e hora*</label>\n <input type=\"datetime-local\" class=\"w3-input\" id=\"datahora\" name=\"datahora\" required>\n </p>\n <br>\n <p>\n <label>Qual serviço?*</label> <br>\n <select class=\"w3-input2\" id=\"tiposervico\" name=\"tiposervico\" required> \n <option value=\"\">--Por favor, selecione serviço--</option>\n <option value=\"visitapreventiva\">Manutenção preventiva</option>\n <option value=\"visitatecnica\">Visita tecnica</option>\n \n </select>\n\n </p>\n <br>\n \n\n\n \n <label>Descreva serviço realizado*</label>\n <textarea rows=\"4\" required=\"required\" name=\"descricaoservico\" class=\"auto_height\" id=\"descricaoservico\" oninput=\"auto_height(this)\"></textarea>\n \n\n <br>\n \n\n </form>\n\n<!--\n <form action=\"/envia-dropzone\" class=\"dropzone\" enctype=\"multipart/form-data\" id=\"enviadropzone\">\n \n \n \n </form>\n-->\n\n\n<br>\n\n\n<!-- botão fora do form, apenas colode id no form e atribua no button -->\n\n\n<div style=\"text-align:center;\">\n<md-button form=\"form1\" class=\"enviar\" type=\"submit\"style=\"width: 250px; height:40px;\">Enviar</md-button>\n</md-button> \n</div> \n",
"storeOutMessages": true,
"fwdInMessages": true,
"resendOnRefresh": true,
"templateScope": "local",
"className": "",
"x": 520,
"y": 220,
"wires": [
[
"bc56db7fb4df2a95"
]
]
},
{
"id": "e86ddc32e2b3b383",
"type": "change",
"z": "7e86bbcb4d2deeb3",
"d": true,
"name": "",
"rules": [
{
"t": "set",
"p": "payload.name",
"pt": "msg",
"to": "req.body.name",
"tot": "msg"
},
{
"t": "set",
"p": "payload.name1",
"pt": "msg",
"to": "req.body.name1",
"tot": "msg"
},
{
"t": "set",
"p": "payload.name2",
"pt": "msg",
"to": "req.body.name2",
"tot": "msg"
},
{
"t": "set",
"p": "payload.name3",
"pt": "msg",
"to": "req.body.name3",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 500,
"y": 480,
"wires": [
[
"0e24ab5ce5f8a69d",
"15472180b415a8e5"
]
]
},
{
"id": "7090c4cb7f7ad1f6",
"type": "http in",
"z": "7e86bbcb4d2deeb3",
"name": "",
"url": "/ui/envia_tudo",
"method": "post",
"upload": false,
"swaggerDoc": "",
"x": 250,
"y": 460,
"wires": [
[
"c25383bbb5fa75c4",
"e86ddc32e2b3b383",
"f9bfad899f06889a",
"f384436723facb42",
"15472180b415a8e5"
]
]
},
{
"id": "c25383bbb5fa75c4",
"type": "template",
"z": "7e86bbcb4d2deeb3",
"d": true,
"name": "page",
"field": "payload",
"fieldType": "msg",
"format": "handlebars",
"syntax": "mustache",
"template": " {{ payload.name }}\n {{ payload.name2 }}\n",
"x": 190,
"y": 240,
"wires": [
[]
]
},
{
"id": "0e24ab5ce5f8a69d",
"type": "function",
"z": "7e86bbcb4d2deeb3",
"d": true,
"name": "function 6",
"func": "msg.payload.name = msg.req.body.name;\nmsg.payload.name1 = msg.req.body.name1;\nmsg.payload.name2 = msg.req.body.name2;\nmsg.payload.name3 = msg.req.body.name3;\n\n\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 720,
"y": 460,
"wires": [
[]
]
},
{
"id": "f9bfad899f06889a",
"type": "debug",
"z": "7e86bbcb4d2deeb3",
"name": "debug 17",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1080,
"y": 380,
"wires": []
},
{
"id": "15472180b415a8e5",
"type": "http response",
"z": "7e86bbcb4d2deeb3",
"name": "",
"statusCode": "",
"headers": {},
"x": 770,
"y": 320,
"wires": []
},
{
"id": "0ff01ef261a5eae7",
"type": "ui_template",
"z": "7e86bbcb4d2deeb3",
"group": "a4f1b6144f9c6973",
"name": "Dropzone",
"order": 2,
"width": 6,
"height": 15,
"format": "<script src=\"https://unpkg.com/dropzone@5/dist/min/dropzone.min.js\"></script>\n<link rel=\"stylesheet\" href=\"https://unpkg.com/dropzone@5/dist/min/dropzone.min.css\" type=\"text/css\" />\n\n\n<script>\n var adPhotosDropzone = new Dropzone(\"#vai1\", {\n autoProcessQueue: false,\n maxFilesize: 8,\n addRemoveLinks: true,\n //previewsContainer: null,\n //clickable: false,\n parallelUploads: 50,\n dictDefaultMessage: \"<h1>Adicione as fotos aqui</h1>\"\n\n});\n\n</script>\n\n<form action=\"/upload-target\" class=\"dropzone\" enctype=\"multipart/form-data\" id=\"vai1\">\n\n</form>",
"storeOutMessages": true,
"fwdInMessages": true,
"resendOnRefresh": true,
"templateScope": "local",
"className": "",
"x": 360,
"y": 140,
"wires": [
[]
]
},
{
"id": "b3b4b604854423a6",
"type": "ui_toast",
"z": "7e86bbcb4d2deeb3",
"position": "bottom right",
"displayTime": "3",
"highlight": "blue",
"sendall": true,
"outputs": 0,
"ok": "OK",
"cancel": "",
"raw": true,
"className": "",
"topic": "",
"name": "messagemaviso",
"x": 840,
"y": 120,
"wires": []
},
{
"id": "d3a50064fbc9be26",
"type": "ui_table",
"z": "7e86bbcb4d2deeb3",
"d": true,
"group": "537e5345ad48cc9b",
"name": "",
"order": 1,
"width": 6,
"height": 2,
"columns": [],
"outputs": 0,
"cts": false,
"x": 1030,
"y": 220,
"wires": []
},
{
"id": "fae96fa02794fdf4",
"type": "http in",
"z": "7e86bbcb4d2deeb3",
"name": "",
"url": "/envia-dropzone",
"method": "post",
"upload": true,
"swaggerDoc": "",
"x": 260,
"y": 560,
"wires": [
[
"d070036a3e379a83"
]
]
},
{
"id": "d070036a3e379a83",
"type": "change",
"z": "7e86bbcb4d2deeb3",
"name": "",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "req.files[0].buffer",
"tot": "msg"
},
{
"t": "set",
"p": "filename",
"pt": "msg",
"to": "req.files[0].originalname",
"tot": "msg"
},
{
"t": "set",
"p": "encoding",
"pt": "msg",
"to": "req.files[0].encoding",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 480,
"y": 560,
"wires": [
[
"feb2b318ca8b1f85"
]
]
},
{
"id": "c220485f08a8fdfd",
"type": "function",
"z": "7e86bbcb4d2deeb3",
"name": "atribui e coloca destino",
"func": "//var now = new Date().toLocaleString(\"sv-SE\");\n\n//cria as variaveis de dia, hora, minutos e segundos\nvar now = new Date();\nvar yyyy = now.getFullYear();\nvar mm = now.getMonth() < 9 ? \"0\" + (now.getMonth() + 1) : (now.getMonth() + 1); // getMonth() is zero-based\nvar dd = now.getDate() < 10 ? \"0\" + now.getDate() : now.getDate();\nvar hh = now.getHours() < 10 ? \"0\" + now.getHours() : now.getHours();\nvar mmm = now.getMinutes() < 10 ? \"0\" + now.getMinutes() : now.getMinutes();\nvar ss = now.getSeconds() < 10 ? \"0\" + now.getSeconds() : now.getSeconds();\n\nmsg.payload = msg.req.files[0].buffer;\n//msg.filename = 'c:/tmp/upload/' + msg.req.files[0].originalname;\n//msg.filename = 'c:/tmp/upload/' + \"Dia\"+dd+mm+yyyy+\"Minutos\"+hh+mmm+ss+\".jpg\";\nmsg.filename = 'c:/'+dd+mm+yyyy+'/upload/' + \"Dia\" + dd + mm + yyyy + \"Minutos\" + hh + mmm + ss + \".jpg\";\nmsg.encoding = msg.req.files[0].encoding;\n\nreturn msg;\n//return { payload: now };\n\n//msg.req.files[0].originalname;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 740,
"y": 640,
"wires": [
[
"8f030abcc2530971"
]
]
},
{
"id": "8f030abcc2530971",
"type": "file",
"z": "7e86bbcb4d2deeb3",
"name": "",
"filename": "filename",
"filenameType": "msg",
"appendNewline": false,
"createDir": true,
"overwriteFile": "false",
"encoding": "none",
"x": 940,
"y": 560,
"wires": [
[
"f6e9d24a5f9fa4ce",
"b557d81b805de69b"
]
]
},
{
"id": "feb2b318ca8b1f85",
"type": "delay",
"z": "7e86bbcb4d2deeb3",
"name": "",
"pauseType": "rate",
"timeout": "2",
"timeoutUnits": "seconds",
"rate": "1",
"nbRateUnits": "2",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": true,
"outputs": 1,
"x": 680,
"y": 560,
"wires": [
[
"c220485f08a8fdfd"
]
]
},
{
"id": "6544375fc35f6f8f",
"type": "inject",
"z": "7e86bbcb4d2deeb3",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "",
"payloadType": "date",
"x": 500,
"y": 640,
"wires": [
[
"feb2b318ca8b1f85"
]
]
},
{
"id": "b557d81b805de69b",
"type": "debug",
"z": "7e86bbcb4d2deeb3",
"name": "debug 19",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1180,
"y": 460,
"wires": []
},
{
"id": "f6e9d24a5f9fa4ce",
"type": "http response",
"z": "7e86bbcb4d2deeb3",
"name": "",
"statusCode": "",
"headers": {},
"x": 1210,
"y": 560,
"wires": []
},
{
"id": "0aac482c4a05b4be",
"type": "comment",
"z": "7e86bbcb4d2deeb3",
"name": "Post dropzone",
"info": "",
"x": 250,
"y": 520,
"wires": []
},
{
"id": "100fcdbc4f130842",
"type": "comment",
"z": "7e86bbcb4d2deeb3",
"name": "Post form",
"info": "",
"x": 240,
"y": 420,
"wires": []
},
{
"id": "bc56db7fb4df2a95",
"type": "switch",
"z": "7e86bbcb4d2deeb3",
"name": "",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "ERRO, REFAÇA POR FAVOR!",
"vt": "str"
},
{
"t": "eq",
"v": "Por favor, adicione foto!",
"vt": "str"
},
{
"t": "eq",
"v": "Fotos e dados enviado com sucesso!",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 3,
"x": 650,
"y": 160,
"wires": [
[
"b3b4b604854423a6"
],
[
"b3b4b604854423a6"
],
[
"2bdd91d72351f938"
]
]
},
{
"id": "2bdd91d72351f938",
"type": "ui_toast",
"z": "7e86bbcb4d2deeb3",
"position": "dialog",
"displayTime": "3",
"highlight": "",
"sendall": true,
"outputs": 1,
"ok": "OK",
"cancel": "",
"raw": false,
"className": "",
"topic": "",
"name": "postconcluido",
"x": 840,
"y": 180,
"wires": [
[]
]
},
{
"id": "f384436723facb42",
"type": "template",
"z": "7e86bbcb4d2deeb3",
"name": "convert html para pdf",
"field": "payload",
"fieldType": "msg",
"format": "handlebars",
"syntax": "mustache",
"template": "<style>\n\n.narrow {\n\n}\n\n.normal {\nword-break: normal;\n}\n\n.breakAll {\nword-break: break-all;\n}\n\n.keepAll {\nword-break: keep-all;\n}\n\n.breakWord {\nword-break: break-word;\n}\n\n\n</style>\n\n<div id=\"pageHeader\"><br />\n<div class=\"prow\" style=\"padding-left: 400px;\">\n<table style=\"border-collapse: collapse; width: 97.3568%; height: 76px;\" border=\"0\">\n<tbody>\n<tr style=\"height: 23px;\">\n<td style=\"width: 100%; text-align: center; height: 23px;\"><span style=\"font-size: 14pt;\"><strong>EMPRESA LTDDA</strong></span></td>\n</tr>\n<tr style=\"height: 23px;\">\n<td style=\"width: 100%; text-align: center; height: 23px;\"><span style=\"font-size: 14pt;\"><strong>CNPJ</strong></span></td>\n</tr>\n<tr style=\"height: 23px;\">\n<td style=\"width: 100%; height: 23px; text-align: center;\"><strong><span style=\"font-size: 14pt;\">(22) 8888-2000 / (95)</span><span style=\"font-size: 14pt;\"> 98152-2032</span></strong></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"prow\" style=\"padding-left: 400px; text-align: center;\"> </div>\n</div>\n<div class=\"prow\">\n<div class=\"prow\"> </div>\n<div class=\"prow\"> </div>\n<div class=\"prow\"> </div>\n<table style=\"border-collapse: collapse; width: 99.4145%; height: 47px; background-color: #3598db; border-color: #000000;\" border=\"1\">\n<tbody>\n<tr style=\"height: 47px;\">\n<td style=\"width: 100%; height: 47px; text-align: center;\"><strong>INFORMAÇÕES DO CLIENTE</strong></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"prow\" style=\"text-align: center;\">\n<table style=\"border-collapse: collapse; width: 99.4145%; height: 42.25px;\" border=\"1\">\n<tbody>\n<tr style=\"height: 21px;\">\n<td style=\"width: 11.9095%; height: 21px; text-align: left;\"><strong><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\"> Empresa:</span></span></strong></td>\n<td style=\"width: 52.4785%; text-align: right; height: 21px;\">\n<div class=\"prow\" style=\"text-align: left; padding-left: 40px;\"><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\">{{{payload.cliente}}}</span></span></span></span></div>\n</td>\n<td style=\"width: 11.0851%; text-align: right; height: 21px;\">\n<div class=\"prow\" style=\"text-align: left;\"><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\"><strong> CPF/CNPJ:</strong></span></span></span></span></div>\n</td>\n<td style=\"width: 24.4108%; text-align: right; height: 21px;\">\n<div class=\"prow\" style=\"text-align: left; padding-left: 40px;\">79.111.444/0005-48</div>\n</td>\n</tr>\n<tr style=\"height: 21.25px;\">\n<td style=\"width: 11.9095%; height: 21.25px; text-align: left;\"><strong> Email:</strong></td>\n<td style=\"width: 52.4785%; text-align: left; height: 21.25px; padding-left: 40px;\"><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\">@</span></span></td>\n<td style=\"width: 11.0851%; height: 21.25px; text-align: left;\"><strong><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\"> Telefone:</span></span></strong></td>\n<td style=\"width: 24.4108%; height: 21.25px; text-align: left; padding-left: 40px;\">98</td>\n</tr>\n</tbody>\n</table>\n</div>\n<p style=\"text-align: left;\"> </p>\n<table style=\"border-collapse: collapse; width: 99.4145%; height: 41px; background-color: #3598db; border-color: #000000;\" border=\"1\">\n<tbody>\n<tr style=\"height: 41px;\">\n<td style=\"width: 100%; text-align: center; height: 41px;\"><span style=\"font-size: 12pt;\"><strong>INFORMAÇÕES DAS ATIVIDADES</strong></span></td>\n</tr>\n</tbody>\n</table>\n<div class=\"prow\">\n<table style=\"border-collapse: collapse; width: 99.4145%;\" border=\"1\">\n<tbody>\n<tr>\n<td style=\"width: 17.8069%;\"><strong> Nome cliente:</strong></td>\n<td style=\"width: 32.194%; padding-left: 40px;\">{{{payload.nomecliente}}}</td>\n<td style=\"width: 16.2733%;\"><strong> Data da visita:</strong></td>\n<td style=\"width: 33.7276%; padding-left: 40px;\">{{{payload.datahora}}}</td>\n</tr>\n</tbody>\n</table>\n<div class=\"prow\">\n<table style=\"border-collapse: collapse; width: 99.4145%;\" border=\"1\">\n<tbody>\n<tr style=\"height: 19px;\">\n<td style=\"width: 17.8069%; height: 19px;\"><strong> Tipo da visita:</strong></td>\n<td style=\"width: 82.1949%; height: 19px; padding-left: 40px;\">{{{payload.tiposervico}}}</td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"prow\">\n<div class=\"prow\">\n<table style=\"border-collapse: collapse; width: 99.4145%; height: 142px;\" border=\"1\">\n<tbody>\n<tr style=\"height: 142px;\">\n<td style=\"width: 17.8069%; height: 142px;\"><strong><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\"> Serviço realizado:</span></span></strong></td>\n<td style=\"width: 82.1949%; vertical-align: top; height: 142px;\">\n<div class=\"breakAll narrow\" style=\"line-height: 1;\">{{{payload.descricaoservico}}}</div>\n</td>\n</tr>\n</tbody>\n</table>\n<div class=\"prow\"> </div>\n<div class=\"prow\"> </div>\n<div class=\"prow\">\n<div class=\"prow\">\n<table style=\"border-collapse: collapse; width: 99.4145%; height: 37px; background-color: #3598db; border-color: #000000;\" border=\"1\">\n<tbody>\n<tr style=\"height: 37px;\">\n<td style=\"width: 100%; text-align: center; height: 37px;\"><strong>INFORMAÇÕES DA VISITA EM IMAGENS</strong></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"prow\">\n<table style=\"border-collapse: collapse; width: 99.4145%; height: 45px;\" border=\"1\">\n<tbody>\n<tr>\n<td style=\"width: 100%;\">IMAGENS</td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n</div>\n</div>",
"output": "str",
"x": 340,
"y": 720,
"wires": [
[
"302b13a951f1b717"
]
]
},
{
"id": "302b13a951f1b717",
"type": "HTML-PDF",
"z": "7e86bbcb4d2deeb3",
"name": "HTML-PDF",
"output": "buffer",
"x": 590,
"y": 720,
"wires": [
[
"0d4aab954b947d1c"
]
]
},
{
"id": "0d4aab954b947d1c",
"type": "function",
"z": "7e86bbcb4d2deeb3",
"name": "",
"func": "msg.filename = \"C://NODE-RED2//SAIDA//Fatura\" + msg.fatura + \".PDF\"\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 800,
"y": 720,
"wires": [
[
"f3ddbf32ad268dfc"
]
]
},
{
"id": "f3ddbf32ad268dfc",
"type": "file",
"z": "7e86bbcb4d2deeb3",
"name": "file out",
"filename": "filename",
"filenameType": "msg",
"appendNewline": false,
"createDir": true,
"overwriteFile": "true",
"encoding": "none",
"x": 990,
"y": 720,
"wires": [
[
"6633ae15e29e7129"
]
]
},
{
"id": "6633ae15e29e7129",
"type": "debug",
"z": "7e86bbcb4d2deeb3",
"name": "debug 20",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1140,
"y": 720,
"wires": []
},
{
"id": "a4f1b6144f9c6973",
"type": "ui_group",
"name": "Sistema",
"tab": "be2deaa47b8a668f",
"order": 1,
"disp": true,
"width": "12",
"collapse": false,
"className": ""
},
{
"id": "537e5345ad48cc9b",
"type": "ui_group",
"name": "table",
"tab": "be2deaa47b8a668f",
"order": 2,
"disp": true,
"width": "6",
"collapse": false,
"className": ""
},
{
"id": "be2deaa47b8a668f",
"type": "ui_tab",
"name": "Esse OK",
"icon": "dashboard",
"disabled": false,
"hidden": false
}
]