使用接口六角结构从域调用存储库

问题描述

我需要知道某个实体(用户)是否与给定条件匹配。 我已经在域中定义了标准,它们实现了一个接口:

match(User)bool

现在的问题是,一个条件需要另一个实体(公司)的数据,而用户只有公司ID。

我应该如何处理? 我可以在域(CompanyResolver)中创建一个接口并将其用于条件中吗?该接口将由存储库实现。

谢谢

解决方法

好的。在给定用例的情况下,您可以根据您的集合(用户或公司)在用户域实体方法中实现这种业务逻辑:

class User {
    match(Company company) {
        // your logic
    }
}

class Company {
    match(User user) {
        // your logic
    }
}

在调用此方法之前,必须准备存储库中的所有数据。

如果您需要更多详细信息,请尝试记录更多问题。

无论如何,该域必须与所有其他模块不可知。