SIMS icon indicating copy to clipboard operation
SIMS copied to clipboard

[NEEDS CONFIRMATION] Refactor scholastic standing process resulting from Bulk Withdrawal file

Open JasonCTang opened this issue 2 years ago • 4 comments

Describe the task Upload and submit the Bulk Withdrawal file. Validation are done in previous stories, https://app.zenhub.com/workspaces/student-information-management-system-5fce9df5aa1b45000e937014/issues/gh/bcgov/sims/2111 and https://app.zenhub.com/workspaces/student-information-management-system-5fce9df5aa1b45000e937014/issues/gh/bcgov/sims/2112 centralize the current manual scholastic standing process and use for Bulk Withdrawal file upload

*Reference Figma design https://www.figma.com/file/9Om2tzLAVEoMQrjmrH4fhu/MOD-SIMS?type=design&node-id=12566-163067&mode=design&t=LyYYv68zdOfihIDs-0

Additional Context

  • File Layout: https://app.zenhub.com/files/319429847/d246b205-1c6f-449d-b998-b8c75d8e08b2/download
  • File is based off all applications that have had an assessment since the last file was sent
  • The withdrawal file is a flat ASCII text file.
  • Workaround: Institutions that use a bulk withdrawal file still have the ability to enter withdrawals through Insitution Portal.
  • Process each record as if it were an manually entered withdrawal.
  • Code to be centralized: https://github.com/bcgov/SIMS/blob/db5059316977e3de66b83407e90fa9aa2400e296/sources/packages/backend/apps/api/src/services/student-scholastic-standings/student-scholastic-standings.service.ts#L132
  • Although this is an "integration" file, it currently still requires a manual process to be executed by the Institution user in SFAS where they have the opportunity to review the warnings prior to committing the changes to SFAS. Therefore, we are suggesting the same approach as the Bulk Offering Upload.
  • Each record are proceeded as if it were a manually entered withdrawal.
  • Only BC Public institutions are allowed to use and perform this upload.
  • Only Institution Administrator role are allowed to perform this upload.
  • Affected Student Application belongs to the institution uploading the file.
  • The application should be in "Completed" status and not archived to execute the withdrawal, if not, return it as an error with the message "The application is not in the completed status." or "The application is already archived and cannot be withdrawn."
  • Follow the same approach as bulk offering file upload, only process file if all records pass validation (all or nothing), display issues on the page, etc.
  • This is just a guess, but the expectation is that there would be no more than a couple thousand records in a single file.

Acceptance Criteria

  • [ ] Submit the bulk withdrawal file.
  • [ ] Create an assessment, but do not trigger it yet (as it may be added to a queue of assessments that will be triggered by a schedule).
  • [ ] Centralize and reuse the same scholastic logic in place. Review code as necessary to deal with bulk records.
  • [ ] Follow the same approach as bulk offering file upload, only process file if all records pass validation (all or nothing), display issues on the page, etc.
  • [ ] If the application number is not found, assume it is an SFAS application and just skip over it and continue processing the file.
  • [ ] Once the file is submitted to have the records persisted on DB, if no errors are present, the process should proceed and the DB should be updated. If any error is still present the process should be aborted. Execute all DB changes for all records using a single transaction, unless there is a technical issue.
  • [ ] Ensure Withdrawal restriction and notifications are working.
  • [ ] Ensure that the once an application is withdrew, the application is archived.
  • [ ] Create at least one basic E2E test to allow future development.

JasonCTang avatar Jul 13 '23 19:07 JasonCTang

@ninosamson This is work that Jason had been doing around the file and format of bulk withdrawal. Not sure of its status. Just flagging for debrief with Jason and then we can re assign.

Joshua-Lakusta avatar Dec 02 '24 22:12 Joshua-Lakusta

Changing to (Not so) - need all scholastic standing reporting changes in first to ensure we know what needs to be refactored into this feature.

CarlyCotton avatar Jul 21 '25 18:07 CarlyCotton

Need to test this. We need to create a few applications and then bulk withdraw them and see what happens. Analysis on the file and overall understanding of the function.

Joshua-Lakusta avatar Oct 30 '25 18:10 Joshua-Lakusta

Need to hide this feature on the institution account and then re triage this to enhancement. Review by institution SME advised very few institutions even touch this file and it is not a priority.

Joshua-Lakusta avatar Nov 25 '25 21:11 Joshua-Lakusta