Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
86 commits
Select commit Hold shift + click to select a range
c89fb91
update README.md
buggarajesh Mar 4, 2025
351a2ce
Merge branch 'master' of https://github.com/buggarajesh/HospitalManag…
buggarajesh Mar 4, 2025
1291424
Merge branch 'strivervishal:master' into dev
buggarajesh Mar 5, 2025
208e1ae
BookedAppointments added
buggarajesh Mar 5, 2025
9052599
Merge pull request #22 from buggarajesh/dev
strivervishal Mar 5, 2025
25ce958
bhakti code
strivervishal Mar 5, 2025
e931020
all changes done
buggarajesh Mar 5, 2025
5a3ff96
Merge pull request #23 from buggarajesh/dev
strivervishal Mar 6, 2025
623a259
Updated Dashboard UI and fixed underline issue
samruddhi33333 Mar 6, 2025
f47f6bf
patient and chart added
dineshbharati27 Mar 6, 2025
0463efe
patient page updated
dineshbharati27 Mar 6, 2025
35c68c6
Initial commit
samruddhi33333 Mar 6, 2025
c5f746e
Merge pull request #27 from samruddhi33333/feature-branch
strivervishal Mar 7, 2025
aaf8aa3
routing part successfully added and also ui issues fixed
strivervishal Mar 7, 2025
1c3616b
before rebase
dineshbharati27 Mar 7, 2025
774cc46
Merge branch 'master' of https://github.com/dineshbharati27/HospitalM…
dineshbharati27 Mar 7, 2025
565a8a7
patient.jsx updated
dineshbharati27 Mar 7, 2025
dd92e03
Updated Pharmacy
Mar 7, 2025
b348bac
add appointments
buggarajesh Mar 7, 2025
d5a00e2
Merge pull request #28 from bhaktikulk/pharmacy
strivervishal Mar 9, 2025
fca4422
Merge pull request #29 from buggarajesh/dev
strivervishal Mar 9, 2025
1984cd6
Merge branch 'master' of https://github.com/dineshbharati27/HospitalM…
dineshbharati27 Mar 9, 2025
a942ce2
patient updated
dineshbharati27 Mar 9, 2025
47fe192
Merge pull request #30 from dineshbharati27/master
strivervishal Mar 9, 2025
9f06f44
make changes
sandip142 Mar 9, 2025
3bf1e77
Merge pull request #31 from sandip142/master
strivervishal Mar 9, 2025
f3d35f1
backend setup completed
strivervishal Mar 10, 2025
e531729
axios installed
strivervishal Mar 10, 2025
efc8fea
Appointments Functionalities
rudrarajkudale Mar 10, 2025
bb1b73b
Merge pull request #33 from rudrarajkudale/rudraraj
strivervishal Mar 11, 2025
b25f2d8
Updated backend models and routes
MaltiBhokare Mar 11, 2025
102da52
Updated Patient component
MaltiBhokare Mar 11, 2025
0fc7b3b
Merge pull request #34 from MaltiBhokare/feature-backend-update
strivervishal Mar 11, 2025
2a703f6
Updated patient routes and modified Patient component
MaltiBhokare Mar 11, 2025
8dab2e4
backend changes done
sandip142 Mar 11, 2025
223dc95
Merge pull request #36 from MaltiBhokare/feature-backend-update
strivervishal Mar 11, 2025
48487da
Merge branch 'master' of https://github.com/sandip142/HospitalManagem…
sandip142 Mar 11, 2025
beb85ea
resolve confilct
sandip142 Mar 11, 2025
203979b
Merge pull request #38 from sandip142/master
strivervishal Mar 11, 2025
79ac7bd
make some changes
sandip142 Mar 11, 2025
4c7a3af
Merge pull request #40 from sandip142/master
strivervishal Mar 11, 2025
d70ba30
some layout changes
buggarajesh Mar 11, 2025
5325d71
Normalize line endings
rudrarajkudale Mar 11, 2025
0affb8e
Admin Auth
rudrarajkudale Mar 11, 2025
73c1e08
Merge branch 'master' into rudraraj
rudrarajkudale Mar 11, 2025
e25ed55
Merge pull request #42 from buggarajesh/dev
strivervishal Mar 11, 2025
50e4ff6
Merge pull request #44 from rudrarajkudale/rudraraj
strivervishal Mar 11, 2025
b7b32e0
Add required files for pharmacy backend
samruddhi33333 Mar 12, 2025
ae231ca
Merge pull request #45 from samruddhi33333/feature-branch
strivervishal Mar 13, 2025
850f66d
new changes
strivervishal Mar 13, 2025
1fcb0f8
authorization
rudrarajkudale Mar 13, 2025
36b2f6c
connected cards to backend
buggarajesh Mar 13, 2025
54d475f
Merge pull request #46 from rudrarajkudale/rudraraj
strivervishal Mar 15, 2025
96ccdf0
Merge pull request #47 from buggarajesh/dev
strivervishal Mar 15, 2025
5180526
changes done
buggarajesh Mar 15, 2025
ab839c0
Merge pull request #49 from buggarajesh/dev
strivervishal Mar 15, 2025
46a2f7a
Update dashboardCards.js
buggarajesh Mar 16, 2025
1660622
Update dashboardCards.js
buggarajesh Mar 16, 2025
fdbbed8
Update server.js
buggarajesh Mar 16, 2025
738c81d
Merge pull request #50 from buggarajesh/dev
strivervishal Mar 16, 2025
696fd00
Update server.js
buggarajesh Mar 16, 2025
539fc64
Merge pull request #51 from buggarajesh/dev
strivervishal Mar 16, 2025
dfc284e
Updated Charts, Sidebar, Dashboard, and App components
samruddhi33333 Mar 16, 2025
d9dcffa
code update
sandip142 Mar 17, 2025
980eeb7
Merge pull request #52 from samruddhi33333/master
strivervishal Mar 26, 2025
b85a5fd
Merge pull request #54 from sandip142/master
strivervishal Mar 26, 2025
73f96ae
update the code
sandip142 Mar 26, 2025
ffc7414
Merge pull request #55 from sandip142/master
strivervishal Mar 26, 2025
b765633
ankush updated help center
buggarajesh Mar 26, 2025
8fd6354
Merge branch 'dev' of https://github.com/buggarajesh/HospitalManageme…
buggarajesh Mar 26, 2025
da905b5
Merge pull request #57 from buggarajesh/dev
strivervishal Mar 26, 2025
dda309b
Changes done
Mar 27, 2025
a958a4d
Added backend files for Charts
samruddhi33333 Mar 27, 2025
edd0fbc
Ignore node_modules
ankushjagadale40 Mar 28, 2025
c2b43da
Added Responsiveness
ankushjagadale40 Mar 28, 2025
03c6f15
Updated UI and functionality for multiple components
ankushjagadale40 Mar 28, 2025
8039d30
Merge pull request #64 from ankushjagadale40/feature-initial-setup
strivervishal Mar 28, 2025
c53afbb
Merge branch 'master' into charts-backend
samruddhi33333 Mar 30, 2025
8c2bb7d
Merge pull request #62 from samruddhi33333/charts-backend
strivervishal Apr 1, 2025
10510eb
Merge pull request #61 from bhaktikulk/hms
strivervishal Apr 1, 2025
94326ca
Added Responsiveness for Doctor and Patient Section
ankushjagadale40 Apr 1, 2025
f343e18
Merge pull request #65 from ankushjagadale40/feature-initial-setup
strivervishal Apr 2, 2025
6d2ccdb
make changes
sandip142 Apr 2, 2025
dca5efb
Merge branch 'master' of https://github.com/sandip142/HospitalManagem…
sandip142 Apr 2, 2025
dc86a40
Update README.md
strivervishal Apr 6, 2025
249d02c
Merge pull request #67 from sandip142/master
strivervishal Apr 11, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Binary file added .gitignore
Binary file not shown.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ Welcome to the **Hospital Management System** repository! This project is design
npm install
```

Hello: Myself Malti Bhokare

7 changes: 7 additions & 0 deletions backend/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# MONGO_URI=mongodb+srv://strivervishal:CRVga8K9jEiOLAaI@vishal.gncfc.mongodb.net/
PORT=5000
MONGO_URI=mongodb+srv://strivervishal:CRVga8K9jEiOLAaI@vishal.gncfc.mongodb.net/test
SECRET=secret
ADMIN_ID=67cfed3bc6daab271f417608
ADMIN_USERNAME=rudra
ADMIN_PASSWORD=123
77 changes: 77 additions & 0 deletions backend/controllers/doctorController.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
const Doctor = require("../models/doctorModel");

// Get all doctors (with pagination)
exports.getDoctors = async (req, res) => {
try {
const { page = 1, limit = 10 } = req.query;
const doctors = await Doctor.find()
.limit(limit * 1)
.skip((page - 1) * limit);
const totalDoctors = await Doctor.countDocuments();

res.status(200).json({
doctors,
totalDoctors,
totalPages: Math.ceil(totalDoctors / limit),
currentPage: Number(page),
});
} catch (error) {
res.status(500).json({ message: "Error fetching doctors", error });
}
};

// Get single doctor
exports.getDoctorById = async (req, res) => {
try {
const doctor = await Doctor.findById(req.params.id);
if (!doctor) return res.status(404).json({ message: "Doctor not found" });

res.status(200).json(doctor);
} catch (error) {
res.status(500).json({ message: "Error fetching doctor", error });
}
};

// Add new doctor
// Add new doctor
exports.addDoctor = async (req, res) => {
try {
const currentDate = new Date();
const formattedDate = currentDate.toISOString().split("T")[0]; // YYYY-MM-DD format
const formattedTime = currentDate.toTimeString().split(" ")[0]; // HH:MM:SS format

const newDoctor = new Doctor({
...req.body,
date: formattedDate,
time: formattedTime,
});

await newDoctor.save();
res.status(201).json({ message: "Doctor added successfully", doctor: newDoctor });
} catch (error) {
res.status(500).json({ message: "Error adding doctor", error });
}
};
// Update doctor
exports.updateDoctor = async (req, res) => {
try {
const updatedDoctor = await Doctor.findByIdAndUpdate(req.params.id, req.body, { new: true });
if (!updatedDoctor) return res.status(404).json({ message: "Doctor not found" });

res.status(200).json({ message: "Doctor updated", doctor: updatedDoctor });
} catch (error) {
res.status(500).json({ message: "Error updating doctor", error });
}
};

// Delete doctor
exports.deleteDoctor = async (req, res) => {
try {
const deletedDoctor = await Doctor.findByIdAndDelete(req.params.id);
if (!deletedDoctor) return res.status(404).json({ message: "Doctor not found" });

res.status(200).json({ message: "Doctor deleted" });
} catch (error) {
res.status(500).json({ message: "Error deleting doctor", error });
}
};
33 changes: 33 additions & 0 deletions backend/controllers/faqControllers.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
const FAQ = require("../models/FAQ");

// Get all FAQs
exports.getFAQs = async (req, res) => {
try {
const faqs = await FAQ.find();
res.json(faqs);
} catch (error) {
res.status(500).json({ error: "Failed to retrieve FAQs" });
}
};

// Add a new FAQ
exports.addFAQ = async (req, res) => {
try {
const { question, answer } = req.body;
const newFAQ = new FAQ({ question, answer });
await newFAQ.save();
res.status(201).json(newFAQ);
} catch (error) {
res.status(500).json({ error: "Failed to add FAQ" });
}
};

// Delete an FAQ
exports.deleteFAQ = async (req, res) => {
try {
await FAQ.findByIdAndDelete(req.params.id);
res.json({ message: "FAQ deleted successfully" });
} catch (error) {
res.status(500).json({ error: "Failed to delete FAQ" });
}
};
1 change: 1 addition & 0 deletions backend/middleware.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
//backend middlewares will be here.
8 changes: 8 additions & 0 deletions backend/models/FAQ.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
const mongoose = require("mongoose");

const faqSchema = new mongoose.Schema({
question: { type: String, required: true },
answer: { type: String, required: true },
});

module.exports = mongoose.model("FAQ", faqSchema);
12 changes: 12 additions & 0 deletions backend/models/Medicine.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
const mongoose = require("mongoose");

const medicineSchema = new mongoose.Schema({
name: { type: String, required: true },
description: { type: String },
price: { type: Number, required: true },
stock: { type: Number, required: true },
expiryDate: { type: Date, required: true },
createdAt: { type: Date, default: Date.now },
});

module.exports = mongoose.model("Medicine", medicineSchema);
10 changes: 10 additions & 0 deletions backend/models/Order.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
const mongoose = require("mongoose");

const orderSchema = new mongoose.Schema({
customerName: { type: String, required: true },
medicines: [{ name: String, quantity: Number, price: Number }],
totalAmount: { type: Number, required: true },
date: { type: Date, default: Date.now },
});

module.exports = mongoose.model("Order", orderSchema);
11 changes: 11 additions & 0 deletions backend/models/Patient.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
const mongoose = require("mongoose");

const PatientSchema = new mongoose.Schema({
name: String,
age: Number,
gender: String,
appointment: String,
doctorAssigned: String
});

module.exports = mongoose.model("Patient", PatientSchema);
10 changes: 10 additions & 0 deletions backend/models/appointment.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
const mongoose = require("mongoose");

const appointmentSchema = new mongoose.Schema({
patientName: { type: String, required: true },
assignedDoctor: { type: String, required: true },
date: { type: String, required: true },
time: { type: String, required: true },
});

module.exports = mongoose.model("Appointment", appointmentSchema);
13 changes: 13 additions & 0 deletions backend/models/dashboardCards.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
const mongoose = require("mongoose");

const DashboardCardSchema = new mongoose.Schema({
title: String,
value: mongoose.Schema.Types.Mixed,
percentage: Number,
color: String,
icon: String,
});

const DashboardCard = mongoose.model("DashboardCard", DashboardCardSchema);

module.exports = DashboardCard;
22 changes: 22 additions & 0 deletions backend/models/doctorModel.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
const mongoose = require("mongoose");

const doctorSchema = new mongoose.Schema({
name: { type: String, required: true },
department: { type: String, required: true },
specialization: { type: String, required: true },
qualification: { type: String, required: true },
experience: { type: String, required: true },
email: { type: String, required: true, unique: true },
phone: { type: String, required: true },
address: { type: String, required: true },
availability: {
days: { type: [String], required: true },
time: { type: String, required: true },
},
date: { type: String, default: () => new Date().toISOString().split("T")[0] },
time: { type: String, default: () => new Date().toTimeString().split(" ")[0] },
status: { type: String, enum: ["active", "inactive"], default: "active" },
profileImage: { type: String },
});

module.exports = mongoose.model("Doctor", doctorSchema);
11 changes: 11 additions & 0 deletions backend/models/hospitalData.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
const mongoose = require("mongoose");

const hospitalSchema = new mongoose.Schema({
month: String,
appointments: Number,
patients: Number,
});

const HospitalData = mongoose.model("HospitalData", hospitalSchema);

module.exports = HospitalData;
13 changes: 13 additions & 0 deletions backend/models/user.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
const mongoose = require("mongoose");
const passportLocalMongoose = require("passport-local-mongoose");

const UserSchema = new mongoose.Schema({
username: { type: String, required: true, unique: true },
email: { type: String, required: true, unique: true },
role: { type: String, enum: ["doctor", "patient"], required: true }
});

UserSchema.plugin(passportLocalMongoose, { usernameField: "username" });
const User = mongoose.models.User || mongoose.model("User", UserSchema);

module.exports = User;
16 changes: 16 additions & 0 deletions backend/node_modules/.bin/bcrypt

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions backend/node_modules/.bin/bcrypt.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions backend/node_modules/.bin/bcrypt.ps1

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 16 additions & 0 deletions backend/node_modules/.bin/mime

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions backend/node_modules/.bin/mime.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions backend/node_modules/.bin/mime.ps1

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 16 additions & 0 deletions backend/node_modules/.bin/semver

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading