Я думал / изучал лучший способ обработки дат моей сущности в сочетании с инструментом ORM.В настоящее время я использую Doctrine2 (php 5.3) с драйвером MySQL (если кто-то должен знать).
Итак, моя ситуация такова: у меня есть система, которая отслеживает WorkOrders и их счета от сотрудничающих субподрядчиков.Таким образом, WorkOrder может иметь многочисленные счета, представленные одними и теми же / разными субподрядчиками, которые будут агрегироваться за определенный период оплаты.Эта сумма выплачивается субподрядчику.Мой вопрос заключается в том, каков наилучший способ обработки счетов-фактур, которые попадают в определенный период оплаты / или любой диапазон дат по этому вопросу?В качестве примера у меня есть таблица, которая отображает итоги для каждого субподрядчика за каждую неделю в году, но я также отображаю итоги за месяц и т. Д. Кроме того, у меня есть представление календаря, в котором отображаются те же счета, агрегированные по дням и неделям.
В настоящее время я передаю диапазон дат (fromDate / thruDate) вместе с классом, который настроен для итерации набора результатов и создания коллекций на основе различных критериев, таких как единица времени для агрегирования результатов и калькулятор для обработкисуммирование счетов на основе роли пользователя и / или типа счета.Этот способ пока кажется очень гибким, однако я обеспокоен влиянием на производительность выборки, скажем, 10 000 счетов-фактур, доктриной гидратации объектов, повторением набора результатов, а затем повторением в моем представлении для отображения.Я думаю, что мог бы избавиться от одного шага итерации шага результата, заглянув в специальный гидратор.
Я также думал о создании объекта с каждой датой от «даты происхождения» системы до соответствующей текущей / будущей даты с отношениями к неделям / месяцам / кварталам / годам, которые спасли бы меняхлопоты по формированию моих собственных коллекций из набора результатов.Похоже, этот метод был бы неплох, особенно если учесть, что когда я передаю диапазон дат для получения счетов-фактур для отображения в календаре, мне приходится находить и передавать значения fromDates и thruDate, которые чаще всего распространяются на предыдущие и будущие месяцы из-за того, как неделив суммеЯ начинаю больше склоняться к этому подходу, но у меня возникает ощущение, что когда я начну его реализовывать, у меня начнутся проблемы.
Итак, хватит торопиться, я просто спрошу.Может ли кто-нибудь дать мне какие-либо указания / советы / извлеченные уроки / материалы для чтения / и т. Д. ... на эту тему.
Спасибо за ваше время.