/hospital

Primary LanguageRuby

PatientDB

Collection of medical cases, catalogued by symptoms.

Version 7.0: Playing with AJAX

v7.0

  • [X] display patient search results using an AJAX request
  • [X] handle case workflow updates with AJAX

Version 6.0

v6.0

Form Validation: if a required field is left blank in the user or case forms, it is highlighted red and an informative alert is displayed to the user. The submit button is initially hidden, but fades-in when the form becomes valid.

Fade Flash Notifications: flash notifications fade out of view slightly after they are displayed.

Pagination: patient and case index pages are paginated using a custom pagination function built in jQuery.

Version 5.0

v5.0

Both patients and cases are now searchable through their respective index pages. This was accomplished using solr+sunspot. Searching patients peforms a fulltext search on the following fields:

  • first_name
  • middle_name
  • last_name
  • content of any associated notes

Searching cases performs a fulltext search on the following fields:

  • description
  • content of any associated notes
  • fullname of associated patient
  • description of any associated symptoms

Version 4.0

v4.0

A case can be the following states:

  • new: the case is entered into the system
  • approved: the case has been reviewed and is ready for assignment
  • assinged: the case is assigned to a doctor
  • closed: the case is closed

The case’s status is set to submit when entered into the system. From there the case is reviewed, and if it is acceptable, marked as such. However, if the case is deemed invalid, the case can be closed immediately by the reviewer. Once the case is reviewed, and given a reviewed state, it can be assigned to a doctor. The doctor can then close the case after propper treatment.

Version 3.0

v3.0

After a bit of re-tooling I’ve decided to change the focus of the application from a patient database, to a case database. The idea being that future development will allow doctors and patients to be able to review cases, as well as do things like view cases related by symptoms and other characteristics.

  • cases have many symptoms through a join table
  • notes have been created and can be associated with either a patient or a case through a polymorphic assocation (:notable)
  • names and addresses have a polymorphic relationship with patients, with the idea that other entities (doctors, administrators) may also have names and addresses in the future

TodoList

  • [X] describe the project in the readme
  • [X] refactor forms for addressable and nameable
  • [X] create a case entry form
  • [X] a case has states