Skip to content

Latest commit

 

History

History
69 lines (62 loc) · 4.17 KB

TODO.md

File metadata and controls

69 lines (62 loc) · 4.17 KB

TODO'S


TASKS

    • USER SINGUP
    • USER LOGIN
    • USER ME
    • DOCTOR SIGNUP
    • DOCTOR LOGIN
    • DOCTOR ME
    • CREATE CLINIC
    • GET CURRENT CLINIC WITH DOCTOR DETAILS
    • Slots will be automatically calculated in python using calculate_slots function
    • ADD AGE COLUMN IN DATABASE for both user and doctor (AGE WILL BE calculated in python services before adding it to db)
    • added post and get appointment route for user
    • added search for clinics / doctor (public route)
    • need to implement get all appointments of a clinic
    • book appointments only if clinic is_open=True
    • appointment cancellation by user
    • implement only user can cancel his/her appointment no other user can
    • appointment cancellation by doctor/clinic
    • appointment skipped flag by doctor/clinic
    • appointment completion flag by doctor / clinic
    • create a slug for doctor profile ex-> dr-doctor-name-uuid
    • create admin table and add admin login route
    • create superadmin route / auth / list all doctors and verify doctors
    • while sending back all clinic details in admin/clinics send back total_no of appointments ,upcoming appointments,cancelled appointments,skipped_appointments,pending_appointments (either cancelled by user or doctor side) with clinic data
    • categorise error_handlers/errors.py based on user/doctor/mixed
    • IMPLEMENT UPDATE FEATURE FOR USER LIKE (MAIL,PHONE NUMBER,DOB,AGE) (password will be changed on a different route)
    • host backend with docker
    • implement ci/cd for backend
    • host frontend with netlify
    • IMPLEMENT UPDATE FEATURE FOR DOCTOR LIKE (PASSWORD,MAIL,PHONE NUMBER,DOB,AGE,PROFILE_IMAGE)
    • verify user/doctor on signup and send a verification email
    • implement password reset (send a temporary password on email)
    • change host api url to frontend webiste url and get token as slug and then call on api to verify it [after frontend ez created]
    • send a welcome email with email verification to user/doctor after creating new accounting (by themselves)
    • send a reset password mail user/doctor
    • send a account banned/unbanned
    • send a welcome email to user/doctor after creation of new account by admin(it will contain temp pass user/dr wont need to verify their email)
    • send email changed verification mail to user/doctor by admin user/dr will need to verify that mail to continue
    • when user/doctor change their email they have to verify that email again until their state of will be is_active=False
    • clinic on / off flag
    • implemnet available_days update and remove ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"]
    • IMPLEMENT UPDATE FEATURE ON DOCTOR CLINIC (WHICH WILL CHANGE OPENS AT,CLOSES AT,SESSION_TIME,AND IS_OPEN AND SLOTS WILL BE CALCULATED ACCORDINGLY)
    • set password length minimun to 8 for doctor user and admin (IN LAST)

HOW SLOT WILL BE CALCULATED

int(int(closes_at - opens_at) * 60)) (slots will be calculated using calculate_slots in services.py file) int(total_minutes // session_time)

New todo

  • doctor reason cancellation new model [required]
  • user active and doctor active(flag) for email verification
  • manage user from admin panel [like ban user currently]
  • USER WONT BE ABLE TO LOGIN IF ACCOUNT IS BANNED
  • manage DOCTOR from admin panel [like ban DOCTOR currently]
  • activate/deactivate user/doctor account from admin panel
  • get all users for admin panel (name,email phone,number of appointments,is_banned,is_active etc details)
  • admin can create user account /doctor and password will be directly sent to the user admin cant see password or set
  • admin can change user/doctor email and user have to verify it
  • user can only cancel appointment upto 4 hours before appointment time [will be implemented after slot logic]
  • user can only book future appointments
  • at the time of appointment booking check that appointment date/time and slot is available/free in clinic (bascially it is a precation for external api calls)