Аналогично представлению Сэма Уильямсона о таблице транзакций, я бы использовал временную таблицу.
Изменения, сделанные кем-то, кто не является менеджером, перейдите к новым объектам Order в таблице temp. Менеджер будет иметь интерфейс для просмотра этих заказов в ожидании одобрения, и в системе все изменения будут сохранены, но за пределами стандартной позиции.
Это может быть проблемой и для пользовательского интерфейса, они должны будут видеть как официальную версию заказа, так и версию, ожидающую рассмотрения, чтобы понять состояние объекта.
В любом случае, я думаю, что вам лучше всего хранить объекты в обычном режиме, но в отдельной таблице от официальных записей, в ожидании рассмотрения менеджером. Эта временная таблица никогда не должна становиться очень большой, поскольку она представляет собой отставание утверждений, к которому должен обратиться менеджер.