36 lines
977 B
JavaScript
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");
|