0% found this document useful (0 votes)
25 views

Python

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

Python

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

PATIENT INFORMATION SYSTEM

Part- A Plan
PATIENT INFORMATION SYSTEM
1. Brief Description :
Patient information system is an organized systematic process of maintaining the information and the health
records of the patient. Its prime focus is only on keeping of the clinical records of the patient with every
single data that will aid with the delivery of the patient. It does not include the billings or any other data
related to the finance. This system helps maintain every single data from the second the patient sets foot in
the hospital up till every follow-ups in real time. There’s both paper version and the electronic version. The
EMR (Electronic Medical Record) is more effective for accumulation and storage for every tiny detail.

2. Aims of the micro project:

Daily many new patients visit the clinic so adding the new patient’s details and keeping the records using it
is very easy. There is also an option to add and delete doctors and other staff member’s details.New and
unique ids are given to everyone who gets registered over this system. There are also the options to check the
patient’s disease and course the patient is going through.

3. Course outcomes addressed


a) Display message on screen using Python script on IDE.
b) Develop python program to demonstrate use of Operators
e) Perform operations on data structures in Python.
d) Develop functions for given problem.
e) Design classes for given problem.
f) Handle exceptions

4.Proposed Methodology:-

Patient information system is an organized systematic process of maintaining the information and the
health records of the patient. Its prime focus is only on keeping of the clinical records of the patient with
every single data that will aid with the delivery of the patient. It does not include the billings or any other
data related to the finance. This system helps maintain every single data from the second the patient sets
foot in the hospital up till every follow-ups in real time.

pg. 1 Swami Vivekanand Institute Of Polytechnic


PATIENT INFORMATION SYSTEM

5. Action plan:
Sr. Planned Planned Name of Responsible
Details of Activity
No. start Date Finish Date Team Members
Gathering The Raw
1. Information Related 04/01/2024 12/01/2024
To Project
Miss.Chikate S.D.
2. Analysis 21/01/2024 28/01/2024
3. Designing 05/02/2024 15/02/2024 Miss.Veer J.B.
4. Implement of Coding 17/02/2024 26/02/2024 Miss.Usturge R.D.
5. Testing of Project 01/03/2024 05/03/2024
Miss.Suryawanshi P.M.
6. Deployment of Module 05/03/2024 09/03/2024
7. Prepare Out Put 10/03/2024 16/03/2024
Prepare Report on
8.
Micro Project
25/03/2024 26/03/2024

6. Resources used:-
Name of
Sr. resources required
Specification Quantity Remarks
No.

1. Computers Windows 10 1

2. Editor Notepad ++ 1 To Edit the Source


code

3. Assembler Python IDE 1 To run assembly


code

➢ Name of Team Members:-


Miss.Chikate S.D.
Miss.Veer J.B.
Miss.Usturge R.D.
Miss.Suryawanshi P.M.

pg. 2 Swami Vivekanand Institute Of Polytechnic


PATIENT INFORMATION SYSTEM

Part- B Plan
PATIENT INFORMATION SYSTEM
1. Rationale:-

Python is powerful programming language. It has efficient high-level data structures and a simple but
effective approach to object-oriented programming. Python code is simple, short, readable, intuitive, and
powerful, and thus it is effective for introducing computing and problem solving to beginners. It's elegant
syntax and dynamic typing, together with its interpreted nature, make it an ideal language for scripting
and rapid application development in many areas on most platforms.

2. Brief Description:-

Patient information system is an organized systematic process of maintaining the information and the
health records of the patient. Its prime focus is only on keeping of the clinical records of the patient with
every single data that will aid with the delivery of the patient. It does not include the billings or any other
data related to the finance. This system helps maintain every single data from the second the patient sets
foot in the hospital up till every follow-ups in real time. There’s both paper version and the electronic
version. The EMR (Electronic Medical Record) is more effective for accumulation and storage for every
tiny detail.

3. Aims of the micro project:-


Daily many new patients visit the clinic so adding the new patient’s details and keeping the records using it
is very easy. There is also an option to add and delete doctors and other staff member’s details.New and
unique ids are given to everyone who gets registered over this system. There are also the options to check
the patient’s disease and course the patient is going through.

4. Course Outcomes Achieved:-

a) Display message on screen using Python script on IDE.


b) Develop python program to demonstrate use of Operators
e) Perform operations on data structures in Python.
d) Develop functions for given problem.
e) Design classes for given problem.
f) Handle exceptions

