I've implemented a very basic business hours feature that when enabled, will add a Business hours sidebar block.
Business hours is a per category feature (so you can enable/disable on a per category basis).
If the viewing user has permission to set business hours (based on if they can EDIT the item), they will see a link in the More options dropdown titled "Set business hours".
Clicking on the link will launch an overlay
You can set each day of the week whether the business is OPEN or CLOSE on a particular day.
When checking that the Business is open on a specific day, the forum will display 3 rows of inputs that allows you to set hours of operation for that specific day.
When the block is activated, it will appear in the Sidebar of the Item.
Here is an example of what it looks like when a business is open 24 hours on a specific day... You can also see that each day can have additional hours for cases where a Business opens and closes multiple times a day.
Note: I designed this so that if a business is temporarily closed (like on vacation), you can unset all 7 days of the week (unchcked) and SAVE. This will make the block active and display Closed on all 7 days.
When ever the Business hours block is Activated, there will be a check box that says "Unset business hours", which will wipe out any days that have hours set and will deactivate the block.