Meliksahcaliskan / Learning-Management-System

This repository will be used for the Learning Management System project of the CopyWorks team under the CSE343 Software Engineering course.
GNU General Public License v2.0
1 stars 0 forks source link

additional requirements about assignments feature #1

Closed OnurhanTALAN closed 1 week ago

OnurhanTALAN commented 1 week ago

1-when an officer wants to create an assignment, the list of courses and classes should be retrieved from backend. Additionally, there should be another property called "document" as in case of the officer wants to upload a document related to assignment. !!or there might be another api call that returns the document that is uploaded when the officer created the assignment. Since getting all the files at once would cause api call to be slow. The document can be retrieved when the user expands the assignment header to see additional info. 2-AssignmentDTO should be modified so that it will also have "status", "subject", "grade", "document", and "uploadedDocument" properties. UploadedDocument is the document student uploads to the assignment before submitting. 3- there should be a way of letting backend know that a student wants to submit his assignment. it could be an api call with the properties "assignmentID" and "uploadedDocument". 4- there should be a way of letting backend know that a student want to UNsubmit his assignment.

Haruncakir commented 1 week ago

Update on API Enhancements

Here are the recent enhancements made to API:

  1. Endpoints for Classes and Courses: I have implemented endpoints for listing all classes and courses. You can now access this information via the following GET requests:

    • GET api/v1/classes
    • GET api/v1/courses

    Additionally, functionality for uploading and downloading documents related to assignments has been added. Please refer to the AssignmentDocument-related DTOs for further details.

  2. Grading and Document Management: The API now supports grading functionalities, as well as options for downloading and uploading documents. Please note that these features should be tested on mobile devices for compatibility.

  3. Assignment Status Updates: You can now update the status of an assignment using the following PATCH request:

    • PATCH /api/v1/assignments/{assignmentId}/status The status can be set to PENDING, SUBMITTED, or GRADED.
  4. Unsubmission of Assignments: I have introduced a new feature that allows assignments to be marked as unsubmitted. This can be done using the following PATCH request:

    • PATCH /api/v1/assignments/{assignmentId}/unsubmit

Additionally, please note that the AssignmentRequestDTO has been updated; it no longer requires the IDs of the class and course, but instead requires their respective names, as previously suggested.

Should you encounter any issues or have further questions, please do not hesitate to reach out. I am here to assist you. Best regards,