Я делаю базовую модель данных, и у меня есть клиентский объект, который имеет отношение «многие» к объекту «Назначение». Назначение может превратиться в транзакцию (если она была оплачена и т. Д.), И мне нужно отслеживать назначения клиентов, которые превратились в транзакции (где Transaction является сущностью вместе с другими атрибутами). Клиент может иметь несколько транзакций, а транзакция может иметь несколько Клиентов (необязательно). Если я установил отношения между транзакцией и клиентом, то я не думаю, что есть способ определить, какие из назначений превратились в транзакции, а какие нет ... Любая помощь относительно того, как я могу установить мою модель вверх для этого было бы полезно. СпасибоОшибка обмена данными с основными данными
ответ
Я думаю, что существует несколько способов сделать это. Это одно, я думаю, работает:
Если транзакция является другой сущностью, а Назначение имеет отношение «один к одному» к транзакции. Тогда вы можете оставить объект транзакции равным нулю, если он не оплачен. Если вы платите, вы создаете транзакцию и связываетесь со своим отношением к назначению и клиенту. Проверяя, является ли транзакция вашего Назначения нулевой, вы знаете, если она превращена в транзакцию или нет.
Если вам нужна подробная информация о преобразовании между назначением и транзакцией, вы можете сделать это преобразование само по себе и сделать его постоянным. Новое преобразование, предприятие может иметь различные свойства, такие как:
- даты (когда же преобразование произошло)
- типа (сделал назначение трансформируют в сделку, был отменен или задержан)
- и т.д.
и отношения:
- из (первоначального назначения)
- к (в результате сделки/назначения/и т.д.)
Таким образом, связь между клиентом и перевод будет выглядеть следующим образом
Client->Appointent->Transform->Transaction
Если единственное различие между Appointent
и Transaction
уделяется или нет, вы можете использовать только Transaction
и флаг (оплаченный/не оплаченный).
Client->Transaction->Transform->Transaction
Что такое сущность в данном случае? – Tometoyou
Извините, я сделал редактирование, посмотрим, имеет ли это смысл сейчас. – John