fcsc_ipi_backend/app/controllers/export.controller.js

36 lines
977 B
JavaScript

const annexExportService = require("../services/annexExport.service");
const logger = require("../services/logger");
const handleExport = async (req, res, type) => {
try {
const { years, status, emirate_id, establishment_id } = req.query;
await annexExportService.exportAnnex(res, {
type,
years,
statuses: status,
emirate_id,
establishment_id,
});
} catch (err) {
logger.error(err.message);
logger.error(`Stack trace: ${err.stack}`);
const statusCode = err.statusCode || 500;
if (!res.headersSent) {
return res.status(statusCode).json({
status: "failed",
message: err.message || "Internal server error",
});
}
}
};
exports.exportAnnexII = (req, res) => handleExport(req, res, "annex_ii");
exports.exportAnnexIIIQuantity = (req, res) =>
handleExport(req, res, "annex_iii_quantity");
exports.exportAnnexIIIValues = (req, res) =>
handleExport(req, res, "annex_iii_values");