Skip to content

Instantly share code, notes, and snippets.

@moonblade
Last active March 27, 2020 14:28
Show Gist options
  • Save moonblade/4e2e652042a8d0ff7666ba70bc11cc11 to your computer and use it in GitHub Desktop.
Save moonblade/4e2e652042a8d0ff7666ba70bc11cc11 to your computer and use it in GitHub Desktop.

Required APIs

General Requirements from all api's in doc

  • api end point and type
  • description
  • url inputs (params)
  • data inputs (body)
  • sample output json - correct (status code 200)
  • sample output json - error case (with status code)
  • Headers required for auth/other purposes

List patients

clarification in screen

  • screen link
  • client side pagination or server side pagination
  • Why is list shown when no input is provided, shouldn't this function exactly like patient lookup, Listing all patients doesn't seem to be a real world criteria
  • The columns id, name, dob, phone, email and blood group are links, where do they link to
  • chat column should be hidden since messaging is not in first phase?

inputs

  • filters
    • patientID
    • mobileNo/Name/Email (single field, indistiguished in frontend)
    • list of sexes to filter
    • age from, age to
    • pagination inputs if any
    • follow up patients (flag)
      • provider id
    • bookmarked(flag)
      • provider id

output

  • List of patients filtered by the above input
  • patients will have:
    • id
    • sex
    • firstname
    • lastname
    • dob
    • mobile
  • patients may have
    • blood group
    • Email
    • emergency contact number
    • emergency contact name
    • emergency contact relation

Add patient

clarification in screen

  • screen1, screen2
  • two screen for add patient present, one by clicking logge in user name and other from patient list > add button, Both say 'add-new advanced'
  • third sex?
  • Emergency contact and relationship fields, There is no field for emergency contact name (or number, only one field present)

inputs

  • patient details including
    • id
    • sex
    • firstname
    • lastname
    • dob
    • mobile
    • blood group
    • Email
    • emergency contact number
    • emergency contact name
    • emergency contact relation

outputs

  • Success/fail status message

Patient lookup

clarification in screen

  • Once patient lookup is done and patient is chosen, which page does he go to? - I'm assuming - consult > existing patient walk in (casesheet)

Consult > existing patient walk in

clarification in screen

  • screen
  • What are the links on empty air above upload/scan casesheet (assuming those detailed screens are not being worked now)
  • lab link in pateint ehr does not work
  • in casesheet > what do load and save do. Does load take any input from doctor.
  • How is scan case sheet present in web app?
  • writing pad, not present as of last discussion.
  • Hidden links that give detailed breakdown of casesheet (This is not present in reachable path, ignored completely in this screen)

inputs

  • patientId

outputs

  • patient details
    • id
    • sex
    • firstname
    • lastname
    • dob
    • mobile
    • blood group
    • Email
    • emergency contact number
    • emergency contact name
    • emergency contact relation
  • past visits (case sheet details)
    • id
    • date and time
    • token number if applicable
    • provider details
      • Doctor name
      • designation
      • hospital name
      • clinic name
    • purpose/issue
    • diagnoses
    • lap orders
    • attachment links
  • patient vitals
    • height
    • weight
    • insurance provider
    • policy number
    • expiry
    • allergies
    • medical condition
    • habits
  • booking details
    • booking type
    • payment
      • amount
      • mode of payment

Consult > existing walk in > send to pharmacy

clarification

  • Details required

inputs

  • case sheet details
    • details unknown

outputs

  • Success/Fail

Consult > existing walk in > save

clarification

  • Details required

inputs

  • case sheet details
    • details unknown

outputs

  • Success/Fail

Consult > existing walk in > upload case sheet

clarification

  • Details required

inputs

  • case sheet image/pdf

outputs

  • Success/Fail

Manage OP (GET)

clarification in screen

  • screen
  • is there any real time update api/socket on status
  • Once stopped (not paused), is there a way to restart op

inputs

  • doctor auth

outputs

  • provider details
    • id
    • name
  • dr assistants
    • list of providers/(unknown model)
      • name
      • id
  • Schedule list
    • scheduleID
    • Time frame (Morning/noon)
    • time from
    • time to
    • current status (playing/paused/stopped/completed)
    • completed number of patients
    • total number of patients

Manage OP > Play/Pause/Stop

