Проектирование БД
id
id_company
time_start — время начала
time_stop — время окончания
time_start_dinner — время начала обеда (перерыва)
time_stop_dinner — время окончания обеда
time_last — время окончания сокращённого дня.
type — поле типа дня. 
Типы следующие: 
 — Выходной,
 — Будний с перерывом,
 — Будний без перерыва,
 — Понедельник,
 — …
 — Воскресенье.
 — Сокращённый день

Примерно так. На все случаи жизни.
Что с этими данными делать то собираетесь?

Нужны как минимум 2 списка — 'рабочие дни' + 'выходные' (или вернее 'не рабочие' и обед этим образом пометить), формат времени удобнее по типу crontab (по полю на уровень времени), тогда запросы вида — какая компания работает во время обеда другой компании будут сравнительно простыми.