Modified the code to include more use cases for promotion.
Externalized the sql queries.
Added new methods in Dao for promotion metrics.
Added new methods in Dao for promotion performance.
Added new implementations for above method in Impl