This project focuses on streamlining hospital, doctor, and patient identity management using Ethereum smart contracts. It allows for easy document storage, verification of doctors by hospitals, and patient management. Moreover, it efficiently handles the registration and retrieval of medical documents, providing seamless access to essential healthcare details.
The core of the project lies in the Ethereum smart contract titled IdentityManagement. This contract manages different entities, including hospitals, doctors, and patients, and their various attributes:
- Hospitals: Address, name, location, number of rooms, specialization, doctors associated, pending doctors, and more.
- Doctors: Address, name, age, gender, specialization, years of experience, affiliated hospital, and list of patients.
- Patients: Address, name, age, gender, phone, assigned doctor, and list of documents.
- Documents: Document name, type, IPFS hash for actual file storage, the patient's address, the doctor's address, and the hospital's address.
The contract provides functionalities for:
(i) Registration of hospitals, doctors, and patients.
(ii) Associating doctors with hospitals.
(iii) Adding, retrieving, and managing medical documents.
(iv) Accessing lists of all hospitals and doctors.
(v) Various getters for accessing specific details about entities.
Prerequisites:
(1) Node.js and npm installed
(2) Ethereum Wallet like Metamask
(3) Ethereum development environment, like Truffle or Remix