Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create doctorAppointment.cpp #128

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
237 changes: 237 additions & 0 deletions Codes/doctorAppointment.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,237 @@
#include <iostream>
#include <string>
#include <fstream>
#include <cstring>

using namespace std;

int bookAppointment()
{
system("cls");

cout<<"\n ----- Book Your Appointment ---- \n";
cout<<"\n ----- Availbale slots ---- \n";

//check if record already exist..
ifstream read;
read.open("appointment.dat");

int hoursbook = 8;

int arr[13] = {0,0,0,0,0,0,0,0,0,0,0,0,0};
int recordFound =0;

if(read)
{
string line;
char key = 'A';
int i = 9;

while(getline(read, line)) {
char temp = line[0];
int index = (temp - 65);
arr[index]=1;
recordFound = 1;
}
if(recordFound == 1)
{
cout<<"\n Appointment Summary by hours:";
char key = 'A';
int hours = 9;
for(int i = 0; i<=12; i++)
{
if(i == 0){
if(arr[i] == 0)
cout<<"\n "<<key<<"-> 0"<<hours<<" - Available";
else
cout<<"\n "<<key<<"-> 0"<<hours<<" - Booked";
}

else
{
if(arr[i] == 0)
cout<<"\n "<<key<<"->"<<hours<<" - Available";
else
cout<<"\n "<<key<<"->"<<hours<<" - Booked";
}
hours++; key++;
}

}

read.close();
}
if(recordFound == 0){
cout<<"\n Appointment Available for following hours :";
char key = 'A';
for(int i = 9; i<=21; i++)
{
if(i==9)
cout<<"\n "<<key<<" -> 0"<<i<<" - Available";
else
cout<<"\n "<<key<<" -> "<<i<<" - Available";
key++;
}

}

char choice;
cout<<"\n\n Input your choice : ";
cin>>choice;

if( !(choice >= 'A' && choice <='Z'))
{
cout<"\n Error : Invalid Selection";
cout<<"\n Please selction correct value from menu A- Z";
cout<"\n Press any key to continue";
getchar();getchar();
system("cls");
bookAppointment();
}

int index = (choice-65 );
int isBooked = 1;
if(arr[index] == 0)
isBooked = 0;

if(isBooked ==1)
{
cout<<"\n Error : Appointment is already booked for this Hour";
cout<<"\n Please select different time !!";
cout<<"\n Press any key to continue!!";
getchar();getchar();
system("cls");
bookAppointment();
}

string name;
cout<<"\n Enter your first name:";
cin>>name;

ofstream out;
out.open("appointment.dat", ios::app);

if(out){
out<<choice<<":"<<name.c_str()<<"\n";
out.close();
cout<<"\n Appointment booked for Hours : "<< (choice-65) + 9 <<" successfully !!";
}
else
{
cout<<"\n Error while saving booking";
}

cout<<"\n Please any key to continue..";
getchar(); getchar();
return 0;
}

int existingAppointment()
{
system("cls");
cout<<"\n ----- Appointments Summary ---- \n";
//check if record already exist..
ifstream read;
read.open("appointment.dat");

int hoursbook = 8;

int arr[13] = {0,0,0,0,0,0,0,0,0,0,0,0,0};
int recordFound =0;

if(read)
{
string line;
char key = 'A';
int i = 9;

while(getline(read, line)) {
char temp = line[0];
int index = (temp - 65);
arr[index]=1;
recordFound = 1;
}
if(recordFound == 1)
{
cout<<"\n Appointment Summary by hours:";
char key = 'A';
int hours = 9;
for(int i = 0; i<=12; i++)
{
if(arr[i] == 0)
cout<<"\n "<<key<<"->"<<hours<<" - Available";
else
cout<<"\n "<<key<<"->"<<hours<<" - Booked";
hours++; key++;
}

}

read.close();
}
else
{
char key = 'A';
for(int i = 9; i<=21; i++)
{
if(i==9)
cout<<"\n "<<key<<" -> 0"<<i<<" - Available";
else
cout<<"\n "<<key<<" -> "<<i<<" - Available";
key++;
}
}

cout<<"\n Please any key to continue..";
getchar(); getchar();
return 0;
}



int main(int argc, char** argv) {
while(1)
{
system("cls");
cout<<"\t\t\tDoctor Appointment System\n";
cout<<"----------------------------------------\n\n";

cout<<"1. Book Appointment\n";
cout<<"2. Check Existing Appointment\n";
cout<<"0. Exit\n";
int choice;

cout<<"\n Enter you choice: ";
cin>>choice;

switch(choice)
{
case 1: bookAppointment(); break;
case 2: existingAppointment(); break;
case 0:
while(1)
{
system("cls");
cout<<"\n Are you sure, you want to exit? y | n \n";
char ex;
cin>>ex;
if(ex == 'y' || ex == 'Y')
exit(0);
else if(ex == 'n' || ex == 'N')
{
break;
}
else{
cout<<"\n Invalid choice !!!";
getchar();
}
} break;

default: cout<<"\n Invalid choice. Enter again ";
getchar();

}

}
return 0;
}