Task #100
openPatient Registration module
0%
Description
Module: Patient Registration
Navigation:
Login → Sidebar → Registration
Task: Registration Listing & New Registration Entry
This module manages patient registration and test assignment.
✅ 1️⃣ Registration Listing Page
Display all registrations for the logged-in enterprise.
Columns to Display:
Registration ID
Date
Patient Name
Owner Name
Mobile Number
WhatsApp icon (optional)
Actions:
-Edit
-Delete
-Print
Top Right: ✔ New Registration button
Search Function,
Search by:
Patient name
Owner name
Mobile number
Registration ID
✅ 2️⃣ New Registration Form (Page)
Form should capture the following fields:
🔹 Consultation Section
Consultation Fee (Numeric,Mandatory,Cannot be negative)
🔹 Patient Details
patient_id
patient_name
age
year_month_days (Dropdown & text Required)
sex (Dropdown)
sample_type (Dropdown → sample_type_master (search option)
species (Dropdown → species_master (search option)
breed (Dropdown → breed_master (search option)
owners_name
ref_by
mobile_no (Numeric string ,10 digit validation)
place (Text, Optional)
email (Email format, Optional)
🔹 Lab Test Selection
-----Selected tests stored in:
lab_test (JSON) [UI :DO IT LATER]-------
🔹 System Generated Fields
Field Source
added_by (Logged-in user id)
added_date (Current datetime)
✅ 3️⃣ Database Mapping
Registration table columns:
Column Type
id PK
con_fee double
patient_id varchar
patient_name varchar
age int
year_month_days varchar
sex varchar
sample_type int
species int
breed int
owners_name varchar
re_by varchar
mobile_no varchar
place varchar
email varchar
lab_test json(can do later, just put the field now)
added_by int
added_date datetime
✅ 4️⃣ Important Business Rules
✔ patient_id must be auto generated
✔ dropdowns must filter by enterprise
✔ added_date auto
✔ added_by from session
✔ no duplicate blocking (revisits allowed)
✅ 5️⃣ Print Feature:
Print registration slip with:
Registration ID
Patient details
Selected tests
Date
✅ 6️⃣ Delete
Soft delete preferred
Show confirmation popup
✅ 7️⃣ UI Requirements
✔ Same dashboard layout
✔ Proper alignment
✔ Responsive