Introduction

Welcome to the MedInfo User Guide!

MedInfo is a desktop application for private hospital administrative staff to help manage patients and wards.

This User Guide will guide you through installing the app, getting familiarised with its features and using it. If this is your first time using this Guide, you may refer to this segment on how to use our User Guide

Table of Contents


About MedInfo

MedInfo is a simple application that will help you manage your patients’ statuses, wards, discharge dates, and ward occupancies.

Considering the time-critical nature of hospital services, patient and ward management are of utmost priority, where the smallest delays or lapses in updating information can affect how your hospital attends to your patients. MedInfo was designed with this in mind. It has simplified and optimized patient and ward management, allowing you to in-process, update, and move patients around while still being able to view overall stats of the hospital at a glance.

Back to Table of Contents


Getting Started

Below, you’ll find everything you need to install and set up MedInfo.

System Requirements

For the best possible experience, we recommend that you use MedInfo on one of the following operating systems:

  • Windows
  • macOS
  • Linux

To run MedInfo, you will need to have Java 11 or above installed on your system. If you don’t, you can find the appropriate version for your system here.

Quick Start

  1. Download the latest medinfo.jar from here.

  2. Copy the file to the folder you want to use as the home folder for your MedInfo.

  3. Run the application by
    1. Double-clicking the .jar file or
    2. Opening a command terminal, cd into the folder you put the .jar file in, and use the java -jar medinfo.jar command to run the application.
  4. A GUI similar to the one below should appear in a few seconds. If you are starting the app for the first time, the app will contain some sample data for you to try commands.
    Ui

  5. Type the command in the command input box and press Enter to execute it. e.g. typing help and pressing Enter will open the help window.
    Some example commands you can try:

    • list : Lists all patients.

    • add nric/S1234567A name/John Doe : Adds a patient named John Doe to MedInfo.

    • delete 1 : Deletes the first patient on the currently displayed list.

    • clear : Clears all patient and ward data.

    • exit : Exits the app.

  6. Refer to the Features section below for details on each command.

Back to Table of Contents


User Interface Overview

UiOverview

The main GUI has 7 sections as highlighted above.

  • Menu Bar: File and Help buttons to exit or get help.
  • Command Input: Key in commands here and press Enter to execute.
  • Result Display: Responses from the application including error and success messages appear here.
  • Adjustable Panels: Click and drag on the purple highlighted areas to customize the panel sizes to your preference.
  • Patient List: List of patients you have.
  • Ward List: List of wards you have.
  • Save Location and Stats: Status bar which displays the location of data storage and some statistics of your hospital.

Back to Table of Contents


How to use the User Guide

This Guide contains detailed explanations on the commands available and what they do. If you wish to navigate to any section within this Guide, the Table of Contents above provides a quick way to do so. Each section in the User Guide comes with a Back to Table of Contents link in the footer to take you back to the Table of Contents.

If you know what you’re looking for, press Ctrl + F to search anywhere within this Guide for a keyword.

Symbols used

Symbol Meaning
:information_source: General information/notes.
:bulb: Tips that will optimize your usage of MedInfo.
:exclamation: Information that is crucial to know before using a command.

Features

The section below describes the commands available in MedInfo. The commands fall under 3 categories:

Our commands follow a certain format for ease of use. If you are new to MedInfo, do take some time to familiarise yourself with the command format from the notes below.

:information_source: Notes about the command format:

  • Words in UPPER_CASE are the parameters to be supplied by you.
    e.g. in add nric/NRIC name/NAME, NRIC and NAME are parameters which can be used as add nric/S1234567A name/John Doe.

  • Items in square brackets are optional.
    e.g name/NAME [s/STATUS] can be used as name/John Doe s/GREEN or as name/John Doe.

  • Parameters can be in any order.
    e.g. if the command specifies name/NAME s/STATUS, s/STATUS name/NAME is also acceptable.

  • If a parameter is expected only once in the command, but you specified it multiple times, only the last occurrence of the parameter will be taken.
    e.g. if you specify nric/S1234567X nric/S1234567A, only nric/S1234567A will be taken.

  • Commands that do not take in parameters (such as help, list, and exit) will ignore any parameters supplied along with it.
    e.g. if the command specifies help 123, it will be interpreted as help.

