Java project prepared by IT 2nd year
section 2 group 5 students
package pharmacy;
import [Link].*;
interface Manageable {
void register();
void displayDetails();
void update();
void delete();
abstract class Person {
private String id;
private String name;
private String email;
private String phone;
private String address;
public Person(String id, String name, String email, String phone, String address) {
[Link] = id;
[Link] = name;
[Link] = email;
[Link] = phone;
[Link] = address;
}
public String getId() { return id; }
public void setId(String newId) { id = newId; }
public String getName() { return name; }
public void setName(String newName) { name = newName; }
public String getEmail() { return email; }
public void setEmail(String newEmail) { email = newEmail; }
public String getPhone() { return phone; }
public void setPhone(String newPhone) { phone = newPhone; }
public String getAddress() { return address; }
public void setAddress(String newAddress) { address = newAddress; }
public abstract void showInfo();
class Pharmacist extends Person implements Manageable {
private String licenseNumber;
private double salary;
private String shift;
private String specialization;
public Pharmacist(String id, String name, String email, String phone, String address,
String licenseNumber, double salary, String shift, String specialization) {
super(id, name, email, phone, address);
[Link] = licenseNumber;
[Link] = salary;
[Link] = shift;
[Link] = specialization;
public String getLicenseNumber() { return licenseNumber; }
public void setLicenseNumber(String newLicense) { licenseNumber = newLicense; }
public double getSalary() { return salary; }
public void setSalary(double newSalary) { salary = newSalary; }
public String getShift() { return shift; }
public void setShift(String newShift) { shift = newShift; }
public String getSpecialization() { return specialization; }
public void setSpecialization(String newSpecialization) { specialization = newSpecialization; }
@Override
public void register() {
[Link](" Pharmacist " + getName() + " registered successfully! ✅");
@Override
public void showInfo() {
[Link]("🆔 ID: " + getId());
[Link]("👤 Name: " + getName());
[Link]("📧 Email: " + getEmail());
[Link]("📞 Phone: " + getPhone());
[Link]("📜 License: " + licenseNumber);
[Link]("💰 Salary: $" + salary);
[Link]("🕐 Shift: " + shift);
[Link]("🎯 Specialization: " + specialization);
@Override
public void displayDetails() {
[Link]("\n === PHARMACIST DETAILS ===");
showInfo();
[Link]("🎊 ============================\n");
@Override
public void update() {
[Link]("✏️ Updating Pharmacist: " + getName());
Scanner scanner = new Scanner([Link]);
[Link]("💰 Enter new salary: $");
setSalary([Link]());
[Link]();
[Link]("🕐 Enter new shift: ");
setShift([Link]());
[Link](" Pharmacist updated successfully!");
@Override
public void delete() {
[Link](" 🚫 Deleting Pharmacist: " + getName());
[Link](" Pharmacist deleted successfully!");
public void promote() {
salary += 1500;
[Link]("🎊 🎉 " + getName() + " promoted! 💰 New salary: $" + salary);
class Patient extends Person implements Manageable {
private String bloodGroup;
private String insuranceNumber;
private String medicalHistory;
private List<String> prescriptions;
public Patient(String id, String name, String email, String phone, String address,
String bloodGroup, String insuranceNumber, String medicalHistory) {
super(id, name, email, phone, address);
[Link] = bloodGroup;
[Link] = insuranceNumber;
[Link] = medicalHistory;
[Link] = new ArrayList<>();
public String getBloodGroup() { return bloodGroup; }
public void setBloodGroup(String newBloodGroup) { bloodGroup = newBloodGroup; }
public String getInsuranceNumber() { return insuranceNumber; }
public void setInsuranceNumber(String newInsurance) { insuranceNumber = newInsurance; }
public String getMedicalHistory() { return medicalHistory; }
public void setMedicalHistory(String newHistory) { medicalHistory = newHistory; }
public List<String> getPrescriptions() { return prescriptions; }
public void addPrescription(String prescription) { [Link](prescription); }
@Override
public void register() {
[Link](" Patient " + getName() + " registered successfully! ✅");
@Override
public void showInfo() {
[Link]("🆔 ID: " + getId());
[Link]("👤 Name: " + getName());
[Link]("📧 Email: " + getEmail());
[Link]("📞 Phone: " + getPhone());
[Link]("🩸 Blood Group: " + bloodGroup);
[Link]("🏥 Insurance: " + insuranceNumber);
[Link]("📋 Medical History: " + medicalHistory);
[Link]("💊 Prescriptions: " + prescriptions);
@Override
public void displayDetails() {
[Link]("\n === PATIENT DETAILS ===");
showInfo();
[Link]("🎊 ===========================\n");
}
@Override
public void update() {
[Link]("✏️ Updating Patient: " + getName());
Scanner scanner = new Scanner([Link]);
[Link]("📋 Enter new medical history: ");
setMedicalHistory([Link]());
[Link]("🏥 Enter new insurance number: ");
setInsuranceNumber([Link]());
[Link](" Patient updated successfully!");
@Override
public void delete() {
[Link](" 🚫 Deleting Patient: " + getName());
[Link](" Patient deleted successfully!");
public void addNewPrescription() {
Scanner scanner = new Scanner([Link]);
[Link]("💊 Enter prescription to add: ");
String medicine = [Link]();
[Link](medicine);
[Link]("✅ 💊 Added prescription: " + medicine);
class Drug implements Manageable {
private String drugId;
private String drugName;
private String manufacturer;
private double price;
private int quantity;
private String category;
public Drug(String drugId, String drugName, String manufacturer, double price,
int quantity, String category) {
[Link] = drugId;
[Link] = drugName;
[Link] = manufacturer;
[Link] = price;
[Link] = quantity;
[Link] = category;
public String getDrugId() { return drugId; }
public void setDrugId(String newId) { drugId = newId; }
public String getDrugName() { return drugName; }
public void setDrugName(String newName) { drugName = newName; }
public String getManufacturer() { return manufacturer; }
public void setManufacturer(String newManufacturer) { manufacturer = newManufacturer; }
public double getPrice() { return price; }
public void setPrice(double newPrice) { price = newPrice; }
public int getQuantity() { return quantity; }
public void setQuantity(int newQuantity) { quantity = newQuantity; }
public String getCategory() { return category; }
public void setCategory(String newCategory) { category = newCategory; }
@Override
public void register() {
[Link]("🎉 💊 Drug " + drugName + " registered successfully! ✅");
@Override
public void displayDetails() {
[Link]("\n✨ === 💊 DRUG DETAILS 💊 ===");
[Link]("🆔 Drug ID: " + drugId);
[Link]("💊 Name: " + drugName);
[Link]("🏭 Manufacturer: " + manufacturer);
[Link]("💰 Price: $" + price);
[Link]("📦 Quantity: " + quantity);
[Link]("📁 Category: " + category);
[Link]("🎊 =======================\n");
@Override
public void update() {
[Link]("✏️ Updating Drug: " + drugName);
Scanner scanner = new Scanner([Link]);
[Link]("💰 Enter new price: $");
setPrice([Link]());
[Link]("📦 Enter new quantity: ");
setQuantity([Link]());
[Link]("✅ 💊 Drug updated successfully!");
@Override
public void delete() {
[Link](" 🚫 Deleting Drug: " + drugName);
[Link]("❌ 💊 Drug deleted successfully!");
}
public void restock() {
Scanner scanner = new Scanner([Link]);
[Link]("📦 Enter quantity to restock: ");
int additionalQuantity = [Link]();
quantity += additionalQuantity;
[Link]("✅ 📦 Restocked " + additionalQuantity + " units. Total: " + quantity);
public void sell() {
Scanner scanner = new Scanner([Link]);
[Link]("💰 Enter quantity to sell: ");
int soldQuantity = [Link]();
if (quantity >= soldQuantity) {
quantity -= soldQuantity;
[Link]("✅ 💰 Sold " + soldQuantity + " units. Remaining: " + quantity);
} else {
[Link]("❌ 🚫 Insufficient stock!");
class PharmacyManager {
private List<Pharmacist> pharmacists = new ArrayList<>();
private List<Patient> patients = new ArrayList<>();
private List<Drug> drugs = new ArrayList<>();
private Scanner scanner = new Scanner([Link]);
public void showMainMenu() {
while (true) {
[Link]("\n🎪 " + "=".repeat(50));
[Link](" 🏥 PHARMACY MANAGEMENT SYSTEM 🏥");
[Link]("🎪 " + "=".repeat(50));
[Link](" 1. Manage Pharmacists");
[Link](" 2. Manage Patients");
[Link]("💊 3. Manage Drugs");
[Link]("📊 4. Show All Records");
[Link]("🚪 5. Exit");
[Link]("🎪 " + "=".repeat(50));
[Link]("🎯 Enter your choice: ");
int choice = [Link]();
[Link]();
switch (choice) {
case 1: managePharmacists(); break;
case 2: managePatients(); break;
case 3: manageDrugs(); break;
case 4: showAllRecords(); break;
case 5:
[Link]("👋 Thank you for using Pharmacy System! 🎉");
return;
default: [Link]("❌ Invalid choice! Please try again.");
private void managePharmacists() {
while (true) {
[Link]("\n🎪 " + "=".repeat(40));
[Link](" PHARMACIST MANAGEMENT ");
[Link]("🎪 " + "=".repeat(40));
[Link]("📝 1. Add Pharmacist");
[Link]("👀 2. View All Pharmacists");
[Link]("🔍 3. Search Pharmacist");
[Link]("✏️ 4. Update Pharmacist");
[Link](" 5. Delete Pharmacist");
[Link]("📈 6. Promote Pharmacist");
[Link]("↩️ 7. Back to Main Menu");
[Link]("🎪 " + "=".repeat(40));
[Link]("🎯 Enter your choice: ");
int choice = [Link]();
[Link]();
switch (choice) {
case 1: addPharmacist(); break;
case 2: viewAllPharmacists(); break;
case 3: searchPharmacist(); break;
case 4: updatePharmacist(); break;
case 5: deletePharmacist(); break;
case 6: promotePharmacist(); break;
case 7: return;
default: [Link]("❌ Invalid choice!");
private void addPharmacist() {
[Link]("\n✨ === ADD NEW PHARMACIST === ✨");
[Link]("🆔 Enter ID: ");
String id = [Link]();
[Link]("👤 Enter Name: ");
String name = [Link]();
[Link]("📧 Enter Email: ");
String email = [Link]();
[Link]("📞 Enter Phone: ");
String phone = [Link]();
[Link]("🏠 Enter Address: ");
String address = [Link]();
[Link]("📜 Enter License Number: ");
String license = [Link]();
[Link]("💰 Enter Salary: $");
double salary = [Link]();
[Link]();
[Link]("🕐 Enter Shift: ");
String shift = [Link]();
[Link]("🎯 Enter Specialization: ");
String specialization = [Link]();
Pharmacist pharmacist = new Pharmacist(id, name, email, phone, address, license, salary,
shift, specialization);
[Link](pharmacist);
[Link]();
private void viewAllPharmacists() {
[Link]("\n👀 === ALL PHARMACISTS === 👀");
if ([Link]()) {
[Link]("📭 No pharmacists found!");
return;
for (Pharmacist p : pharmacists) {
[Link]();
private void searchPharmacist() {
[Link]("🔍 Enter Pharmacist ID to search: ");
String id = [Link]();
for (Pharmacist p : pharmacists) {
if ([Link]().equals(id)) {
[Link]("🎯 Pharmacist found!");
[Link]();
return;
[Link]("❌ Pharmacist not found!");
private void updatePharmacist() {
[Link]("✏️Enter Pharmacist ID to update: ");
String id = [Link]();
for (Pharmacist p : pharmacists) {
if ([Link]().equals(id)) {
[Link]();
return;
[Link]("❌ Pharmacist not found!");
private void deletePharmacist() {
[Link](" Enter Pharmacist ID to delete: ");
String id = [Link]();
for (Pharmacist p : pharmacists) {
if ([Link]().equals(id)) {
[Link]();
[Link](p);
return;
[Link]("❌ Pharmacist not found!");
private void promotePharmacist() {
[Link]("📈 Enter Pharmacist ID to promote: ");
String id = [Link]();
for (Pharmacist p : pharmacists) {
if ([Link]().equals(id)) {
[Link]();
return;
[Link]("❌ Pharmacist not found!");
private void managePatients() {
while (true) {
[Link]("\n🎪 " + "=".repeat(40));
[Link](" PATIENT MANAGEMENT ");
[Link]("🎪 " + "=".repeat(40));
[Link]("📝 1. Add Patient");
[Link]("👀 2. View All Patients");
[Link]("🔍 3. Search Patient");
[Link]("✏️ 4. Update Patient");
[Link](" 5. Delete Patient");
[Link]("💊 6. Add Prescription");
[Link]("↩️ 7. Back to Main Menu");
[Link]("🎪 " + "=".repeat(40));
[Link]("🎯 Enter your choice: ");
int choice = [Link]();
[Link]();
switch (choice) {
case 1: addPatient(); break;
case 2: viewAllPatients(); break;
case 3: searchPatient(); break;
case 4: updatePatient(); break;
case 5: deletePatient(); break;
case 6: addPrescription(); break;
case 7: return;
default: [Link]("❌ Invalid choice!");
private void addPatient() {
[Link]("\n✨ === ADD NEW PATIENT === ✨");
[Link]("🆔 Enter ID: ");
String id = [Link]();
[Link]("👤 Enter Name: ");
String name = [Link]();
[Link]("📧 Enter Email: ");
String email = [Link]();
[Link]("📞 Enter Phone: ");
String phone = [Link]();
[Link]("🏠 Enter Address: ");
String address = [Link]();
[Link]("🩸 Enter Blood Group: ");
String bloodGroup = [Link]();
[Link]("🏥 Enter Insurance Number: ");
String insurance = [Link]();
[Link]("📋 Enter Medical History: ");
String history = [Link]();
Patient patient = new Patient(id, name, email, phone, address, bloodGroup, insurance,
history);
[Link](patient);
[Link]();
private void viewAllPatients() {
[Link]("\n👀 === ALL PATIENTS === 👀");
if ([Link]()) {
[Link]("📭 No patients found!");
return;
for (Patient p : patients) {
[Link]();
}
private void searchPatient() {
[Link]("🔍 Enter Patient ID to search: ");
String id = [Link]();
for (Patient p : patients) {
if ([Link]().equals(id)) {
[Link]("🎯 Patient found!");
[Link]();
return;
[Link]("❌ Patient not found!");
private void updatePatient() {
[Link]("✏️Enter Patient ID to update: ");
String id = [Link]();
for (Patient p : patients) {
if ([Link]().equals(id)) {
[Link]();
return;
}
}
[Link]("❌ Patient not found!");
private void deletePatient() {
[Link](" Enter Patient ID to delete: ");
String id = [Link]();
for (Patient p : patients) {
if ([Link]().equals(id)) {
[Link]();
[Link](p);
return;
[Link]("❌ Patient not found!");
private void addPrescription() {
[Link]("💊 Enter Patient ID to add prescription: ");
String id = [Link]();
for (Patient p : patients) {
if ([Link]().equals(id)) {
[Link]();
return;
}
[Link]("❌ Patient not found!");
private void manageDrugs() {
while (true) {
[Link]("\n🎪 " + "=".repeat(40));
[Link](" 💊 DRUG MANAGEMENT 💊");
[Link]("🎪 " + "=".repeat(40));
[Link]("📝 1. Add Drug");
[Link]("👀 2. View All Drugs");
[Link]("🔍 3. Search Drug");
[Link]("✏️ 4. Update Drug");
[Link](" 5. Delete Drug");
[Link]("📦 6. Restock Drug");
[Link]("💰 7. Sell Drug");
[Link]("↩️ 8. Back to Main Menu");
[Link]("🎪 " + "=".repeat(40));
[Link]("🎯 Enter your choice: ");
int choice = [Link]();
[Link]();
switch (choice) {
case 1: addDrug(); break;
case 2: viewAllDrugs(); break;
case 3: searchDrug(); break;
case 4: updateDrug(); break;
case 5: deleteDrug(); break;
case 6: restockDrug(); break;
case 7: sellDrug(); break;
case 8: return;
default: [Link]("❌ Invalid choice!");
private void addDrug() {
[Link]("\n✨ === ADD NEW DRUG === ✨");
[Link]("🆔 Enter Drug ID: ");
String id = [Link]();
[Link]("💊 Enter Drug Name: ");
String name = [Link]();
[Link]("🏭 Enter Manufacturer: ");
String manufacturer = [Link]();
[Link]("💰 Enter Price: $");
double price = [Link]();
[Link]("📦 Enter Quantity: ");
int quantity = [Link]();
[Link]();
[Link]("📁 Enter Category: ");
String category = [Link]();
Drug drug = new Drug(id, name, manufacturer, price, quantity, category);
[Link](drug);
[Link]();
private void viewAllDrugs() {
[Link]("\n👀 === ALL DRUGS === 👀");
if ([Link]()) {
[Link]("📭 No drugs found!");
return;
for (Drug d : drugs) {
[Link]();
private void searchDrug() {
[Link]("🔍 Enter Drug ID to search: ");
String id = [Link]();
for (Drug d : drugs) {
if ([Link]().equals(id)) {
[Link]("🎯 Drug found!");
[Link]();
return;
[Link]("❌ Drug not found!");
private void updateDrug() {
[Link]("✏️Enter Drug ID to update: ");
String id = [Link]();
for (Drug d : drugs) {
if ([Link]().equals(id)) {
[Link]();
return;
[Link]("❌ Drug not found!");
private void deleteDrug() {
[Link](" Enter Drug ID to delete: ");
String id = [Link]();
for (Drug d : drugs) {
if ([Link]().equals(id)) {
[Link]();
[Link](d);
return;
[Link]("❌ Drug not found!");
private void restockDrug() {
[Link]("📦 Enter Drug ID to restock: ");
String id = [Link]();
for (Drug d : drugs) {
if ([Link]().equals(id)) {
[Link]();
return;
[Link]("❌ Drug not found!");
}
private void sellDrug() {
[Link]("💰 Enter Drug ID to sell: ");
String id = [Link]();
for (Drug d : drugs) {
if ([Link]().equals(id)) {
[Link]();
return;
[Link]("❌ Drug not found!");
private void showAllRecords() {
[Link]("\n📊 " + "=".repeat(50));
[Link](" 📋 ALL SYSTEM RECORDS 📋");
[Link]("📊 " + "=".repeat(50));
[Link]("\n === PHARMACISTS ===");
if ([Link]()) {
[Link]("📭 No pharmacists");
} else {
for (Pharmacist p : pharmacists) {
[Link]();
}
}
[Link]("\n === PATIENTS ===");
if ([Link]()) {
[Link]("📭 No patients");
} else {
for (Patient p : patients) {
[Link]();
[Link]("\n💊 === DRUGS ===");
if ([Link]()) {
[Link]("📭 No drugs");
} else {
for (Drug d : drugs) {
[Link]();
public class PharmacyManagement {
public static void main(String[] args) {
[Link]("🚀 " + "=".repeat(50));
[Link]("🎉🇪🇹🏠🌌🌳 WELLCOME TO DEBIRE TABOR UNIVERSITY🌳🏠🌌🇪🇹 🎉\n");
[Link]("🙌 🍼Welcome To DTU Pharmacy Managment System 🍼🙌\n");
[Link]("..........🔱 Prepared by IT sec one group 5 students🔱.........");
[Link]("🚀 " + "=".repeat(50));
[Link](" 💊 Your Health, Our Priority 💊");
[Link]("🚀 " + "=".repeat(50));
PharmacyManager manager = new PharmacyManager();
[Link]();
[Link]("\n🎊 " + "=".repeat(50));
[Link](" 🙏 Thank you for using our system! 👋");
[Link](" 🎉 Have a great day! 🌟");
[Link]("🎊 " + "=".repeat(50));