Stock Processing
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

86 lines
2.4 KiB

  1. var express = require('express');
  2. // const { PdfReader,Rule,displayValue,displayTable } = require("pdfreader");
  3. // var pdf_table_extractor = require("pdf-table-extractor");
  4. // const pdfTableExtractor = require('@florpor/pdf-table-extractor');
  5. // const { PdfDataParser } = require("pdf-data-parser");
  6. // //PDF parsed
  7. // function success(result)
  8. // {
  9. // console.log(JSON.stringify(result));
  10. // }
  11. // //Error
  12. // function error(err)
  13. // {
  14. // console.error('Error: ' + err);
  15. // }
  16. var router = express.Router();
  17. // const processItem = Rule.makeItemProcessor([
  18. // Rule.on(/^Hello \"(.*)\"$/)
  19. // .extractRegexpValues()
  20. // .then(displayValue),
  21. // Rule.on(/^Value\:/)
  22. // .parseNextItemValue()
  23. // .then(displayValue),
  24. // Rule.on(/^c1$/).parseTable(3).then(displayTable),
  25. // Rule.on(/^Values\:/)
  26. // .accumulateAfterHeading()
  27. // .then(displayValue),
  28. // ]);
  29. /* GET home page. */
  30. router.get('/', function(req, res, next) {
  31. res.render('index', { title: 'Express' });
  32. });
  33. router.post('/', async function(req,res,next){
  34. if(req.body.filePDF){
  35. // let parser = new PdfDataParser({url: req.body.filePDF});
  36. // var rows = await parser.parse();
  37. // console.log(rows);
  38. // pdfTableExtractor(req.body.filePDF).then(res => {
  39. // console.log(JSON.stringify(res));
  40. // });
  41. // pdf_table_extractor(req.body.filePDF,success,error);
  42. // tableExport('table1', req.body.filePDF, 'image');
  43. // var rows = {}; // indexed by y-position
  44. // function flushRows() {
  45. // Object.keys(rows) // => array of y-positions (type: float)
  46. // .sort((y1, y2) => parseFloat(y1) - parseFloat(y2)) // sort float positions
  47. // .forEach((y) => console.log((rows[y] || []).join("")));
  48. // rows = {}; // clear rows for next page
  49. // }
  50. // new PdfReader().parseFileItems(req.body.filePDF, (err, item) => {
  51. // // if (err) console.error(err);
  52. // // else processItem(item);
  53. // if (err) {
  54. // console.error({ err });
  55. // } else if (!item) {
  56. // flushRows();
  57. // console.log("END OF FILE");
  58. // } else if (item.page) {
  59. // flushRows(); // print the rows of the previous page
  60. // console.log("PAGE:", item.page);
  61. // } else if (item.text) {
  62. // // accumulate text items into rows object, per line
  63. // (rows[item.y] = rows[item.y] || []).push(item.text);
  64. // }
  65. // });
  66. }
  67. res.render('index', { title: 'Express OK!' });
  68. });
  69. module.exports = router;