Guest User

Untitled

a guest
Jan 18th, 2019
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.14 KB | None | 0 0
  1. var fonts = {
  2. Roboto: {
  3. normal: 'fonts/Roboto-Regular.ttf',
  4. bold: 'fonts/Roboto-Medium.ttf',
  5. italics: 'fonts/Roboto-Italic.ttf',
  6. bolditalics: 'fonts/Roboto-MediumItalic.ttf'
  7. }
  8. };
  9.  
  10. var PdfPrinter = require('pdfmake');
  11. var printer = new PdfPrinter(fonts);
  12. var fs = require('fs');
  13.  
  14. module.exports = {
  15.  
  16.  
  17. friendlyName: 'Get by month',
  18.  
  19.  
  20. description: '',
  21.  
  22.  
  23. inputs: {
  24.  
  25. year : {
  26. type : "number",
  27. required : false
  28. },
  29. bid : {
  30. type : "number",
  31. required : false
  32. },
  33. month : {
  34. type : "number",
  35. required : false
  36. }
  37. },
  38.  
  39.  
  40. exits: {
  41.  
  42. },
  43.  
  44.  
  45. fn: async function (inputs, exits) {
  46.  
  47.  
  48. this.res.type('application/pdf');
  49.  
  50.  
  51. //var REPORT_MONTH_SQL = 'call sp_report_getMonthly( $1, $2, $3, $4 )';
  52.  
  53. //var rawResult = await sails.sendNativeQuery(REPORT_MONTH_SQL, [ inputs.month||0, inputs.year||0, 0, inputs.bid||0 ]);
  54.  
  55. //var rptlst =rawResult.rows[0];
  56. var rptlst = [{"MonthName":"Jan","JoinDate":"01-01-2019","PaidAmount":"15","BalanceAmount":"10"},{"MonthName":"Feb","JoinDate":"01-02-2018","PaidAmount":"150","BalanceAmount":"30"}]
  57. var bodydata = [];
  58. bodydata.push(["S.No","Month Name", "Joined Date", "Paid Amount", "Balance Amount" ])
  59. if(rptlst.length>0){
  60. for(var i=0;i<rptlst.length;i++){
  61.  
  62. bodydata.push([i+1, rptlst[i].MonthName, rptlst[i].JoinDate, rptlst[i].PaidAmount, rptlst[i].BalanceAmount]);
  63. }
  64.  
  65. }
  66. var tabledata = {
  67. table: {
  68. headerRows: 1,
  69. widths: [ '*', 'auto', 100, '*' , 'auto'],
  70. body: bodydata,
  71.  
  72. }
  73. };
  74.  
  75. var docDefinition = {
  76. info: {
  77. title: 'Report',
  78. author: 'Thirumurthy',
  79. subject: 'Report',
  80. keywords: 'Report',
  81. },
  82. pageSize: 'A4',
  83. pageMargins: [ 40, 60, 40, 60 ],
  84. header: { text:'\n\n\nMonthy Report' , alignment: 'center'},
  85. footer: {
  86. columns: [
  87. 'Sample Report',
  88. { text: '2018', alignment: 'right' }
  89. ]
  90. },
  91. content: [
  92.  
  93.  
  94. tabledata
  95. ]
  96. };
  97.  
  98. var pdfDoc = printer.createPdfKitDocument(docDefinition);
  99. pdfDoc.pipe(this.res );
  100. pdfDoc.end();
  101.  
  102.  
  103.  
  104. }
  105.  
  106.  
  107. };
Add Comment
Please, Sign In to add comment