# Vaccination Appointment Scheduling (VAS)
## General Requirements
<i>Create a full-stack application for VAS - Vaccination Appointment Scheduling. VAS is a mass vaccination company based in Nepal, conceived for this assignment. </i>
VAS is a startup company that focuses on providing vaccines received from International Aid. VAS wants a convenient platform for Nepalese to Register and Get Vaccinated. So, they have decided to start a Web Application accessible to everyone with an internet connection to register, schedule vaccination, and update new vaccination.
## Users
1. Admin
2. Client
### Requirements
1. Manager/Admin Portal
a. Patient CRUD
b. Vaccination CRUD
c. Appointment CRUD
2. Client Portal
a. Client Registration
b. Client Vaccination Scheduling
### User Stories
1. As a user, I should be able to view a landing page where I can learn about the Application, how to use it and more. [be creative]
2. As a user, I should be able to see the registration form where I can register and get a Unique Patient ID for my successful registration.
3. As a registered user, I should be able to schedule an appointment for vaccination. As a result, a new appointment should be scheduled and viewable in appointment listings.
4. As a Manager, I should be able to login into the system so that I should be able to access the management portal.
5. As a Manager, I want a complete CRU system for Patients so that I should be able to Create, Update, Read, and List Patient Records. I should be able to manage the patients' records in the management portal.
Acceptance Criteria:
Detail Fields: [Self explore/ good to have more detail/ Research domain and products]
- First Name
- Last Name
- Birth Date
- Ethnicity
- Gender
- Email Address
- Registered Address
a. Street
b. City
c. State
- Payment Information
a. Insurence ID
b. Member ID
c. Insurance Provider
- Document Image
- Confirmation
6. As a Manager, I want a complete CRU system for Appointments so that I should be able to Create, Update, Read, and List Appointments scheduled. I should be able to manage the appointment in the management portal.
Acceptance Criteria:
- Tabular view of Appointment with unique Appointment ID highlighted.
- Filter and Pagination function [Self explore/ good to have feature]
- Easy Fulfilled/Cancel/No Show status update from table view [Self explore/ good to have feature]
Detail Fields: [Self explore/ good to have more detail/ Research domain and products]
- Patient ID
- Site Location
- Service Type
- Eligibility Screening Answers
- Screening Questions Answers
- Confirmation Code - a unique identifier
- Calendar View with time slots opening and closing time slotted according to service duration.
- Set an appointment for multiple doses on a future date
- Confirmation Page with confirmation code
7. As a Manager, I want a complete CRU system for Vaccination services so that I should be able to Create, Update, Read, and List Vaccination. I should be able to manage the Vaccination Services for the System.
Acceptance Criteria:
Detail Fields: [Self explore/ good to have more detail/ Research domain and products]
- Service Name
- Site Locations
- Start and End date of distribution
- Dynamic Doses Criteria
- Single/Multiple Doses
- Dynamic Criteria
- Gender - check box
- Male only
- Female only
- Both
- Age
- Greater than [number]
- Ethnicity - check box
- List of ethnicities
- [Self explore/ good to have feature] Eligibility Screening Questionnaire (e.g., I am a high-risk first responder, I am a health worker, I am going abroad, ….) - checker questions
- [Self explore/ good to have feature] Screen Questionnaire - Dynamic
- Have you ever had a severe allergic reaction to something other than a vaccine?
- Do you have any allergies?
- Do you have a new COVID-19 diagnosis or symptoms of COVID-19?
- Have you received another vaccine in the previous __ days?
### What are we looking for
1. Ability to build a basic application
2. Code quality: readability, maintainability, reusability, etc.
3. Use of version control.
4. Ability to explore, learn and research.
5. Application documentation: Level 1,2, and 3 - C4 Model