PMS

photo

Patient Management System (PMS)

A complete healthcare software solution to manage patients, appointments, billing, medical records,
and hospital workflows efficiently.

What PMS Does (Features)

Role-based access control (RBAC)

Different users (Super Admin/Admin/Staff) see different tabs, buttons, and allowed actions from centralized access rules.

Patient master management

Create, search, edit, soft-delete, and restore patients with pagination and filters.

Patient visit tracking

Log visits by Patient ID or NFC card, then view paged visit history per patient.

Treatment lifecycle management

Add/view/update treatment records, include doctor comments, feedback, allergy notes, and close-treatment flow.

Medical file handling

Upload and view X-ray/prescription images with multipart upload, validation, and base64 storage/display.

Reports and dashboard views

Dashboard/report endpoints and UI modules for operational summaries and trends.

How PMS Is Built

Frontend

WPF desktop app (AttendanceManagement.Wpf) with role-aware UI and centralized authorization checks.

Backend

ASP.NET Core Web API using controller → service → repository layers.

Database

PostgreSQL via EF Core AppDbContext with PatientMasterData, PatientVisit, and treatment tables.

Security / Ops

JWT auth, role claims, middleware logging, trace IDs, and CORS support for WPF.

Patient Workflow (FE → BE → DB)

  1. FE: User opens Patient screen, searches/adds/edits/deletes from WPF (Patient.xaml.cs).
  2. BE: Calls PatientController, PatientVisitController, and PatientTreatmentController APIs.
  3. Service/Repo: Business logic in services, persistence in repositories.
  4. DB: Reads/writes PatientMasterData, PatientVisit, PatientNfcCardMapping, PatientVisitTreatment, and PatientTreatmentMaster in PostgreSQL.

Patient Treatment

Fully present with treatment CRUD + file upload/view flow in UI (TreatmentWindow) and API (PatientTreatmentController).

Smile Analysis

Not found in current codebase. This appears to be a planned feature and is not implemented yet.
Scroll to Top