Я изо всех сил пытался спроектировать совокупные корни для домена собраний.
Домен: Собрание имеет один или несколько пунктов повестки дня.Каждый AgendaItem имеет раздел примечаний, а также каждый AgendaItem имеет одну или несколько задач.
Дизайн Теперь, основываясь на рекомендациях, я пытаюсь сохранить меньшие совокупные корни в рамках ограниченного контекста.поэтому у меня есть MeetingAggregateRoot и AgendaItemAgreegateRoot.
Бизнес-правило: Каждое собрание будет иметь несколько пунктов повестки дня (каждый пункт повестки дня может иметь один или несколько пунктов подпрограммы).Но они должны быть упорядочены по последовательности, и они не должны иметь повторяющейся последовательности.
Если я оставлю один AR в качестве MeetingAR с AgendaItem в качестве сущности, то MeetingAR может взять на себя ответственность за поддержание последовательности AgendaItem в порядке.Но затем у меня есть несколько задач на AgendaItem, поэтому я решил оставить два отдельных AR, как MeetingAR и AgendaItem AR (AgendaItemAR будет иметь объект задачи).
Теперь вопрос в том ... Как мне разработать AR так, чтобыMeetingAR несет ответственность только за действия, связанные с заседаниями.AgendaItemAR несет ответственность только за свои собственные действия, и, тем не менее, последовательность поддерживается для всех пунктов повестки дня в рамках совещания.
Любая помощь оценивается в этом.