Patient Features

Adding a patient to the system: add

Adds the patient (NRIC, name and status).

Format: add nric/NRIC name/NAME [s/STATUS]

:bulb: Tip: The first and last letters in NRIC must be capitalised.

:information_source: Notes about add:

  • The default status is set to GRAY.
  • The default ward is set to Waiting Room.
  • No discharge date is added by default.

Examples:

  • add nric/S1234567A name/John Doe s/RED

Back to Table of Contents

Listing all patients in the system: list

Shows a list of all patients with their details in the system.

Format: list

Back to Table of Contents

Editing a patient’s details in the system: edit

Edit an existing patient’s status or ward or discharge date-time.

Format: edit INDEX [s/STATUS] [w/WARD] [d/DISCHARGE]

  • Edits the patient’s details at the specified index as of the currently displayed list.
  • The status of a patient is either GRAY or GREEN or YELLOW or RED.
  • The ward allocated to a patient is represented as an alphanumeric string. E.g A01.
  • The discharge date-time is of the dd/MM/yyyy HHmm format. E.g 12/03/2023 1200 is interpreted as 12th March 2023 1200hrs.

Examples:

  • edit 1 s/GREEN Edits the status of the first currently displayed patient to be GREEN.
  • edit 5 w/A01 Edits the ward of the fifth currently displayed patient to be A01.
  • edit 4 d/27/07/2023 1600 Edits the discharge date-time of the fourth currently displayed patient to be 27/07/2023 1600 which is read as 27th July 2023 1600hrs.

Back to Table of Contents

Sorting all patients in the system: sort

Sorts all the patients with the specified field and order in the system.

The fields that you can sort by include:

  • patient name (name/)
  • status (s/)
  • discharge date (d/)
  • ward name (w/)

You can sort in one of two orders:

  • ascending (asc)
  • descending (desc)

Format: sort FIELD/ORDER

:information_source: Notes about sort:

  • You can only sort by one field in a command.
  • When sorting by status (in ascending order), the order is GRAY, GREEN, YELLOW, then RED. The GRAY status is given the lowest priority as the patient’s condition is unknown, while the RED status is given the highest priority due to the patient’s critical condition.

Examples:

  • sort s/asc

Back to Table of Contents

Finding patients by name in the system: find

Shows a list of all patients with their details that match input name or NRIC.

Format: find name/NAME, find nric/NRIC, find s/STATUS, find w/WARD

  • The search is case-insensitive. e.g hans will match Hans
  • The order of the keywords does not matter. e.g. Hans Bo will match Bo Hans
  • Either only the name or only the NRIC is searched.
  • Only full words will be matched e.g. Han will not match Hans
  • Persons matching at least one keyword will be returned (i.e. OR search). e.g. Hans Bo will return Hans Gruber, Bo Yang
:bulb: Tip: Using find with a status acts as a filter on that status.

Examples:

  • find name/John returns john and John Smith
  • find name/john carlos returns John Smith, Carlos Lopez
    result for 'find alex david'

Back to Table of Contents

Deleting a patient from the system: delete

:exclamation: Caution: Once deleted, a patient cannot be recovered.

Deletes a patient by index.

Format: delete INDEX

  • Deletes the patient at the specified index as of the currently displayed list.

:information_source: Notes about delete:
On entering a delete command, a confirmation window will pop-up requesting for confirmation, regardless of the command’s validity. This is to verify that you truly intend to perform that action and are fully aware of its consequences.

Examples:

delete 1

Back to Table of Contents

Ward Features

Adding a ward to the system: addward

Adds the ward (name and capacity).

Format: addward w/WARD [c/CAPACITY]

  • The ward name is represented as an alphanumeric string. E.g A01.
  • The capacity is a positive integer. E.g 50.
:bulb: Tip:

:information_source: Note about add: The default capacity is set to 10.

Examples:

  • addward w/A01 c/25 Adds the ward with name A01 and capacity 25 to the system.

Back to Table of Contents

Editing a ward’s details in the system: editward

Edit an existing ward’s name or capacity.

