浏览代码

fix consume api get excel

yazid138 3 年之前
父节点
当前提交
d2749deba8
共有 4 个文件被更改,包括 14 次插入16 次删除
  1. 6 12
      controller/graph.controller.js
  2. 3 1
      middleware/verifyToken.js
  3. 4 2
      routes/v1/graph.routes.js
  4. 1 1
      routes/v1/index.js

+ 6 - 12
controller/graph.controller.js

@@ -284,20 +284,14 @@ exports.excel = handleError(async (req, res) => {
 
   const buffer = excel.to_excel([
     {
-      SheetNames: 'delegasi',
+      SheetNames: 'Laporan Delegasi',
       data,
     },
   ])
 
-  const dokumen = await addDokumen({
-    originalname: req.params.nama_file,
-    buffer,
-    mimetype:
-      'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
-  })
-
-  return response.success(res, {
-    message: 'berhasil membuat exel',
-    data: dokumen,
-  })
+  res.header(
+    'Content-Type',
+    'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
+  )
+  return res.end(Buffer.from(buffer))
 })

+ 3 - 1
middleware/verifyToken.js

@@ -4,7 +4,9 @@ const response = require('../utils/responseHandler')
 
 module.exports = (req, res, next) => {
   const authHeader = req.headers.authorization
-  const token = authHeader && authHeader.split(' ')[1]
+  const token =
+    (req.params.token && req.params.token.split(' ')[1]) ||
+    (authHeader && authHeader.split(' ')[1])
 
   if (!token)
     return response.error(res, {

+ 4 - 2
routes/v1/graph.routes.js

@@ -1,7 +1,9 @@
 const router = require('express').Router()
 const graph = require('../../controller/graph.controller')
+const auth = require('../../middleware/verifyToken')
+const roleId = require('../../middleware/role')
 
-router.get('/', graph.laporan)
-router.get('/:nama_file', graph.excel)
+router.get('/', auth, roleId([2020, 2021]), graph.laporan)
+router.get('/:token/:nama_file', auth, roleId([2020, 2021]), graph.excel)
 
 module.exports = router

+ 1 - 1
routes/v1/index.js

@@ -18,6 +18,6 @@ router.use('/pemantauan', auth, require('./pemantauan.routes'))
 router.use('/pt', auth, require('./pt.routes'))
 router.use('/pelanggaran', auth, require('./pelanggaran.routes'))
 router.use('/lembaga', auth, roleId(2020), require('./lembaga.routes'))
-router.use('/graph', auth, roleId([2020, 2021]), require('./graph.routes'))
+router.use('/graph', require('./graph.routes'))
 
 module.exports = router