我们如何模拟DDD中不同类型用户的行为?

时间:2014-10-01 17:34:19

标签: domain-driven-design domain-model

我处于这样的情况:我应该建模(在域中)用户 帐单管理员系统管理员员工

所有管理员都可以执行普通用户可以执行的操作,但普通用户无法执行其他角色可以执行的操作。问题是我不明白如何通过继承用户实体来实现这个并且我已经读过这不是一个好主意,所以不想这样做..

员工系统管理员比尔管理员是用户的不同角色。有什么建议吗?

更新:

更多信息:鉴于员工BC Billing BC 系统BC 是三种不同的有界上下文什么是处理上述情况的理想方式?

1 个答案:

答案 0 :(得分:3)

可能是你正在混合有界概念,继承可能没有帮助:)

通常会有一个身份和访问控制 BC。我们可以在这里找到UserPermissionRole

然后可能有一个员工人力资源 BC。这是EmployeeManager等概念可能存在的地方。

因此,拆分这些概念可能会有所帮助。

当新员工注册时, HR BC可能会使用服务总线发布EmployeeRegistered事件, I& AC BC订阅以注册新用户。

希望有所帮助。