JIMI
A lightweight library that helps establish connection with the chaincode
How to use
To run the application:
- Install the library using:
npm install --save medisot-hyperledger-client
- Register the connection dependency that's required by medisot-hyperledger-client to connect with BCN:
container.bind<any>(HyperledgerClientTypes.Connection).toConstantValue(Connection);
- Register the medisot-hyperledger-client dependency in the application container:
import { HyperledgerClient, TYPES as HyperledgerClientTypes } from "medisot-hyperledger-client";
container.bind<HyperledgerClient>(TYPES.HyperledgerClient).to(HyperledgerClient);
- Inject this dependency wherever required and use it's apis:
export default class AppointmentService {
constructor(@inject(TYPES.HyperledgerClient) private hyperledgerClient: HyperledgerClient) {}
public async getAppointment(appointmentId: string, loggedInUser: string) {
return this.hyperledgerClient.InvokeHandler("getAppointmentById", appointmentId, loggedInUser, null, true).then((appointmentResponse: any) => {
if (appointmentResponse.success) {
return AppUtils.createGenericServiceResponseObj(appointmentResponse, SERVICE_RESPONSE_STATUS.SUCCESS, null);
} else {
return AppUtils.createGenericServiceResponseObj(null, SERVICE_RESPONSE_STATUS.FAILED, appointmentResponse);
}
}).catch((err: any) => {
return AppUtils.createGenericServiceResponseObj(null, SERVICE_RESPONSE_STATUS.FAILED, err);
})
}
public async createAppointment(appointmentObj: any, username: string) {
return this.hyperledgerClient.InvokeHandler("bookAppointment", JSON.stringify(appointmentObj), username, null, false).then((bookAppointmentResponse: any) => {
if (bookAppointmentResponse.success) {
return AppUtils.createGenericServiceResponseObj(bookAppointmentResponse, SERVICE_RESPONSE_STATUS.SUCCESS, null);
} else {
return AppUtils.createGenericServiceResponseObj(null, SERVICE_RESPONSE_STATUS.FAILED, bookAppointmentResponse);
}
}).catch((err: any) => {
return AppUtils.createGenericServiceResponseObj(null, SERVICE_RESPONSE_STATUS.FAILED, err);
})
}
}