Hospital Management System Project Overview

Hospital Management System

Project Overview

The Hospital Management System is a comprehensive application designed to streamline the day-to-day operations of a hospital. It manages patient records, doctor schedules, appointments, billing, and medical reports while ensuring secure access for patients, doctors, and administrative staff. The system improves efficiency, reduces paperwork, and enhances patient care. 

Benefits of a Hospital Management System (HMS) 

A Hospital Management System streamlines and automates hospital operations, reducing paperwork and improving efficiency. It centralizes patient data, making it easier for doctors to access medical histories, prescribe treatments, and track progress. Administrative tasks like appointment booking, billing, and room allocation become faster and error-free. 

The system ensures accurate billing by automatically capturing all services provided, and it supports insurance processing. Real-time dashboards help management monitor hospital performance and make better decisions. It also ensures data privacy through secure, role-based access. 

Overall, an HMS enhances patient care, reduces operational costs, and enables a smoother, more organized workflow in healthcare facilities. 

How It Works: Step-by-Step 

Create App Name: LifeCare Mult speciality Hospital 

Step 1: New Patient Registration 

  • A Patient__c record is created with personal details such as name, contact, date of birth, gender, and address. 
  • This entry is done by the receptionist through the “New Patient” interface. 

Step 2: Doctor Onboarding (Approval Process) 

  • A Doctor__c record is added with name, degree, specialization, contact, and consultation fees. 
  • A custom approval process is triggered. 
  • Chairman/Approver reviews the doctor profile. 
  • Upon approval, the doctor becomes available for appointments. 

Step 3: Book an Appointment 

  • An Appointment__c record is created by selecting the patient, doctor, and appointment date. 
  • Additional info like appointment type, reason, time slot, and status are filled. 
  • A QR Code is generated for quick access during visit. 

Step 4: Patient Visit and Treatment 

  • On the appointment date, a Visit__c record is created: 
  • It links the doctor and patient. 
  • Fields include visit charges, number of visits, and next visit date. 
  • A notification email is automatically sent to the patient with the next visit date and instructions. 

Step 5: Medical History and Lab Records 

  • A Medical_Record__c is created to store: 
  • Allergies 
  • Diagnosis 
  • Rich text lab reports 
  • Visit and doctor reference 

Step 6: Add Insurance Details 

  • A Insurance__c record is added (if applicable). 
  • Fields include: 
  • Provider name 
  • Coverage type and amount 
  • Policy number and validity dates 
  • Status (active/inactive) 

Step 7: Add Prescription 

  • A Prescription__c record is linked to the visit: 
  • Medicine name 
  • Dosage 
  • Frequency 
  • Duration 

Step 8: Apply Discount (Reception Process) 

  • Before discharge, the receptionist opens a discount request: 
  • A picklist allows Army (25%), Corporate (20%), or General (15%) discount selection. 
  • A flow triggers an approval process to the Chairman. 
  • Only after chairman approval, the process continues. 

Step 9: Final Payment and Auto Invoice Generation 

  • Once approved, the payment is collected from the patient. 
  • A Record-Triggered Flow auto-generates the Invoice__c: 
  • Includes total amount, discount, final amount. 
  • A PDF copy is emailed automatically to the patient. 

Step 10: Reporting and Dashboards 

Admins and managers can monitor everything through Salesforce Reports & Dashboards, including: 

  • Total number of visits by date or doctor 
  • Most prescribed medicines 
  • Revenue trends 
  • Discount reports by category 
  • Active insurance usage. 

Setup Customs Objects:

 

We have customized the following objects in Salesforce:

1.Patient

2.Doctor

3.Appointment

4.Visit

5.Prescription

6.Lab Report

7.Invoice

8.Room

9.Insurance

10.Medical Record

11.Reception.

• Patient__c (Custom)

Data Type Field Name Example/Description
Text Patient Name John Doe
Email Email John@example.com
Phone Phone Number 9876543210
Picklist Gender Male, Female, Other
Date Date of Birth 01/01/1990
Text Address (Street) 123 Main Street
Picklist Address (Country) India, US, etc.
Text City Nagpur
Picklist State Maharashtra
Text Zip Code 440001

• Doctor__c (Custom Object)

Stores permanent doctor details for appointments, visits, and billing. 

Data Type Field Name Example/Description
Text Doctor Name Dr. Ayesha Singh
Picklist Degree MBBS, MD, BDS, MS
Picklist Specialization Cardiology, Orthopedic, Pediatrics, ENT
Email Email ayesha@hospital.com
Phone Mobile Number 9876543210
Picklist Approval Status Pending, Approved, Rejected
Address Fields Country, Street, City, State, Zip Full address of doctor
Currency Consultation Fees ₹1000

• Visit_Of_Patient__c (Custom Object)

Represents each consultation between a patient and doctor. 

Data Type Field Name Example/Description
Lookup Doctor Links to Doctor__c
Lookup Patient Links to Patient__c
Date Date of Visit 27/07/2025
Currency Visit Charges ₹500
Number Number of Visits 2 (Incremented manually or by automation)
Date Next Visit Suggested follow-up date

