我正在尝试在ddd中对两种类型的发票进行建模。采购发票和销售发票。简单的行为是采购发票增加库存数量,而销售发票减少。哪一个适合ddd?1-分别定义PurchaseInvoice和SalesInvoice,在两个不同的集合中实现业务逻辑?2-定义一个发票聚合并实现业务逻辑是否有助于dicriminator字段?
听起来像Purchase
和Sales
是两个完全不同的有界上下文。这意味着Invoice
实体可能同时存在于两者中。鉴别器是一种气味,你正在处理两种不同的东西。因此,1或2似乎都不是最佳选择。我宁愿在Purchase
有界上下文中使用Invoice
,在Purchase
无界上下文中使用Invoice
。