Skip to content

feat: add Verifikasi IPK bulk check and fix menu (ENH-011) - #116

Merged
ffooll-bit merged 1 commit into
mainfrom
feature/verifikasi-ipk
Aug 31, 2026
Merged

feat: add Verifikasi IPK bulk check and fix menu (ENH-011)#116
ffooll-bit merged 1 commit into
mainfrom
feature/verifikasi-ipk

Conversation

@ffooll-bit

Copy link
Copy Markdown
Owner

Summary

Adds a dedicated Verifikasi IPK menu (/verifikasi-ipk) to bulk-check and correct last-semester IPK values against an Excel file (records ENH-011, issue #115).

  • Upload an Excel (columns nim + ipk); the app compares each student's Excel IPK against their last active semester's IPK in Neo Feeder (getAktivitasKuliahMahasiswa, largest id_semester, a_periode_aktif=1).
  • Table shows NIM / name / Neo IPK / Excel IPK / semester / cocok-beda; a checkbox appears only for rows with a live active last semester.
  • Checked rows push the Excel IPK via UpdatePerkuliahanMahasiswa using a full record (the whole active last-semester row + id_pembiayaan resolved via GetListRiwayatPendidikanMahasiswa, with ipk overridden) - Neo Feeder rejects partial records, which is why the earlier attempt reported failures.
  • Per-row results (success/failure with the Neo Feeder error message) are shown on a summary page (results), mirroring the graduation guidance page.
  • Uses a separate cache store + resume cookie so it never clobbers the graduation WizardProgress.

Non-mutating Playwright verification + a single-NIM live apply test (full restore) confirmed the flow; local CI green (php -l, php-cs-fixer, phpunit 36/36).

Checklist

  • Implementation on a branch from main with a single atomic conventional commit
  • Local CI: php -l, php-cs-fixer, phpunit all green
  • Live verification (non-mutating paths + one approved apply on a single NIM, restored)

Notes

  • In-scope files only; ARCHITECTURE.md / STRUCTURE.md intentionally left unstaged.
  • apply() uses set_time_limit(0) for large batches (same ceiling as graduation finish()).

Fixes #115

@ffooll-bit
ffooll-bit merged commit c2bb630 into main Aug 31, 2026
1 check passed
@ffooll-bit
ffooll-bit deleted the feature/verifikasi-ipk branch August 31, 2026 07:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Graduation wizard: bulk verify and fix last-semester IPK via Excel

1 participant