2

我有一个接受访客订单的用户界面。访客下订单后,UI 有一个计算税金的按钮,并在下实际订单之前返回 UI。 

我有 基于 DDD 的订单 API,带有 ADD、UPDATE、GET、GET ALL 和 DELETE 端点。但是对于中间的“获取税”按钮,我该怎么办?它是查询(CQRS)端操作还是与不同服务类对话以在域创建之前获取结果的 API 端点。

4

1 回答 1

0

如果此计算基于业务逻辑不需要任何持久数据来完成它的工作,而不是输入,您应该简单地将这个逻辑放入域服务中。这意味着,如果计算本身也没有持久化。

您还可以在其他地方重用此域服务,以备不时之需。甚至作为聚合根方法的参数。

因此,在您的情况下,我只需从控制器调用域服务来执行计算。但是请确保域服务方法将接收一些放置在域层中的值对象以及方法参数(或者如果足够的话,只是一个原语)而不是任何与控制器相关的对象(如请求)。

于 2020-03-27T06:08:46.543 回答