我正在开发一个用于搜索机票的客户端应用程序。我从服务器获得了带有搜索结果的 JSON,我应该将此结果表达给客户端。
假设我有一个Fare
,AirlineCompany
和AviaTicketSearchResult
对象。AviaTicketSearchResult
应包含AirlineCompany
对象列表。每个都AirlineCompany
应该包含Fare
s。我猜这是一个聚合根AviaTicketSearchResult
,AirlineCompany
因为我有级联删除的规则,当我删除AirlineCompany
它时删除所有航空公司公司的票价与AviaTicketSearchResult
.
Fare
1) 可以在聚合根 ( AirlineCompany
)中包含 s 列表吗?
另一个问题是我应该对Fare
s inside有过滤能力AirlineCompany
。每个票价都有一个行程,每个行程都有一个变体列表 ( ItineraryVariant
)(不同的航段、旅行等)。当我接受过滤器时,我应该更新我的AirlineCompany
并删除不必要Fare
的 s 或删除不必要的ItineraryVariant
内部混凝土Fare
。
2)如何应用过滤能力?
我假设我应该将 Fare 表示为 VO 并在每次应用过滤器时从原始数据 (json) 重新创建 Fare 对象,然后在使用过滤后的 AirlineCompany 更新 AviaTicketSearchResult 之后将其添加到 AirlineCompany。