const db = require("../models"); const SubmissionDeadline = db.SubmissionDeadline; const logger = require("../services/logger"); // POST /api/submission-deadlines exports.updateDeadlineData = async (req, res) => { try { const { deadline_days_after_quarter_end, grace_periods_days_after_deadline, first_reminder_days_before_deadline, second_reminder_days_before_deadline, created_by, updated_by, } = req.body; // Try to find existing record (id=1) let existing = await SubmissionDeadline.findByPk(1); if (existing) { // Update await existing.update({ deadline_days_after_quarter_end, grace_periods_days_after_deadline, first_reminder_days_before_deadline, second_reminder_days_before_deadline, updated_at: new Date(), updated_by: req.body.updated_by || req.user.id, }); res.status(200).json({ status: "success", message: "Deadline updated successfully", data: existing }); } else { // Create new (set id = 1 manually) const newRecord = await SubmissionDeadline.create({ id: 1, deadline_days_after_quarter_end, grace_periods_days_after_deadline, first_reminder_days_before_deadline, second_reminder_days_before_deadline, created_at: new Date(), created_by: req.body.created_by || req.user.id, }); res.status(201).json({ status: "success", message: "Deadline created successfully", data: newRecord }); } } catch (err) { logger.error(err.message); res.status(500).json({ status: "failed", message: "Internal server error" }); } };