const spcoImportInfoService = require("../services/spcoImportInfoService"); const { sequelize } = require("../models"); // exports.getAllImportInfo = async (req, res) => { // try { // const importInfo = await spcoImportInfoService.getAllImportInfo(); // res.status(200).json(importInfo); // } catch (error) { // res // .status(500) // .json({ message: "Error fetching data", error: error.message }); // } // }; exports.getAllImportInfo = async (req, res) => { try { // Ambil parameter limit dan page dari request query, atau gunakan nilai default const limit = parseInt(req.query.limit) || 10; // Default 10 item per page const page = parseInt(req.query.page) || 1; // Default halaman 1 const offset = (page - 1) * limit; // Hitung offset untuk pagination // Panggil service dan tambahkan pagination const importInfo = await spcoImportInfoService.getAllImportInfo( limit, offset ); res.status(200).json({ data: importInfo.rows, // Data yang diambil currentPage: page, // Halaman saat ini totalItems: importInfo.count, // Total data totalPages: Math.ceil(importInfo.count / limit), // Total halaman }); } catch (error) { res .status(500) .json({ message: "Error fetching data", error: error.message }); } }; exports.testRawSQL = async (req, res) => { try { // Menjalankan SQL mentah untuk melihat data dari tabel const results = await sequelize.query( "SELECT * FROM SOA_ADM_DASHBOARD.SPCO_IMPORT_INFO", { type: sequelize.QueryTypes.SELECT, // Menentukan tipe query SELECT } ); res.status(200).json(results); // Mengirimkan hasil query ke client } catch (err) { res .status(500) .json({ message: "Error executing raw SQL", error: err.message }); } };