• Appointment__c (Custom Object)

Used for pre-scheduling visits with QR code integration (optional). 

Data Type Field Name Example/Description
Auto Number Appointment Number APT-0001 (Auto-generated)
Lookup Patient Links to Patient__c
Lookup Doctor Links to Doctor__c
Date Appointment Date 28/07/2025
Picklist Appointment Type General Checkup, Follow-up, Emergency
Long Text Reason for Visit “Routine fever & cold”
Picklist Appointment Status Scheduled, Cancelled, Completed
Picklist Time Slots Morning, Afternoon, Evening
Lookup (User) Owner User creating the appointment

• Medical_Record__c (Custom Object)

Stores patient medical history, allergies, and diagnosis. 

Data Type Field Name Example/Description
Text Medical Record Name MR-001 (Can be auto-generated)
Lookup Patient Links to Patient__c
Lookup Doctor Linked doctor who handled the case
Lookup Visit of Patient Connects with Visit__c
Date Date Recorded 27/07/2025
Long Text Lab Reports Rich text format to store lab summaries
Long Text Allergies Long Text
Picklist Diagnosis Viral Infection
Lookup (User) Owner Created by doctor/admin

• Insurance__c (Custom Object)

Tracks insurance coverage details for patients. 

Data Type Field Name Example/Description
Lookup Patient Links to Patient__c
Text Provider Name Star Health Insurance
Currency Coverage Amount ₹5,00,000
Date Start Date 01/01/2024
Date End Date 31/12/2024
Text Policy Number POL-12345
Picklist Insurance Type Government, Private, Corporate
Picklist Coverage Type Full, Partial
Checkbox Is Active TRUE/FALSE depending on status
Lookup (User) Owner Admin or Insurance Agent

• Room__c (Custom Object)

Tracks room allotments for patients during admission with charges and duration. 

Data Type Field Name Example/Description
Text Room Number R101, ICU-5, G202
Picklist Rooms General, Private, ICU, Deluxe
Currency Charges Per Day ₹1500 per day
Date Start Date 25/07/2025
Date End Date 28/07/2025
Picklist Status Occupied, Vacant, Cleaning
Lookup Patient Links to Patient__c (admitted patient)

• Lab_Test__c (Custom Object)

Manages patient lab tests, results, and charges ordered by doctors. 

Data Type Field Name Example/Description
Text Test Name Blood Test, X-Ray, ECG
Picklist Test Type Pathology, Radiology, Cardiology
Date Test Date 27/07/2025
Long Text Test Result Hemoglobin: 13.5 g/dL, WBC Count: Normal
Currency Charges ₹750
Lookup Patient Links to Patient__c
Lookup Doctor Ordered By Refers to the Doctor__c who ordered the test

• Prescription__c (Custom Object)

Captures medicine details prescribed to a patient during a visit. 

Data Type Field Name Example/Description
Auto Number Prescription Number PRESC-0001 (Auto-generated)
Lookup Patient Links to Patient__c
Lookup Doctor Refers to prescribing Doctor__c
Date Date of Prescription 27/07/2025
Text Medicine Name Paracetamol, Azithromycin
Text/Number Dosage 500mg, 1 Tablet
Text Duration 5 Days, 1 Week
Number Quantity 10, 15, 20
Currency Price per Unit ₹10 per tablet

• Reception__c (Custom Object)

Handles the final stage of billing and discharge, including discounts and payment tracking after a patient visit

Data Type Field Name Example/Description
Text Reception Auto name or custom text like Reception-001
Lookup Patient Links to Patient__c
Lookup Doctor Refers to Doctor__c associated with visit
Lookup Visit of Patient Connects with Visit__c
Picklist Discount Type Army 25%, Staff 15%, Senior Citizen 20%, None
Picklist Discount Approval Status Pending, Approved, Rejected
Picklist Patient Status Discharged, Under Treatment, Referred
Picklist Payment Mode Cash, Card, UPI, Insurance
Picklist Payment Status Paid, Unpaid, Partial

• Hospital_Invoice__c (Custom Object)

Generates the final hospital bill including all charges and discount applied to a patient’s visit

Data Type Field Name Example/Description
Auto Number Invoice Number INV-0001 (Auto-generated)
Date Invoice Date 27/07/2025
Lookup Patient Links to Patient__c
Lookup Visit of Patient Links to Visit__c
Currency Consultation Fees ₹1000
Currency Visit Charges ₹500
Currency Lab Charges ₹750
Currency Room Charges ₹3000
Currency Prescription Charges ₹200
Currency Amount Charged Total before discount (auto-calculated via formula)
Currency Discount ₹500 or 25% (manual or formula field)
Currency Amount Paid Final amount after discount
Picklist Payment Status Paid, Unpaid, Partial
Picklist Payment Mode Cash, Card, UPI, Insurance

Schema Builder