pg. 3 Swami Vivekanand Institute Of Polytechnic


PATIENT INFORMATION SYSTEM

5. Actual Methodology Followed

This system is named as Patient information management system. This system is designed to easily
maintain the data of the patients specifically. This system is made to keep the records about the
patients system there are the options to add new patients, new doctors and other new staff members
like nurses and ward boys etc.

Daily many new patients visit the clinic so adding the new patient’s details and keeping the records
using it is very easy. There is also an option to add and delete doctors and other staff member’s
details.New and unique ids are given to everyone who gets registered over this system. There are also
the options to check the patient’s disease and course the patient is going through.

Modules of patient management system

• Receptionist:
• Login:
• Adding New Patients:
• Keeping Treatment Details:
• Maintaining Records:
• Medicine Prescription:
• Doctors:
• Adding and Deleting Other Staff Members:

Functional Requirements of Patient Information Management System:-

The functional requirement of this is that it does what it is meant for. A functional requirement describes what
a software system should do, while non-functional requirements place constraints on how the system will do
so.Few of its functional requirements are as given below:-

• Source code:

import tkinter

import tkinter.ttk

import tkinter. messagebox


pg. 4 Swami Vivekanand Institute Of Polytechnic
PATIENT INFORMATION SYSTEM

import sqlite3

class Database:

def __init__(self):

self.dbConnection = sqlite3.connect("dbFile.db")

self.dbCursor = self.dbConnection.cursor()

self.dbCursor.execute("CREATE TABLE IF NOT EXISTS patient_info (id PRIMARYKEY text,

fName text, lName text, dob text, mob text, yob text, gender text, address text, phone text, email text,

bloodGroup text, history text, doctor text)")

def __del__(self):

self.dbCursor.close()

self.dbConnection.close()

def Update(self, fName, lName, dob, mob, yob, gender, address, phone, email, bloodGroup, history, doctor,
id):

self.dbCursor.execute("UPDATE patient_info SET fName = ?, lName = ?, dob = ?, mob = ?, yob =

?, gender = ?, address = ?, phone = ?, email = ?, bloodGroup = ?, history = ?, doctor = ? WHERE id = ?",

(fName, lName, dob, mob, yob, gender, address, phone, email, bloodGroup, history, doctor, id))

self.dbConnection.commit()

def Search(self, id):

self.dbCursor.execute("SELECT * FROM patient_info WHERE id = ?", (id, ))

searchResults = self.dbCursor.fetchall()

return searchResults

class Values:

def Validate(self, id, fName, lName, phone, email, history, doctor):

if not (id.isdigit() and (len(id) == 3)):

return "id"
elif not (fName.isalpha()):

return "fName"

elif not (lName.isalpha()):

return "lName"
pg. 5 Swami Vivekanand Institute Of Polytechnic
PATIENT INFORMATION SYSTEM

elif not (phone.isdigit() and (len(phone) == 10)):

return "phone"

elif not (email.count("@") == 1 and email.count(".") > 0):

return "email"

elif not (history.isalpha()):

return "history"

elif not (doctor.isalpha()):

return "doctor"

else:

return "SUCCESS"

class InsertWindow:

def __init__(self):

self.window = tkinter.Tk()

self.window.wm_title("Insert data")

self.id = tkinter.StringVar()

self.fName = tkinter.StringVar()

self.lName = tkinter.StringVar()

self.address = tkinter.StringVar()

self.phone = tkinter.StringVar()

self.email = tkinter.StringVar()

self.history = tkinter.StringVar()

self.doctor = tkinter.StringVar()

self.genderList = ["Male", "Female", "Transgender", "Other"]

self.yearList = list(range(1900, 2020))

self.bloodGroupList = ["A+", "A-", "B+", "B-", "O+", "O-", "AB+", "AB-"]


tkinter.Label(self.window, text = "Patient ID", width = 25).grid(pady = 5, column = 1, row = 1)

tkinter.Label(self.window, text = "First Name", width = 25).grid(pady = 5, column = 1, row = 2)

tkinter.Label(self.window, text = "Last Name", width = 25).grid(pady = 5, column = 1, row = 3)

pg. 6 Swami Vivekanand Institute Of Polytechnic


PATIENT INFORMATION SYSTEM

tkinter.Label(self.window, text = "D.O.B", width = 25).grid(pady = 5, column = 1, row = 4)

tkinter.Label(self.window, text = "M.O.B", width = 25).grid(pady = 5, column = 1, row = 5)

tkinter.Label(self.window, text = "Y.O.B", width = 25).grid(pady = 5, column = 1, row = 6)

self.idEntry = tkinter.Entry(self.window, width = 25, textvariable = self.id)

self.fNameEntry = tkinter.Entry(self.window, width = 25, textvariable = self.fName)

self.lNameEntry = tkinter.Entry(self.window, width = 25, textvariable = self.lName)

self.addressEntry = tkinter.Entry(self.window, width = 25, textvariable = self.address)

self.phoneEntry = tkinter.Entry(self.window, width = 25, textvariable = self.phone)

self.emailEntry = tkinter.Entry(self.window, width = 25, textvariable = self.email)

self.historyEntry = tkinter.Entry(self.window, width = 25, textvariable = self.history)

self.doctorEntry = tkinter.Entry(self.window, width = 25, textvariable = self.doctor)

self.idEntry.grid(pady = 5, column = 3, row = 1)

self.fNameEntry.grid(pady = 5, column = 3, row = 2)

self.lNameEntry.grid(pady = 5, column = 3, row = 3)

self.addressEntry.grid(pady = 5, column = 3, row = 8)

self.emailEntry.grid(pady = 5, column = 3, row = 10)

self.historyEntry.grid(pady = 5, column = 3, row = 12)

self.doctorEntry.grid(pady = 5, column = 3, row = 13)

self.dobBox = tkinter.ttk.Combobox(self.window, values = self.dateList, width = 20)

self.mobBox = tkinter.ttk.Combobox(self.window, values = self.monthList, width = 20)

self.yobBox = tkinter.ttk.Combobox(self.window, values = self.yearList, width = 20)

self.genderBox = tkinter.ttk.Combobox(self.window, values = self.genderList, width = 20)

self.bloodGroupBox = tkinter.ttk.Combobox(self.window, values = self.bloodGroupList, width = 20)

self.dobBox.grid(pady = 5, column = 3, row = 4)

self.mobBox.grid(pady = 5, column = 3, row = 5)

self.yobBox.grid(pady = 5, column = 3, row = 6)

self.genderBox.grid(pady = 5, column = 3, row = 7)

tkinter.Button(self.window, width = 20, text = "Reset", command = self.Reset).grid(pady = 15, padx

pg. 7 Swami Vivekanand Institute Of Polytechnic


PATIENT INFORMATION SYSTEM

tkinter.Button(self.window, width = 20, text = "Close", command = self.window.destroy).grid(pady

= 15, padx = 5, column = 3, row = 14)


self.window.mainloop()

self.fName = tkinter.StringVar()

self.lName = tkinter.StringVar()

self.address = tkinter.StringVar()

self.phone = tkinter.StringVar()

self.email = tkinter.StringVar()

self.history = tkinter.StringVar()

self.doctor = tkinter.StringVar()

self.genderList = ["Male", "Female", "Transgender", "Other"]

self.monthList = ["January", "February", "March", "April", "May", "June", "July", "August",

"September", "October", "November", "December"]

self.yearList = list(range(1900, 2020))

tkinter.Label(self.window, text = "Gender", width = 25).grid(pady = 5, column = 1, row = 7)

tkinter.Label(self.window, text = "Home Address", width = 25).grid(pady = 5, column = 1, row = 8)

tkinter.Label(self.window, text = "Blood Group", width = 25).grid(pady = 5, column = 1, row = 11)

tkinter.Label(self.window, text = "Patient History", width = 25).grid(pady = 5, column = 1, row = 12)

tkinter.Label(self.window, text = "Doctor", width = 25).grid(pady = 5, column = 1, row = 13)

# Set previous values

self.database = Database()

self.searchResults = self.database.Search(id)

tkinter.Label(self.window, text = self.searchResults[0][1], width = 25).grid(pady = 5, column = 2, row = 2

tkinter.Label(self.window, text = self.searchResults[0][2], width = 25).grid(pady = 5, column = 2, row = 3

tkinter.Label(self.window, text = self.searchResults[0][3], width = 25).grid(pady = 5, column = 2, row = 4

tkinter.Label(self.window, text = self.searchResults[0][4], width = 25).grid(pady = 5, column = 2, row =5

self.fNameEntry = tkinter.Entry(self.window, width = 25, textvariable = self.fName)

self.lNameEntry = tkinter.Entry(self.window, width = 25, textvariable = self.lName)


pg. 8 Swami Vivekanand Institute Of Polytechnic
PATIENT INFORMATION SYSTEM

self.lNameEntry.grid(pady = 5, column = 3, row = 3)

self.phoneEntry.delete(0, tkinter.END)

self.emailEntry.delete(0, tkinter.END)

self.bloodGroupBox.set("")

self.historyEntry.delete(0, tkinter.END)

self.doctorEntry.delete(0, tkinter.END)

class DatabaseView:

def __init__(self, data):

self.databaseViewWindow = tkinter.Tk()

self.databaseViewWindow.wm_title("Database View")

self.fName = tkinter.StringVar()

self.lName = tkinter.StringVar()

self.heading = "Please enter Patient ID to " + task

tkinter.Label(window, text = "Patient ID", width = 10).grid(pady = 5, row = 2)

self.idEntry = tkinter.Entry(window, width = 5, textvariable = self.id)

self.idEntry.grid(pady = 5, row = 3)

# Button widgets

if (task == "Search"):

tkinter.Button(window, width = 20, text = task, command = self.Search).grid(pady = 15, padx = 5,


column = 1, row = 14)
elif (task == "Delete"):
tkinter.Button(window, width = 20, text = task, command = self.Delete).grid(pady = 15, padx = 5,
colun = 1, row = 14)
def Search(self):
self.database = Database()
self.data = self.database.Search(self.idEntry.get())

self.databaseView = DatabaseView(self.data)

pg. 9 Swami Vivekanand Institute Of Polytechnic


PATIENT INFORMATION SYSTEM

def Delete(self):

self.database = Database()

self.database.Delete(self.idEntry.get())

class HomePage:

def __init__(self):

tkinter.Button(self.homePageWindow, width = 20, text = "Delete", command =

self.Delete).grid(pady = 15, column = 1, row = 5)

tkinter.Button(self.homePageWindow, width = 20, text = "Display", command =

self.Display).grid(pady = 15, column = 1, row = 6

self.insertWindow = InsertWindow()

tkinter.Button(self.updateIDWindow, width = 20, text = "Update", command =

self.updateID).grid(pady = 10, row = 3)

self.updateIDWindow.mainloop()

def updateID(self):

self.updateWindow = UpdateWindow(self.idEntry.get())

self.updateIDWindow.destroy()

def Search(self):

self.searchWindow = SearchDeleteWindow("Search")

def Delete(self):

self.deleteWindow = SearchDeleteWindow("Delete")

def Display(self):

self.database = Database()

self.data = self.database.Display()

self.displayWindow = DatabaseView(self.data)

homePage = HomePage()

pg. 10 Swami Vivekanand Institute Of Polytechnic


PATIENT INFORMATION SYSTEM

6. Actual Resources used:-

Name of
Sr. resources required Specification Quantity Remarks
No.

1. Computers Windows 10 1

2. Editor Notepad ++ 1 To Edit the Source


code

3. Assembler Python IDE 1 To run assembly


code

7. Action plan:

Sr. Planned Planned Name of Responsible


Details of Activity
No. start Date Finish Date Team Members
Gathering The
1. Raw Information 04/01/2024 12/01/2024
Related To Project
2. Analysis 21/01/2024 28/01/2024 Miss.Chikate S.D.
3. Designing 05/02/2024 15/02/2024 Miss.Veer J.B.
Implement of
4. 17/02/2024 26/02/2024 Miss.Usturge R.D.
Coding
5. Testing of Project 01/03/2024 05/03/2024 Miss.Suryawanshi P.M.
Deployment of
6. 05/03/2024 09/03/2024
Module
7. Prepare Out Put 10/03/2024 16/03/2024
Prepare Report on
8. 25/03/2024 26/03/2024
Micro Project

8. Output of micro project:-

pg. 11 Swami Vivekanand Institute Of Polytechnic


PATIENT INFORMATION SYSTEM

pg. 12 Swami Vivekanand Institute Of Polytechnic


PATIENT INFORMATION SYSTEM

9. Skill developed/learning outcomes of this micro project


There are so many things we learn from this project

• Presentation Skill
• Communication Skill
• Programming Skill
• Logic Development Skill

10. Application of the micro project

➢ Achieve good quality ratings


➢ Better revenue management
➢ Avoid errors and track every single detail
➢ Improved clinical decision-making
➢ Improve data security
➢ Establish your hospital as technically advanced
.

pg. 13 Swami Vivekanand Institute Of Polytechnic


PATIENT INFORMATION SYSTEM

You might also like