我在这里简化了问题以缩小焦点:
当需要来自存储库的数据时,有哪些推荐的方法可以在域层中执行实体构造验证?
例如,考虑在创建实体之前需要通过以下验证规则:
规则 1:申请手机的员工必须在 ABC 公司工作 6 个月或更长时间
域层中实体可用的信息源自 UI,后来从应用层中的订单服务传入,没有足够的信息来执行上述示例规则。需要从存储库中查询以返回员工的雇用日期,以计算他们是否工作了 6 个月或更长时间。
问题
问题是此时应该联系存储库的哪个层或服务以获取验证规则 1 所需的员工雇用日期?除非规则 1 通过并且实体的其他数据值也通过,否则域实体不被视为有效。
提前致谢。