Add re-queue findings from rejected FP submissions
New feature: users can re-queue findings from a rejected FP submission back into the Ivanti todo queue under a different workflow type (FP, Archer, CARD, GRANITE, or DECOM). Primary use case is when an FP is rejected with a recommendation to submit an Archer risk acceptance. Backend: - New migration: add requeued_at column to ivanti_fp_submissions - New endpoint: POST /api/ivanti/fp-workflow/submissions/:id/requeue - Validates workflow_type and vendor (required for FP/Archer/DECOM) - Creates new pending queue items from original finding data - Marks submission as requeued (prevents double re-queue) - Audit logs the action Frontend (ReportingPage.js): - RequeueConfirmDialog component with workflow type selector and vendor input - Re-queue Findings button in Edit FP Modal header (rejected submissions only) - Already re-queued label when submission.requeued_at is set - Success notification on completion
This commit is contained in:
17
backend/migrations/add_fp_submissions_requeued_at.js
Normal file
17
backend/migrations/add_fp_submissions_requeued_at.js
Normal file
@@ -0,0 +1,17 @@
|
||||
// Migration: Add requeued_at column to ivanti_fp_submissions table
|
||||
const pool = require('../db');
|
||||
|
||||
async function run() {
|
||||
console.log('Starting FP submissions requeued_at migration...');
|
||||
try {
|
||||
await pool.query(`ALTER TABLE ivanti_fp_submissions ADD COLUMN IF NOT EXISTS requeued_at TIMESTAMPTZ DEFAULT NULL`);
|
||||
console.log('✓ requeued_at column added (or already exists)');
|
||||
} catch (err) {
|
||||
console.error('Error adding requeued_at column:', err.message);
|
||||
process.exit(1);
|
||||
}
|
||||
console.log('Migration complete.');
|
||||
process.exit(0);
|
||||
}
|
||||
|
||||
run();
|
||||
Reference in New Issue
Block a user