Advertisement
Guest User

Untitled

a guest
Feb 21st, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.53 KB | None | 0 0
  1. const xl = require('msexcel-builder-colorfix')
  2. let createxlsx = _callback => {
  3. filename = `bulk-cashback-exception-report-${Date.now()}.xlsx`
  4. filepath = '/tmp'
  5. let workbook = xl.createWorkbook(filepath, filename)
  6. let sheet = workbook.createSheet('Report', 50, 30000)
  7.  
  8. // Set Header
  9. sheet.set(1, 1, 'Sr No.')
  10. sheet.set(2, 1, 'Mobile')
  11. sheet.set(3, 1, 'Wallet Id')
  12. sheet.set(4, 1, 'Message')
  13.  
  14. _.each(exceptions, (data, index) => {
  15. let i = index + 2
  16.  
  17. sheet.set(1, i, index + 1)
  18. sheet.set(2, i, data.mobile)
  19. sheet.set(3, i, data.walletid)
  20. sheet.set(4, i, data.msg)
  21. })
  22.  
  23. workbook.save(err => {
  24. if (err) {
  25. workbook.cancel()
  26. _callback(null)
  27. } else _callback(null)
  28. })
  29. }
  30.  
  31. let updateawsconfig = _callback => {
  32. AWS.config.region = process.env.AWS_REGION
  33. let aws_config = {
  34. accessKeyId: process.env.AWS_ACCESS_KEY_ID,
  35. secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY
  36. }
  37. AWS.config.update(aws_config)
  38. _callback(null)
  39. }
  40.  
  41. let uploadtos3 = _callback => {
  42. fs.readFile(`${filepath}/${filename}`, (err, data) => {
  43. if (err) {
  44. clienterr = syserr = 'Error while reading file.'
  45. _callback(clienterr)
  46. } else {
  47. let s3 = new AWS.S3()
  48. let base64data = new Buffer(data, 'binary')
  49. let aws_data_dict = {
  50. Bucket: process.env.AWS_BUCKET_NAME,
  51. Key: `exceptions/${filename}`,
  52. Body: base64data,
  53. ContentType: filename.mimetype,
  54. ACL: process.env.AWS_ACL
  55. }
  56.  
  57. s3.putObject(aws_data_dict, (_err, data) => {
  58. if (_err) {
  59. clienterr = 'Error occoured while generating exception report. Please try again.'
  60. syserr = _err
  61. _callback(clienterr)
  62. } else {
  63. _callback(null)
  64. }
  65. })
  66. }
  67. })
  68. }
  69.  
  70. let sendEmail = _callback => {
  71. let emails = []
  72. if (makeremail) emails.push(makeremail)
  73. if (checkeremail) emails.push(checkeremail)
  74.  
  75. let data = {
  76. email: {
  77. to: emails.join(','),
  78. attachments: [{
  79. filename: filename,
  80. path: `${process.env.AWS_BUCKET_URL}/exceptions/${filename}`
  81. }]
  82. }
  83. }
  84.  
  85. let channelname = 'fpadmin.sendexceptionreport'
  86. log(`Called ${channelname}: ${JSON.stringify(data)}`)
  87. comms.publish(channelname, data)
  88. _callback(null)
  89. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement