Code
Code
import csv
from datetime import datetime
def display_menu():
print("\nHospital Management System Menu:")
print("1. Admit a Patient")
print("2. Update Paid Fees")
print("3. Generate Bill")
print("4. Exit")
def get_patient_number():
with open("hospital_records.csv", "r") as file:
reader = csv.reader(file)
records = list(reader)
return str(1 + len(records))
def admit_patient():
patient_number = get_patient_number()
patient_name = input("Enter Patient's First Name: ")
last_name = input("Enter Patient's Last Name: ")
guardian_name = input("Enter Guardian's Name: ")
dob = int(input("Enter Date of Birth (YYYYMMDD): "))
admitting_date = int(input("Enter Admitting Date (YYYYMMDD): "))
phone_number = input("Enter Phone Number (10 digits): ")
while len(phone_number) != 10 or not phone_number.isdigit():
print("Invalid phone number. Please enter a 10-digit number.")
phone_number = input("Enter Phone Number (10 digits): ")
doctor_name = input("Enter Consultant Doctor's Name: ")
room_number = input("Enter Room Number: ")
total_fees = float(input("Enter Total Fees: "))
paid_fees = float(input("Enter Paid Fees: "))
def update_paid_fees():
patient_number = input("Enter Patient Number: ")
def generate_bill():
patient_number = input("Enter Patient Number: ")
if remaining_fees > 0:
update_paid_fees()
else:
discharge_date = datetime.now().strftime("%Y%m%d")
print("\nBill Details:")
print(f"Patient Number: {record[0]}")
print(f"Patient Name: {record[1]} {record[2]}")
print(f"Guardian Name: {record[3]}")
print(f"Date of Birth: {record[4]}")
print(f"Admitting Date: {record[5]}")
print(f"Consultant Doctor: {record[7]}")
print(f"Room Number: {record[8]}")
print(f"Total Fees: {total_fees}")
print(f"Paid Fees: {paid_fees}")
print(f"Remaining Fees: {remaining_fees}")
print(f"Discharge Date: {discharge_date}")
return
if choice == "1":
admit_patient()
elif choice == "2":
update_paid_fees()
elif choice == "3":
generate_bill()
elif choice == "4":
print("Exiting Hospital Management System.")
break
else:
print("Invalid choice. Please enter a number between 1 and 4.")