inputs

  • scheduleId
  • operation type (play/pause/stop)

outputs

  • Success/Fail

OP Visits

clarification in screen

  • screen
  • whats the (i) in patient list
  • what does close button do/ is it different from stop op

inputs

  • provider id
  • filter
    • show only current provider past visits
  • in this page the detailed case sheet view is presented, while in patient walk in page, the details are not present in casesheet

outputs

  • op id
  • provider details
    • dr name
    • clinic name
  • current token
  • schedule
    • from time
    • to time
  • total bookings
  • total number of tokens
  • pending number of tokens
  • current average time
  • recommended average time
  • Patient appointment list (including previous )
    • token number
    • date
    • provider details
      • dr name
      • clinic name
      • case sheet id
    • time
    • sex
    • name
    • age
    • status (cancelled/active/completed/in progress)

Op Visits > current patient details (case sheet)

  • Same as consult > existing patient walk in

input

  • patient id

clarification

  • Ignoring case sheet complexity
  • refer?

Op Visits > current token (socket api)

inputs

  • provider id
  • op id

outputs

  • current token updated real time

Follow up patients

Check patients list api

clarification in screen

  • why does date added matter? Doesn't follow up date matter?

inputs

  • provider id
  • patient filters

outputs

  • patient list
    • patient details
    • date added?
    • bookmarked (flag)
    • next appointment

recent consultations

Check patients list api

clarification in screen

  • which page does case sheet link go? - existing patient walk-in > history > view link?

inputs

  • provider id
  • patient filters
    • date
    • name/mobile/email
    • id

outputs

  • patient list
    • patient details
    • case sheet id

Booking > appointment list

clarification in screen

  • is practice dropdown name of clinic?
  • what is availble in timing dropdown?
  • what does the (i) signify

inputs

  • provider id (or take from auth)
  • filters
    • clinic details
    • timing
    • date (default today)

outputs

  • appointment list
    • clinic details
    • timing
      • date (time from)
      • time from
      • time to
    • list of patients
      • patient details
      • slot/token
      • priority flag

Booking > book new appointment (GET)

clarification in screen

  • is date an input in get, is there a list of dates that the dr would be allowed to select

inputs

  • provider id (or auth)
  • date?

outputs

  • provider details
    • name
    • id
    • designation
    • clinic
  • list of clinics available to doctor?
  • available schedules list
    • slot list
      • booking list
        • id
        • patient name
        • time slot/ order number
      • total patients available in slot
      • slot free or not
    • date/time
  • dates allowed to be selected

Booking > book new appointment (POST)

inputs

  • booking details - need more details
  • patient id

outputs

  • success/fail

Booking > book new appointment (DELETE)

inputs

  • booking id

outputs

  • success/fail

Reschedule booking (GET)

inputs

  • patient id

outputs

  • booking list
    • id
    • token number
    • datetime
    • provider details
      • name

Reschedule booking (POST)

inputs

  • patient id
  • booking details - need more details

outputs

  • success/fail

Providers list

inputs

  • filter
    • name
    • clinic outputs
  • provider list
    • id
    • name
    • clinic
    • phone

Manage calendar (GET)

clarification in screen

  • screen
  • no way to apply leave currently, or does block day mean apply leave?
  • Need more details on this screen

inputs

  • provider id (or auth)

outputs

  • list of approved/applied/holiday
    • type
    • from time
    • to time

Manage calendar (POST)

inputs

  • provider id (or auth)
  • from time
  • to time (or day)

outputs

  • success/fail

appointment summary

inputs

  • clinic id
  • from time
  • to time

outputs

  • list of appointment summary
    • datetime
    • count of patients

appointment report

inputs

  • clinic id
  • from time
  • to time

outputs

  • list of appointments
    • patientDetails
      • name
      • age
      • sex
    • appointmentDetails
      • payment status
      • datetime
      • visit type

patient list

inputs

  • clinic id
  • from time
  • to time

outputs

  • list of patients
    • patientDetails
      • name
      • age
      • sex
      • phone
      • email
      • city
      • financial status
      • blood group
    • appointmentDetails
      • dateTime

Login

inputs

  • provider username
  • provider password

outputs

  • provider details
    • name
    • id
    • clinic list

General requirement

  • Details on how models are arranged in db, so as to better reflect frontend models for better reuse (faster completion).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment