0

我正在制作一个核心数据模型,并且我有一个与 Appointment 实体有一对多关系的 Client 实体。一个约会可以变成一个交易(如果它已经支付等),我需要跟踪已经变成交易的客户的约会(其中交易是一个实体以及其他属性)。一个Client可以有多个Transaction,一个Transaction可以有多个Client(可选)。如果我在 Transaction 和 Client 之间建立关系,那么我认为没有办法可以检测到哪些约会已经变成了交易,哪些还没有......关于如何将我的模型设置为的任何帮助这样做将不胜感激。谢谢

4

2 回答 2

0

我认为有不止一种方法可以做到这一点。这是我认为有效的一个:

如果 Transaction 是另一个实体,并且 Appointment 与 Transaction 是一对一的关系。然后,如果未付款,您可以将 Transaction 实体设为 nil。如果付款,您将设置交易并将其与约会和客户的关系联系起来。通过检查您的 Appointment 的 Transaction 是否为零,您可以知道它是否变成了 Transaction。

于 2013-06-22T18:52:45.700 回答
0

如果您需要有关约会和事务之间转换的详细信息,您可以使该转换本身成为一个实体并使其持久化。新的转换实体可以具有各种属性,例如:

  • 日期(转换发生的时间)
  • 类型(约会是否转变为交易,被取消或延迟)
  • ETC

和关系:

  • 从(原任命)
  • 到(产生的交易/约会/等)

这样客户和翻译之间的关系看起来像这样

Client->Appointent->Transform->Transaction

Appointent如果和之间的唯一区别Transaction是是否支付,您可以考虑使用 onlyTransaction和一个标志(已支付/未支付)。

Client->Transaction->Transform->Transaction

于 2013-06-22T19:48:19.273 回答