Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Version History

« Previous Version 5 Next »

People

Intro

This page is to outline the steps and progress for the billing module, which is being led by students at IIIT as a semester project.

 

Timeline

  • Week of August 26th - September 1st
    • Fri Aug 24: [Nathan] Complete short spec/designs on billing -- add to Wiki]
    • Sat Aug 25 - Sun 26: Review existing billing modules in OpenMRS and lots of other billing systems... consider lots of possible alternatives
    • Mon Aug 27 - Tues 28: improve architecture plans (database tables needed), review UI to see if we have screens yet to meet JSS's needs 
    • Wed Aug 29: Call with JSS - review our designs
    • ... Update timeline
  • Week of September 2nd - 8th
    • Completing the back end resources(Billing,BillingItem,BillingItemAdjustment).
    • Hoping to learn something about front end(reading some existing examples).

 

Notes

Kick-off meeting notes from 2012-08-23 Billing Module Meeting

 

Throughout the experience, we'd like you to blog weekly about your progress / experience. (on the Raxa.org blog - we'll give you accounts)

Please test your work thoroughly; write automated tests.

Please look at these following pages as good exmaples of project pages. This page ideally should look something like these in order to track your work and progress. Most important is to create a resource so that others can share your learning on the billing module, things like: 1)why you made the decisions you did for UX, functionality 2) code design decisions you made.

 

Back End Development

Work on billing resource , billing item , billing item adjustment has been started.

Billing table has the following fields:

  • bill_Id - id of the bill[auto increment]
  • bill_status - keeping status of the bill( pending, paid, partially paid, approved)[not null]
  • patient_id - id of the patient whose bill is being created.[not null]
  • provider_id: id of the provider [ not null]
  • other stndard OpenMRS fields.

DAO has the following functions

 public Billing saveBill(Billing bill) ;                                            for saving the bill.  
 
 public void deleteBill(Billing bill);                                              deleting a bill, might be required in case of an mistake.
 
 public Billing getBillByPatientUuid(String uuid)                          retrieving bill using the uuid of the patient.
 
 public List<Billing> getAllBills() ;                                             retrieving all the bills.
 
 public List<Billing> getAllBillsByStatus(String status);              retrieving bills by status of the bill(might want to get the bills which are unpaid or partially paid)      
 
 public Billing updateBill(Billing bill);                                          updating the bill (if some other tests or medicines/drug to be added to the bill)
 
 public List<Billing> getAllBillsByProvider(Integer providerId);       retrieving bills by provider of the bill

 

BillingItem table has following fields :

  • bill_item_id
  • bill_id  -->as foreign key
  • provider_id
  • concept_id
  • encounter_id
  • order_id
  • quantity
  • value
  • other standard openmrs fields 

 

BillingItemDAO has the following functions

BillingItem saveBillingItem(BillingItem item) throws DAOException;

void deleteBillingItem(BillingItem item) throws DAOException;

BillingItem getBillingItemByUuid(String uuid);

List<BillingItem> getAllBillingItems() throws DAOException;

List<BillingItem> getAllBillingItemsByBill(Integer billid);

BillingItem updateBillingItem(BillingItem item);

List<BillingItem> getAllBillingItemsByProvider(Integer providerId);

List<BillingItem> getAllBillingItemsByEncounter(Integer encounterId);

List<BillingItem> getAllBillingItemsByConcept(Integer conceptId);

List<BillingItem> getAllBillingItemsByOrder(Integer orderId);

 

 

BillingItemAdjustment fields :

  • adjustment_id
  • reason
  • value
  • bill_item_id
  • other standard fields

BillingItemAdjustmentDAO has the following functions

BillingItemAdjustment saveBillingItemAdjustment(BillingItemAdjustment adjustment) throws DAOException;

void deleteBillingItemAdjustment(BillingItemAdjustment adjustment) throws DAOException;

BillingItemAdjustment getBillingItemAdjustmentByUuid(String uuid);

List<BillingItemAdjustment> getAllBillingItemAdjustments() throws DAOException;

List<BillingItemAdjustment> getAllBillingItemAdjustmentsByReason(String reason);

BillingItemAdjustment updateBillingItemAdjustment(BillingItemAdjustment adjustment);

List<BillingItemAdjustment> getAllBillingItemAdjustmentsByBillingItem(Integer billingitemid);



 

  • No labels