Format: editward INDEX [w/WARD] [c/CAPACITY]

  • Edits the ward’s details at the specified index as of the currently displayed list.
  • The given capacity has to be an integer.
  • The given capacity has to be greater or equal to the ward’s current occupancy

Examples:

  • editward 1 w/A02 Edits the name of the first currently displayed ward to be A02.
  • editward 5 c/35 Edits the capacity of the fifth currently displayed ward to be 35.

Back to Table of Contents

Deleting a ward from the system: deleteward

:exclamation: Caution: Once deleted, a ward cannot be recovered.

Deletes a ward by index.

Format: deleteward INDEX

  • Deletes the ward at the specified index as of the currently displayed list.

:information_source: Notes about deleteward:

  • On entering a deleteward command, a confirmation window will pop-up requesting for confirmation, regardless of the command’s validity. This is to verify that you truly intend to perform that action and are fully aware of its consequences.
  • You will not be able to delete a ward that currently has patients assigned to it.

Examples:

deleteward 1

Back to Table of Contents

Utility Features

Clearing all data : clear

:exclamation: Caution: Once cleared, MedInfo data cannot be recovered!

Clears all data (patients and wards) stored in MedInfo.

Format: clear

Back to Table of Contents

Viewing help : help

Shows a message explaining how to access the help page.

help message

Format: help

Back to Table of Contents

Exiting the program : exit

Exits the program.

Format: exit

Back to Table of Contents

Saving the data

MedInfo data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.

Back to Table of Contents

Editing the data file

MedInfo data are saved as a JSON file [JAR file location]/data/medinfo.json. Advanced users can update the data directly by editing that data file.

:exclamation: Caution: Edit the data file at your own risk! Any changes that make the data invalid will lead to MedInfo clearing all data and starting anew.

Back to Table of Contents


FAQ :raising_hand:

Q: I keep forgetting the commands, is there a quick way to get help?

A: Yes! Entering the help command will show a message explaining how to access the help page.

Q: Why can’t I remove the waiting room?

A: As every hospital would have some pre-screening room for patients to wait in, and to make it easier to start entering patients into the system, the waiting room is made un-deletable.

Q: How do I transfer my data to another device/computer?

A: Install the app in the other device/ computer and overwrite the empty data file it creates with the file that contains the data of your previous MedInfo home folder.

Back to Table of Contents


Command summary

Action Format, Examples
Add add nric/NRIC name/NAME [s/STATUS]
e.g., add nric/S1234567A name/John Doe s/GREEN
List list
Edit edit INDEX [s/STATUS] [w/WARD] [d/DISCHARGE]
e.g.,edit 1 s/GREEN
Sort sort FIELD/ORDER
e.g., sort name/asc, sort d/desc
Find find name/NAME or find nric/NRIC or find s/STATUSor find w/WARD
e.g., find name/John
Delete delete INDEX
e.g., delete 1
Add Ward addward w/WARD [c/CAPACITY]
e.g., addward w/S1234567A c/25
Edit Ward editward INDEX [w/WARD] [c/CAPACITY]
e.g., editward 1 w/A02 c/35
Delete Ward deleteward INDEX
e.g., deleteward 1
Clear clear
Help help
Exit exit

Back to Table of Contents


Glossary

Term Definition
.jar A package file format that groups together Java program files and data files for ease of distribution.
cd A command used to change the current working directory in various operating systems. To use it, type cd followed by a space and the folder you wish to work in.
Command terminal A program that allows the user to enter commands that the computer processes. Examples of popular terminals include Terminal (for macOS) and PowerShell (for Windows).
Discharge Date The date on which a patient can be discharged from the hospital.
GUI Graphical User Interface. A form of user interface that allows users to interact primarily through graphics.
Home folder The main folder you wish to run MedInfo in. On running MedInfo, this folder will become populated with data and preference files.
In-process The process of checking in patients with their identifying information before they consult a medical professional.
Occupancy The number of patients in a given ward at a point in time.
Status A code indicating a patient’s current condition. MedInfo works with 4 statuses: GRAY (unknown), GREEN (stable), YELLOW (serious), and RED (critical).
Ward A separate room in a hospital, typically allocated to a particular type of patient.

Back to Table of Contents