Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sprint 4 #162

Merged
merged 33 commits into from
Jan 23, 2019
Merged

Sprint 4 #162

merged 33 commits into from
Jan 23, 2019

Conversation

sjrumsby
Copy link
Contributor

No description provided.

ChrisDMac and others added 30 commits January 3, 2019 11:28
Merging Room booking Feature Branch
* Final changes for new Snowplow events, states, flows and contexts
* Updated DB for additional Snowplow events
CSRs require the ability to update existing exams records in the exam inventory table. This comes in the form of two actions listed as dropdown items in the exam inventory table now. The first action (Edit Exam) shows the user basic information that is displayed in the table, and allows the user to edit said data, then submit the data to the database. The second action (Return Exam) allows the user to enter or edit information with respect to the exam being returned (an ind field and tracking information). Both actions upon submit display a relevent success or failure message depending on the return method response.
Make Updates to an Existing Exam Record
Created a component edit-booking-modal to handle both exam and other type events.  Supports all editable fields for a booking.  Dynamically updates the calendar in background and then posts changes on submit or reverts on cancel.  Also revamped layout to eliminate the need for the windowResize listener to calculate the viewport size.  All layout-related divs now styled with "position: relative" or "position: fixed" so browser can manage this task automatically.  This was necessary for changes introduced to SchedulingIndicator - component now appears at bottom of screen with footer.
During the last demo, it was found out that the bootstrap data for exam types had a typo in it. For consistency purposes during live demos, this data was amended to follow an XML file containing actual exam type values provided to Olivewood from John McColl.
Created edit-booking component and related changes
This is requried by LIAISON CSRs who enter group exams on behalf of all offices. No tests have been developed at this point, and the authorization on the call has been left out.
Room Bookings users require easy access to editing information with respect to a single exam. With this being said, once an exam is booked, the booking itself might need to be changed. The exam inventory table presents an easy way for users to filter through all exams, and the actions field presents a way for the user to link directly to a particular exams booking quickly. Based on logic if a booking for an exam is present, a dropdown in the actions tab will show up called "Update Booking", and once clicked, the user is taken directly to the DAY view of the booking calendar where this exam is currently booked.

Future enhancements to this may include the user being brought directly to the edit booking modal to avoid confusion.
Link Single Exam to Booking Feature
When logging in, if the username does not exist in the Q System database, the call to /csrs/me will 500, leading to a poor front end experience. To clean this up, changes were made such that if the username did not exist /csrs/me returned a 404 response. The frontend had an bootstrap alert added such that if the username name did not exist BUT the user was logged in, the user would be warned saying to contact an administrator. The final step was to provisioni csr usernames in the Database for Sean, Scott, Adam, Chris and Karim for future use.
During development of the capture group exam component of the exams feature, it was found out that the exams model/schema required an offsite location field to accomodate offices in the greater vancouver area. This field was added to both the exams model and schema, and tested in postman to make sure that the exams GET endpoint worked.
During end of sprint code clean-up, it was found out that the examsOnLogin action in the index.js file was actually not used, and therefore redundant. This was cleaned up, and the bookings features tested on the front end to ensure that no negative side effects were created post action removal.
During testing across multiple browsers of the edit and return exam modals, with their success/failure messages, it was found that there were some styling issues with respect to modal size. Issues being modal/messages modal size and whether or not there were scroll bars present depending on the size of screen. These issues were addresses in this PR.
During the development of the update/return/bookings actions on the exams invetory table, early development used nested divs to create modals for actions instead of using bootstrap modals. As final clean-up of this sprint task, the actions had to move towards using b-modal, as well as using b-alert to tell the user whether or not the PUT methods taken on exam objects were successful or erroneous.
Update Exams - Move from Div to B-Modal
During the development of the bookings app in sprint 4, a field was added to the exams model/schema, and a GET method was added to list all offices in theq. These changes needed to be reflected in the bookings postman tests, as well as in the swagger yaml file. The postman tests were written and tested before submission of this PR, and were verified to be working as expected.
During development of the bookings feature, it was found out that liasons could not POST exams from one office to a different office (ie// office_id 1 -> office_id 3). Since Liaisons require the ability to create exams in all offices, a change needed to be made to the exam POST end-point, checking for the csr role code to be LIAISON. Test data was also added to the manage.py file such that the role code LIASON exists now. A normal POST of an individual ITA exam was done in order to the test that previous functionality was not changed.
Created a new set of steps and questions in the state corresponding to the data requirements for the capture of Group ITA Exams to drive the add exam modal.  Created new question components and modified the modal to support the capture ofgroup exams as needed.
Add Group Exam Modal/ITA Group Exam Capture
…exam

Issue with Liaison Role Creating Exams
@gil0109 gil0109 merged commit d923cf7 into bcgov:RoomBooking Jan 23, 2019
gil0109 pushed a commit that referenced this pull request Mar 4, 2021
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.

4 participants